From e5f60ca83dd9cfadf0e39e6a76a4feb882eb7da2 Mon Sep 17 00:00:00 2001 From: tool4ever Date: Fri, 11 Oct 2024 08:01:48 +0200 Subject: [PATCH 01/91] Update rendmaw_creaking_nest.txt --- .../res/cardsfolder/upcoming/rendmaw_creaking_nest.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/forge-gui/res/cardsfolder/upcoming/rendmaw_creaking_nest.txt b/forge-gui/res/cardsfolder/upcoming/rendmaw_creaking_nest.txt index 9a15c07735a..471c09791aa 100644 --- a/forge-gui/res/cardsfolder/upcoming/rendmaw_creaking_nest.txt +++ b/forge-gui/res/cardsfolder/upcoming/rendmaw_creaking_nest.txt @@ -5,9 +5,9 @@ PT:5/5 K:Menace K:Reach T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ DBTokens | TriggerDescription$ When CARDNAME enters and whenever you play a card with two or more card types, each player creates a tapped 2/2 black Bird creature token with flying. The tokens are goaded for the rest of the game. -T:Mode$ SpellCast | ValidCard$ Card.numTypesGE2 | Execute$ DBTokens | Secondary$ True | TriggerDescription$ When CARDNAME enters and whenever you play a card with two or more card types, each player creates a tapped 2/2 black Bird creature token with flying. The tokens are goaded for the rest of the game. -T:Mode$ LandPlayed | ValidCard$ Land.numTypesGE2 | Execute$ DBTokens | Secondary$ True | TriggerDescription$ When CARDNAME enters and whenever you play a card with two or more card types, each player creates a tapped 2/2 black Bird creature token with flying. The tokens are goaded for the rest of the game. +T:Mode$ SpellCast | ValidCard$ Card.numTypesGE2 | TriggerZones$ Battlefield | Execute$ DBTokens | Secondary$ True | TriggerDescription$ When CARDNAME enters and whenever you play a card with two or more card types, each player creates a tapped 2/2 black Bird creature token with flying. The tokens are goaded for the rest of the game. +T:Mode$ LandPlayed | ValidCard$ Land.numTypesGE2 | TriggerZones$ Battlefield | Execute$ DBTokens | Secondary$ True | TriggerDescription$ When CARDNAME enters and whenever you play a card with two or more card types, each player creates a tapped 2/2 black Bird creature token with flying. The tokens are goaded for the rest of the game. SVar:DBTokens:DB$ Token | TokenAmount$ 1 | TokenScript$ b_2_2_bird_flying | TokenTapped$ True | TokenOwner$ Player | RememberTokens$ True | SubAbility$ DBGoad SVar:DBGoad:DB$ Goad | Defined$ Remembered | Duration$ Permanent | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -Oracle:Menace, reach\nWhen Rendmaw, Creaking Nest enters and whenever you play a card with two or more card types, each player creates a tapped 2/2 black Bird creature token with flying. The tokens are goaded for the rest of the game. (They attack each combat if able and attack a player other than you if able.) \ No newline at end of file +Oracle:Menace, reach\nWhen Rendmaw, Creaking Nest enters and whenever you play a card with two or more card types, each player creates a tapped 2/2 black Bird creature token with flying. The tokens are goaded for the rest of the game. (They attack each combat if able and attack a player other than you if able.) From b6cfbe3fae065b47894fa27f64b3cc9141ec2b56 Mon Sep 17 00:00:00 2001 From: tool4ever Date: Fri, 11 Oct 2024 08:03:06 +0200 Subject: [PATCH 02/91] Update unholy_annex_ritual_chamber.txt --- .../res/cardsfolder/upcoming/unholy_annex_ritual_chamber.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui/res/cardsfolder/upcoming/unholy_annex_ritual_chamber.txt b/forge-gui/res/cardsfolder/upcoming/unholy_annex_ritual_chamber.txt index 0d44ef2a5e8..adfa71edf78 100644 --- a/forge-gui/res/cardsfolder/upcoming/unholy_annex_ritual_chamber.txt +++ b/forge-gui/res/cardsfolder/upcoming/unholy_annex_ritual_chamber.txt @@ -3,7 +3,7 @@ ManaCost:2 B Types:Enchantment Room T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDraw | TriggerDescription$ At the beginning of your end step, draw a card. If you control a Demon, each opponent loses 2 life and you gain 2 life. Otherwise, you lose 2 life. SVar:TrigDraw:DB$ Draw | SubAbility$ DBBranch -SVar:TrigBranch:DB$ Branch | BranchConditionSVar$ X | BranchConditionSVarCompare$ GT0 | TrueSubAbility$ DBLoseLife1 | FalseSubAbility$ DBLoseLife2 +SVar:DBBranch:DB$ Branch | BranchConditionSVar$ X | BranchConditionSVarCompare$ GT0 | TrueSubAbility$ DBLoseLife1 | FalseSubAbility$ DBLoseLife2 SVar:DBLoseLife1:DB$ LoseLife | Defined$ Player.Opponent | LifeAmount$ 2 | SubAbility$ DBGainLife SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ 2 SVar:DBLoseLife2:DB$ LoseLife | Defined$ You | LifeAmount$ 2 From f92901d570ce7230a83aba8b6ace7646e1e71e86 Mon Sep 17 00:00:00 2001 From: Fulgur14 <54345051+Fulgur14@users.noreply.github.com> Date: Fri, 11 Oct 2024 21:10:09 +0200 Subject: [PATCH 03/91] Polluted Cistern // Dim Oubliette (#6284) --- .../polluted_cistern_dim_oubliette.txt | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/polluted_cistern_dim_oubliette.txt diff --git a/forge-gui/res/cardsfolder/upcoming/polluted_cistern_dim_oubliette.txt b/forge-gui/res/cardsfolder/upcoming/polluted_cistern_dim_oubliette.txt new file mode 100644 index 00000000000..b1be64f8b70 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/polluted_cistern_dim_oubliette.txt @@ -0,0 +1,18 @@ +Name:Polluted Cistern +ManaCost:1 B +Types:Enchantment Room +T:Mode$ ChangesZoneAll | ValidCards$ Card.YouOwn | Origin$ Library | Destination$ Graveyard | TriggerZones$ Battlefield | Execute$ TrigLoseLife | TriggerDescription$ Whenever one or more cards are put into your graveyard from your library, each opponent loses 1 life for each card type among those cards. +SVar:TrigLoseLife:DB$ LoseLife | Defined$ Player.Opponent | LifeAmount$ X +SVar:X:TriggerObjectsCards$CardTypes +AlternateMode:Split +Oracle:(You may cast either half. That door unlocks on the battlefield. As a sorcery, you may pay the mana cost of a locked door to unlock it.)\nWhenever one or more cards are put into your graveyard from your library, each opponent loses 1 life for each card type among those cards. + +ALTERNATE + +Name:Dim Oubliette +ManaCost:4 B +Types:Enchantment Room +T:Mode$ UnlockDoor | ValidPlayer$ You | ValidCard$ Card.Self | ThisDoor$ True | Execute$ TrigMill | TriggerDescription$ When you unlock this door, mill three cards, then return a creature card from your graveyard to the battlefield. +SVar:TrigMill:DB$ Mill | Defined$ You | NumCards$ 3 | SubAbility$ DBReturn +SVar:DBReturn:DB$ ChangeZone | ChangeType$ Creature.YouOwn | Mandatory$ True | Origin$ Graveyard | Destination$ Battlefield | Hidden$ True | ChangeNum$ 1 +Oracle:(You may cast either half. That door unlocks on the battlefield. As a sorcery, you may pay the mana cost of a locked door to unlock it.)\nWhen you unlock this door, mill three cards, then return a creature card from your graveyard to the battlefield. \ No newline at end of file From ba4ad308cf0e78c12db3f711ef5bf2aabf242841 Mon Sep 17 00:00:00 2001 From: Fulgur14 <54345051+Fulgur14@users.noreply.github.com> Date: Fri, 11 Oct 2024 21:15:36 +0200 Subject: [PATCH 04/91] Update mine_is_the_only_truth.txt (#6268) --- forge-gui/res/cardsfolder/upcoming/mine_is_the_only_truth.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui/res/cardsfolder/upcoming/mine_is_the_only_truth.txt b/forge-gui/res/cardsfolder/upcoming/mine_is_the_only_truth.txt index 66bf855680f..a3794248d85 100644 --- a/forge-gui/res/cardsfolder/upcoming/mine_is_the_only_truth.txt +++ b/forge-gui/res/cardsfolder/upcoming/mine_is_the_only_truth.txt @@ -6,4 +6,4 @@ SVar:TrigDrawCard:DB$ Draw | Defined$ You | NumCards$ 1 T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Command | CheckSVar$ DrewLastTurn | Execute$ DBAbandon | TriggerDescription$ At the beginning of your upkeep, if you drew a card last turn, abandon this scheme. SVar:DBAbandon:DB$ Abandon SVar:DrewLastTurn:Count$YouDrewLastTurn -Oracle:(An ongoing scheme remains face up until it’s abandoned.)\nWhenever a player casts a spell, you draw a card.\nAt the beginning of your upkeep, if you drew a card last turn, abandon this scheme. +Oracle:(An ongoing scheme remains face up until it's abandoned.)\nWhenever a player casts a spell, you draw a card.\nAt the beginning of your upkeep, if you drew a card last turn, abandon this scheme. From 4d8e55842f7c11d52ba19b87d8e37abe1c804b27 Mon Sep 17 00:00:00 2001 From: tool4ever Date: Sat, 12 Oct 2024 06:49:40 +0000 Subject: [PATCH 05/91] Update rendmaw_creaking_nest.txt --- forge-gui/res/cardsfolder/upcoming/rendmaw_creaking_nest.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/forge-gui/res/cardsfolder/upcoming/rendmaw_creaking_nest.txt b/forge-gui/res/cardsfolder/upcoming/rendmaw_creaking_nest.txt index 471c09791aa..f43cd850d13 100644 --- a/forge-gui/res/cardsfolder/upcoming/rendmaw_creaking_nest.txt +++ b/forge-gui/res/cardsfolder/upcoming/rendmaw_creaking_nest.txt @@ -5,8 +5,8 @@ PT:5/5 K:Menace K:Reach T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ DBTokens | TriggerDescription$ When CARDNAME enters and whenever you play a card with two or more card types, each player creates a tapped 2/2 black Bird creature token with flying. The tokens are goaded for the rest of the game. -T:Mode$ SpellCast | ValidCard$ Card.numTypesGE2 | TriggerZones$ Battlefield | Execute$ DBTokens | Secondary$ True | TriggerDescription$ When CARDNAME enters and whenever you play a card with two or more card types, each player creates a tapped 2/2 black Bird creature token with flying. The tokens are goaded for the rest of the game. -T:Mode$ LandPlayed | ValidCard$ Land.numTypesGE2 | TriggerZones$ Battlefield | Execute$ DBTokens | Secondary$ True | TriggerDescription$ When CARDNAME enters and whenever you play a card with two or more card types, each player creates a tapped 2/2 black Bird creature token with flying. The tokens are goaded for the rest of the game. +T:Mode$ SpellCast | ValidCard$ Card.numTypesGE2 | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ DBTokens | Secondary$ True | TriggerDescription$ When CARDNAME enters and whenever you play a card with two or more card types, each player creates a tapped 2/2 black Bird creature token with flying. The tokens are goaded for the rest of the game. +T:Mode$ LandPlayed | ValidCard$ Land.numTypesGE2+YouCtrl | TriggerZones$ Battlefield | Execute$ DBTokens | Secondary$ True | TriggerDescription$ When CARDNAME enters and whenever you play a card with two or more card types, each player creates a tapped 2/2 black Bird creature token with flying. The tokens are goaded for the rest of the game. SVar:DBTokens:DB$ Token | TokenAmount$ 1 | TokenScript$ b_2_2_bird_flying | TokenTapped$ True | TokenOwner$ Player | RememberTokens$ True | SubAbility$ DBGoad SVar:DBGoad:DB$ Goad | Defined$ Remembered | Duration$ Permanent | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True From 60216dc214b2297f2f3ab12c2a13af4487ef992c Mon Sep 17 00:00:00 2001 From: tool4ever Date: Sat, 12 Oct 2024 08:57:15 +0200 Subject: [PATCH 06/91] Fix NPE when creating room token (#6281) --- forge-game/src/main/java/forge/game/card/CardCopyService.java | 2 +- forge-gui/res/cardsfolder/upcoming/entity_tracker.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/forge-game/src/main/java/forge/game/card/CardCopyService.java b/forge-game/src/main/java/forge/game/card/CardCopyService.java index b81b1799477..579da3ff7b6 100644 --- a/forge-game/src/main/java/forge/game/card/CardCopyService.java +++ b/forge-game/src/main/java/forge/game/card/CardCopyService.java @@ -119,7 +119,7 @@ public class CardCopyService { c.setSetCode(in.getSetCode()); for (final CardStateName state : in.getStates()) { - copyState(in, state, c, state); + copyState(in, state, c, state, false); } c.setState(in.getCurrentStateName(), false); diff --git a/forge-gui/res/cardsfolder/upcoming/entity_tracker.txt b/forge-gui/res/cardsfolder/upcoming/entity_tracker.txt index 0c4293319f5..ef6dc96a943 100644 --- a/forge-gui/res/cardsfolder/upcoming/entity_tracker.txt +++ b/forge-gui/res/cardsfolder/upcoming/entity_tracker.txt @@ -4,7 +4,7 @@ Types:Creature Human Scout PT:2/3 K:Flash T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Enchantment.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigDraw | TriggerDescription$ Eerie — Whenever an enchantment you control enters and whenever you fully unlock a Room, draw a card. -T:Mode$ FullyUnlock | ValidCard$ Card.Room | ValidPlayer$ You | Secondary$ True | Execute$ TrigDraw | TriggerDescription$ Eerie — Whenever an enchantment you control enters and whenever you fully unlock a Room, draw a card. +T:Mode$ FullyUnlock | ValidCard$ Card.Room | ValidPlayer$ You | Secondary$ True | TriggerZones$ Battlefield | Execute$ TrigDraw | TriggerDescription$ Eerie — Whenever an enchantment you control enters and whenever you fully unlock a Room, draw a card. SVar:TrigDraw:DB$ Draw DeckNeeds:Type$Enchantment Oracle:Flash\nEerie — Whenever an enchantment you control enters and whenever you fully unlock a Room, draw a card. From 1b4a41d5da7a5c87143599e22377a978d3781f1c Mon Sep 17 00:00:00 2001 From: loud1990 <49922764+loud1990@users.noreply.github.com> Date: Sat, 12 Oct 2024 11:45:51 -0400 Subject: [PATCH 07/91] Updated Enter The Enigma DSK (#6288) Changed to Sorcery --- forge-gui/res/cardsfolder/upcoming/enter_the_enigma.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui/res/cardsfolder/upcoming/enter_the_enigma.txt b/forge-gui/res/cardsfolder/upcoming/enter_the_enigma.txt index 740c6fc61ce..f1145818c15 100644 --- a/forge-gui/res/cardsfolder/upcoming/enter_the_enigma.txt +++ b/forge-gui/res/cardsfolder/upcoming/enter_the_enigma.txt @@ -1,6 +1,6 @@ Name:Enter the Enigma ManaCost:U -Types:Instant +Types:Sorcery A:SP$ Effect | ValidTgts$ Creature | RememberObjects$ Targeted | ExileOnMoved$ Battlefield | StaticAbilities$ Unblockable | AILogic$ Pump | StackDescription$ {c:Targeted} can't be blocked this turn. | SubAbility$ DBDraw | SpellDescription$ Target creature can't be blocked this turn. Draw a card. SVar:Unblockable:Mode$ CantBlockBy | ValidAttacker$ Card.IsRemembered | Description$ This creature can't be blocked this turn. SVar:DBDraw:DB$ Draw From 44e8f3f20f4e178f996fcbc7bcb31171b07e7051 Mon Sep 17 00:00:00 2001 From: loud1990 <49922764+loud1990@users.noreply.github.com> Date: Sat, 12 Oct 2024 14:49:40 -0400 Subject: [PATCH 08/91] Added Smoky Lounge//Misty Salon DSK (#6289) --- .../upcoming/smoky_lounge_misty_salon.txt | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/smoky_lounge_misty_salon.txt diff --git a/forge-gui/res/cardsfolder/upcoming/smoky_lounge_misty_salon.txt b/forge-gui/res/cardsfolder/upcoming/smoky_lounge_misty_salon.txt new file mode 100644 index 00000000000..598ffa64665 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/smoky_lounge_misty_salon.txt @@ -0,0 +1,17 @@ +Name:Smoky Lounge +ManaCost:2 R +Types:Enchantment Room +T:Mode$ Phase | Phase$ Main1 | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigMana | TriggerDescription$ At the beginning of your first main phase, add {R}{R}. Spend this mana only to cast Room spells and unlock doors. +SVar:TrigMana:DB$ Mana | Produced$ R | Amount$ 2 | RestrictValid$ Static.Unlock,Spell.Room | Defined$ TriggeredPlayer +AlternateMode:Split +Oracle:(You may cast either half. That door unlocks on the battlefield. As a sorcery, you may pay the mana cost of a locked door to unlock it.)\nAt the beginning of your first main phase, add {R}{R}. Spend this mana only to cast Room spells and unlock doors. + +ALTERNATE + +Name:Misty Salon +ManaCost:3 U +Types:Enchantment Room +T:Mode$ UnlockDoor | ValidPlayer$ You | ValidCard$ Card.Self | ThisDoor$ True | Execute$ TrigToken | TriggerDescription$ When you unlock this door, create an X/X blue Spirit creature token with flying, where X is the number of unlocked doors among Rooms you control. +SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ u_x_x_spirit_flying | TokenPower$ X | TokenToughness$ X | TokenOwner$ You +SVar:X:Count$UnlockedDoors Card.Room+YouCtrl +Oracle:(You may cast either half. That door unlocks on the battlefield. As a sorcery, you may pay the mana cost of a locked door to unlock it.)\nWhen you unlock this door, create an X/X blue Spirit creature token with flying, where X is the number of unlocked doors among Rooms you control. \ No newline at end of file From 8d264b1ae959382847b390fe3267907329b31515 Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 09:27:51 +0100 Subject: [PATCH 09/91] Edit pile cleanup: Line reordering, first pass: part 1, folders 'a' to 'd' --- .../cardsfolder/a/abdel_adrian_gorions_ward.txt | 2 +- .../res/cardsfolder/a/abstruse_interference.txt | 2 +- .../res/cardsfolder/a/abzan_battle_priest.txt | 2 +- forge-gui/res/cardsfolder/a/abzan_falconer.txt | 2 +- .../res/cardsfolder/a/acolyte_of_bahamut.txt | 2 +- .../res/cardsfolder/a/adverse_conditions.txt | 2 +- .../res/cardsfolder/a/advice_from_the_fae.txt | 2 +- forge-gui/res/cardsfolder/a/aeronaut_cavalry.txt | 2 +- forge-gui/res/cardsfolder/a/aether_searcher.txt | 2 +- forge-gui/res/cardsfolder/a/agathas_champion.txt | 2 +- .../cardsfolder/a/agent_of_the_iron_throne.txt | 2 +- .../cardsfolder/a/agent_of_the_shadow_thieves.txt | 2 +- forge-gui/res/cardsfolder/a/ainok_bond_kin.txt | 2 +- forge-gui/res/cardsfolder/a/ajanis_aid.txt | 2 +- forge-gui/res/cardsfolder/a/ajanis_pridemate.txt | 2 +- .../res/cardsfolder/a/alandra_sky_dreamer.txt | 2 +- .../a/albiorix_goose_tyrant_wild_goose_chase.txt | 2 +- .../cardsfolder/a/alquist_proft_master_sleuth.txt | 2 +- ...d_god_of_the_cosmos_hakka_whispering_raven.txt | 2 +- .../a/altar_of_the_wretched_wretched_bonemass.txt | 4 ++-- .../res/cardsfolder/a/amzu_swarms_hunger.txt | 2 +- forge-gui/res/cardsfolder/a/anchor_to_reality.txt | 2 +- .../res/cardsfolder/a/angel_of_deliverance.txt | 2 +- forge-gui/res/cardsfolder/a/angelic_favor.txt | 2 +- forge-gui/res/cardsfolder/a/angelic_sleuth.txt | 2 +- .../res/cardsfolder/a/anikthea_hand_of_erebos.txt | 2 +- forge-gui/res/cardsfolder/a/animation_module.txt | 2 +- .../cardsfolder/a/aquatic_alchemist_bubble_up.txt | 2 +- forge-gui/res/cardsfolder/a/arcane_melee.txt | 2 +- forge-gui/res/cardsfolder/a/arcbound_wanderer.txt | 2 +- .../res/cardsfolder/a/archfiend_of_the_dross.txt | 2 +- .../res/cardsfolder/a/archghoul_of_thraben.txt | 2 +- .../res/cardsfolder/a/archivist_of_oghma.txt | 2 +- .../res/cardsfolder/a/archon_of_suns_grace.txt | 2 +- forge-gui/res/cardsfolder/a/archons_glory.txt | 2 +- .../res/cardsfolder/a/argivian_archaeologist.txt | 2 +- forge-gui/res/cardsfolder/a/armed_and_armored.txt | 2 +- .../res/cardsfolder/a/arteeoh_dread_scavenger.txt | 2 +- forge-gui/res/cardsfolder/a/artifact_mutation.txt | 2 +- .../a/asmoranomardicadaistinaculdacar.txt | 2 +- .../res/cardsfolder/a/audacious_reshapers.txt | 2 +- .../cardsfolder/a/auntie_blyte_bad_influence.txt | 2 +- forge-gui/res/cardsfolder/b/back_in_town.txt | 2 +- .../cardsfolder/b/baird_argivian_recruiter.txt | 2 +- forge-gui/res/cardsfolder/b/balloon_stand.txt | 11 +++++++---- forge-gui/res/cardsfolder/b/bazaar_of_baghdad.txt | 2 +- forge-gui/res/cardsfolder/b/beast_within.txt | 2 +- .../res/cardsfolder/b/begin_the_invasion.txt | 2 +- forge-gui/res/cardsfolder/b/biowaste_blob.txt | 2 +- forge-gui/res/cardsfolder/b/blast_zone.txt | 2 +- .../res/cardsfolder/b/blighted_burgeoning.txt | 2 +- forge-gui/res/cardsfolder/b/bloodcurdler.txt | 2 +- forge-gui/res/cardsfolder/b/bloodsoaked_altar.txt | 2 +- .../res/cardsfolder/b/bloodthirsty_adversary.txt | 2 +- forge-gui/res/cardsfolder/b/bog_naughty.txt | 2 +- forge-gui/res/cardsfolder/b/bomat_courier.txt | 2 +- forge-gui/res/cardsfolder/b/bonus_round.txt | 4 ++-- forge-gui/res/cardsfolder/b/bosh_iron_golem.txt | 2 +- forge-gui/res/cardsfolder/b/bounce_chamber.txt | 11 +++++++---- forge-gui/res/cardsfolder/b/bounty_board.txt | 2 +- .../res/cardsfolder/b/bounty_of_the_hunt.txt | 2 +- forge-gui/res/cardsfolder/b/briar_hydra.txt | 2 +- .../res/cardsfolder/b/brighthearth_banneret.txt | 2 +- forge-gui/res/cardsfolder/b/bubbling_cauldron.txt | 2 +- forge-gui/res/cardsfolder/b/bumper_cars.txt | 9 ++++++--- forge-gui/res/cardsfolder/c/cactus_preserve.txt | 2 +- .../res/cardsfolder/c/call_the_coppercoats.txt | 2 +- forge-gui/res/cardsfolder/c/cankerbloom.txt | 2 +- .../cardsfolder/c/case_of_the_pilfered_proof.txt | 2 +- .../res/cardsfolder/c/cave_of_temptation.txt | 2 +- forge-gui/res/cardsfolder/c/celestial_kirin.txt | 2 +- forge-gui/res/cardsfolder/c/clan_crafter.txt | 2 +- forge-gui/res/cardsfolder/c/cloakwood_hermit.txt | 2 +- forge-gui/res/cardsfolder/c/clown_extruder.txt | 9 ++++++--- .../res/cardsfolder/c/codsworth_handy_helper.txt | 2 +- forge-gui/res/cardsfolder/c/concession_stand.txt | 9 ++++++--- .../res/cardsfolder/c/contraband_livestock.txt | 2 +- forge-gui/res/cardsfolder/c/cornered_crook.txt | 2 +- forge-gui/res/cardsfolder/c/criminal_past.txt | 2 +- forge-gui/res/cardsfolder/c/cryptbreaker.txt | 2 +- .../res/cardsfolder/c/cultist_of_the_absolute.txt | 2 +- forge-gui/res/cardsfolder/c/curse_artifact.txt | 2 +- forge-gui/res/cardsfolder/d/dark_temper.txt | 2 +- forge-gui/res/cardsfolder/d/deal_broker.txt | 2 +- .../res/cardsfolder/d/deeproot_pilgrimage.txt | 2 +- forge-gui/res/cardsfolder/d/deeproot_waters.txt | 2 +- .../cardsfolder/d/dire_flail_dire_blunderbuss.txt | 1 + forge-gui/res/cardsfolder/d/disa_the_restless.txt | 2 +- forge-gui/res/cardsfolder/d/disciple_of_bolas.txt | 2 +- .../res/cardsfolder/d/doomsday_confluence.txt | 2 +- forge-gui/res/cardsfolder/d/dragon_cultist.txt | 2 +- forge-gui/res/cardsfolder/d/dredging_claw.txt | 2 +- forge-gui/res/cardsfolder/d/drop_of_honey.txt | 2 +- forge-gui/res/cardsfolder/d/drop_tower.txt | 15 +++++++++------ forge-gui/res/cardsfolder/d/drown_in_filth.txt | 2 +- 95 files changed, 132 insertions(+), 113 deletions(-) diff --git a/forge-gui/res/cardsfolder/a/abdel_adrian_gorions_ward.txt b/forge-gui/res/cardsfolder/a/abdel_adrian_gorions_ward.txt index 301c07181f1..8df9c6276bc 100644 --- a/forge-gui/res/cardsfolder/a/abdel_adrian_gorions_ward.txt +++ b/forge-gui/res/cardsfolder/a/abdel_adrian_gorions_ward.txt @@ -9,6 +9,6 @@ SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Remembered$Amount SVar:MaxTgts:Count$Valid Permanent.Other+nonLand+YouCtrl K:Choose a Background -DeckHas:Ability$Token & Type$Soldier AI:RemoveDeck:Random +DeckHas:Ability$Token & Type$Soldier Oracle:When Abdel Adrian, Gorion's Ward enters, exile any number of other nonland permanents you control until Abdel Adrian leaves the battlefield. Create a 1/1 white Soldier creature token for each permanent exiled this way.\nChoose a Background (You can have a Background as a second commander.) diff --git a/forge-gui/res/cardsfolder/a/abstruse_interference.txt b/forge-gui/res/cardsfolder/a/abstruse_interference.txt index 1b1058d0674..9f8db5e3f7f 100644 --- a/forge-gui/res/cardsfolder/a/abstruse_interference.txt +++ b/forge-gui/res/cardsfolder/a/abstruse_interference.txt @@ -4,6 +4,6 @@ Types:Instant K:Devoid A:SP$ Counter | TargetType$ Spell | TgtPrompt$ Select target spell | ValidTgts$ Card | UnlessCost$ 1 | SubAbility$ DBToken | SpellDescription$ Counter target spell unless its controller pays {1}. SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_1_1_eldrazi_scion_sac | TokenOwner$ You | SpellDescription$ You create a 1/1 colorless Eldrazi Scion creature token. It has "Sacrifice this creature: Add {C}." ({C} represents colorless mana.) -DeckHints:Type$Eldrazi DeckHas:Ability$Mana.Colorless|Token +DeckHints:Type$Eldrazi Oracle:Devoid (This card has no color.)\nCounter target spell unless its controller pays {1}. You create a 1/1 colorless Eldrazi Scion creature token. It has "Sacrifice this creature: Add {C}." ({C} represents colorless mana.) diff --git a/forge-gui/res/cardsfolder/a/abzan_battle_priest.txt b/forge-gui/res/cardsfolder/a/abzan_battle_priest.txt index d22e9c4d3f4..737a3454b6d 100644 --- a/forge-gui/res/cardsfolder/a/abzan_battle_priest.txt +++ b/forge-gui/res/cardsfolder/a/abzan_battle_priest.txt @@ -5,6 +5,6 @@ PT:3/2 K:Outlast:W S:Mode$ Continuous | Affected$ Creature.YouCtrl+counters_GE1_P1P1 | AddKeyword$ Lifelink | Description$ Each creature you control with a +1/+1 counter on it has lifelink. SVar:PlayMain1:TRUE -DeckHints:Ability$Counters DeckHas:Ability$Counters +DeckHints:Ability$Counters Oracle:Outlast {W} ({W}, {T}: Put a +1/+1 counter on this creature. Outlast only as a sorcery.)\nEach creature you control with a +1/+1 counter on it has lifelink. diff --git a/forge-gui/res/cardsfolder/a/abzan_falconer.txt b/forge-gui/res/cardsfolder/a/abzan_falconer.txt index 08c9b992655..87a89aa9b7b 100644 --- a/forge-gui/res/cardsfolder/a/abzan_falconer.txt +++ b/forge-gui/res/cardsfolder/a/abzan_falconer.txt @@ -5,6 +5,6 @@ PT:2/3 K:Outlast:W S:Mode$ Continuous | Affected$ Creature.YouCtrl+counters_GE1_P1P1 | AddKeyword$ Flying | Description$ Each creature you control wth a +1/+1 counter on it has flying. SVar:PlayMain1:TRUE -DeckHints:Ability$Counters DeckHas:Ability$Counters +DeckHints:Ability$Counters Oracle:Outlast {W} ({W}, {T}: Put a +1/+1 counter on this creature. Outlast only as a sorcery.)\nEach creature you control with a +1/+1 counter on it has flying. diff --git a/forge-gui/res/cardsfolder/a/acolyte_of_bahamut.txt b/forge-gui/res/cardsfolder/a/acolyte_of_bahamut.txt index 4288da94c42..6164f1dddea 100644 --- a/forge-gui/res/cardsfolder/a/acolyte_of_bahamut.txt +++ b/forge-gui/res/cardsfolder/a/acolyte_of_bahamut.txt @@ -3,6 +3,6 @@ ManaCost:1 G Types:Legendary Enchantment Background S:Mode$ Continuous | Affected$ Creature.IsCommander+YouOwn | AddStaticAbility$ DragonReduce | Description$ Commander creatures you own have "The first Dragon spell you cast each turn costs {2} less to cast." SVar:DragonReduce:Mode$ ReduceCost | EffectZone$ Battlefield | ValidCard$ Card.Dragon | Activator$ You | Type$ Spell | OnlyFirstSpell$ True | Amount$ 2 | Description$ The first Dragon spell you cast each turn costs {2} less to cast. -DeckNeeds:Type$Dragon AI:RemoveDeck:NonCommander +DeckNeeds:Type$Dragon Oracle:Commander creatures you own have "The first Dragon spell you cast each turn costs {2} less to cast." diff --git a/forge-gui/res/cardsfolder/a/adverse_conditions.txt b/forge-gui/res/cardsfolder/a/adverse_conditions.txt index 263cf37c19e..a75ab450d29 100644 --- a/forge-gui/res/cardsfolder/a/adverse_conditions.txt +++ b/forge-gui/res/cardsfolder/a/adverse_conditions.txt @@ -5,6 +5,6 @@ K:Devoid A:SP$ Tap | TargetMin$ 0 | TargetMax$ 2 | TgtPrompt$ Choose target creature | ValidTgts$ Creature | SubAbility$ TrigPump | SpellDescription$ Tap up to two target creatures. SVar:TrigPump:DB$ Pump | Defined$ Targeted | KW$ HIDDEN This card doesn't untap during your next untap step. | Duration$ Permanent | SubAbility$ DBToken | SpellDescription$ Those creatures don't untap during their controller's next untap step. SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_1_1_eldrazi_scion_sac | TokenOwner$ You | SpellDescription$ Create a 1/1 colorless Eldrazi Scion creature token. It has "Sacrifice this creature: Add {C}." -DeckHints:Type$Eldrazi DeckHas:Ability$Mana.Colorless|Token +DeckHints:Type$Eldrazi Oracle:Devoid (This card has no color.)\nTap up to two target creatures. Those creatures don't untap during their controller's next untap step. Create a 1/1 colorless Eldrazi Scion creature token. It has "Sacrifice this creature: Add {C}." diff --git a/forge-gui/res/cardsfolder/a/advice_from_the_fae.txt b/forge-gui/res/cardsfolder/a/advice_from_the_fae.txt index 3b7f3b26b9d..6819c8ea471 100644 --- a/forge-gui/res/cardsfolder/a/advice_from_the_fae.txt +++ b/forge-gui/res/cardsfolder/a/advice_from_the_fae.txt @@ -5,6 +5,6 @@ A:SP$ Dig | DigNum$ 5 | ChangeNum$ 1 | SubAbility$ Dig2 | ConditionCheckSVar$ X SVar:Dig2:DB$ Dig | DigNum$ 5 | ChangeNum$ 2 | ConditionCheckSVar$ X | ConditionSVarCompare$ GTY SVar:X:Count$Valid Creature.YouCtrl SVar:Y:PlayerCountOther$HighestValid Creature.YouCtrl -DeckNeeds:Color$Blue AI:RemoveDeck:Random +DeckNeeds:Color$Blue Oracle:({2/U} can be paid with any two mana or with {U}. This card's mana value is 6.)\nLook at the top five cards of your library. If you control more creatures than each other player, put two of those cards into your hand. Otherwise, put one of them into your hand. Then put the rest on the bottom of your library in any order. diff --git a/forge-gui/res/cardsfolder/a/aeronaut_cavalry.txt b/forge-gui/res/cardsfolder/a/aeronaut_cavalry.txt index e1880c4eac4..c99ba232af9 100644 --- a/forge-gui/res/cardsfolder/a/aeronaut_cavalry.txt +++ b/forge-gui/res/cardsfolder/a/aeronaut_cavalry.txt @@ -5,6 +5,6 @@ PT:3/4 K:Flying T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigPut | TriggerDescription$ When CARDNAME enters, put a +1/+1 counter on another target Soldier you control. SVar:TrigPut:DB$ PutCounter | ValidTgts$ Soldier.Other+YouCtrl | TgtPrompt$ Select another target Soldier you control | CounterType$ P1P1 -DeckHints:Type$Soldier DeckHas:Ability$Counters +DeckHints:Type$Soldier Oracle:Flying\nWhen Aeronaut Cavalry enters, put a +1/+1 counter on another target Soldier you control. diff --git a/forge-gui/res/cardsfolder/a/aether_searcher.txt b/forge-gui/res/cardsfolder/a/aether_searcher.txt index 04bbbf04bd4..fc6ae47faa7 100644 --- a/forge-gui/res/cardsfolder/a/aether_searcher.txt +++ b/forge-gui/res/cardsfolder/a/aether_searcher.txt @@ -1,7 +1,7 @@ Name:Aether Searcher ManaCost:7 -PT:6/4 Types:Artifact Creature Construct +PT:6/4 Draft:Reveal CARDNAME as you draft it. Draft:Reveal the next card you draft and note its name. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigSearchHand | TriggerDescription$ When CARDNAME enters, you may search your hand and/or library for a card with a name noted as you drafted cards named Aether Searcher. You may cast it without paying its mana cost. If you searched your library this way, shuffle. diff --git a/forge-gui/res/cardsfolder/a/agathas_champion.txt b/forge-gui/res/cardsfolder/a/agathas_champion.txt index 569a9ad8730..696290172e4 100644 --- a/forge-gui/res/cardsfolder/a/agathas_champion.txt +++ b/forge-gui/res/cardsfolder/a/agathas_champion.txt @@ -7,6 +7,6 @@ K:Trample T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+bargained | Execute$ TrigKicker | TriggerDescription$ When CARDNAME enters, if it was bargained, it fights up to one target creature you don't control. (Each deals damage equal to its power to the other.) SVar:TrigKicker:DB$ Fight | Defined$ TriggeredCardLKICopy | ValidTgts$ Creature.YouDontCtrl | TgtPrompt$ Select up to one target creature an opponent controls | TargetMin$ 0 | TargetMax$ 1 SVar:PlayMain1:TRUE -DeckHints:Type$Artifact|Enchantment & Ability$Token DeckHas:Ability$Sacrifice +DeckHints:Type$Artifact|Enchantment & Ability$Token Oracle:Bargain (You may sacrifice an artifact, enchantment, or token as you cast this spell.)\nTrample\nWhen Agatha's Champion enters, if it was bargained, it fights up to one target creature you don't control. (Each deals damage equal to its power to the other.) diff --git a/forge-gui/res/cardsfolder/a/agent_of_the_iron_throne.txt b/forge-gui/res/cardsfolder/a/agent_of_the_iron_throne.txt index cb32430c35c..96ccf5773ac 100644 --- a/forge-gui/res/cardsfolder/a/agent_of_the_iron_throne.txt +++ b/forge-gui/res/cardsfolder/a/agent_of_the_iron_throne.txt @@ -4,6 +4,6 @@ Types:Legendary Enchantment Background S:Mode$ Continuous | Affected$ Creature.IsCommander+YouOwn | AddTrigger$ Dies | Description$ Commander creatures you own have "Whenever an artifact or creature you control is put into a graveyard from the battlefield, each opponent loses 1 life." SVar:Dies:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Artifact.YouCtrl,Creature.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigDrain | TriggerDescription$ Whenever an artifact or creature you control is put into a graveyard from the battlefield, each opponent loses 1 life. SVar:TrigDrain:DB$ LoseLife | Defined$ Opponent | LifeAmount$ 1 -DeckHints:Type$Artifact & Ability$Sacrifice AI:RemoveDeck:NonCommander +DeckHints:Type$Artifact & Ability$Sacrifice Oracle:Commander creatures you own have "Whenever an artifact or creature you control is put into a graveyard from the battlefield, each opponent loses 1 life." diff --git a/forge-gui/res/cardsfolder/a/agent_of_the_shadow_thieves.txt b/forge-gui/res/cardsfolder/a/agent_of_the_shadow_thieves.txt index 7b93c42c2f9..4d62c77646e 100644 --- a/forge-gui/res/cardsfolder/a/agent_of_the_shadow_thieves.txt +++ b/forge-gui/res/cardsfolder/a/agent_of_the_shadow_thieves.txt @@ -5,6 +5,6 @@ S:Mode$ Continuous | Affected$ Creature.IsCommander+YouOwn | AddTrigger$ Attacks SVar:AttacksPlayer:Mode$ Attacks | ValidCard$ Card.Self | Attacked$ Player | Condition$ NoOpponentHasMoreLifeThanAttacked | Execute$ TrigPutCounter | TriggerDescription$ Whenever this creature attacks a player, if no opponent has more life than that player, put a +1/+1 counter on this creature. It gains deathtouch and indestructible until end of turn. SVar:TrigPutCounter:DB$ PutCounter | CounterType$ P1P1 | CounterNum$ 1 | Defined$ Self | SubAbility$ DBPump SVar:DBPump:DB$ Pump | Defined$ Self | KW$ Deathtouch & Indestructible -DeckHas:Ability$Counters AI:RemoveDeck:NonCommander +DeckHas:Ability$Counters Oracle:Commander creatures you own have "Whenever this creature attacks a player, if no opponent has more life than that player, put a +1/+1 counter on this creature. It gains deathtouch and indestructible until end of turn." diff --git a/forge-gui/res/cardsfolder/a/ainok_bond_kin.txt b/forge-gui/res/cardsfolder/a/ainok_bond_kin.txt index e28e5a1992c..f65f1e27ac3 100644 --- a/forge-gui/res/cardsfolder/a/ainok_bond_kin.txt +++ b/forge-gui/res/cardsfolder/a/ainok_bond_kin.txt @@ -5,6 +5,6 @@ PT:2/1 K:Outlast:1 W S:Mode$ Continuous | Affected$ Creature.YouCtrl+counters_GE1_P1P1 | AddKeyword$ First Strike | Description$ Each creature you control with a +1/+1 counter on it has first strike. SVar:PlayMain1:TRUE -DeckHints:Ability$Counters DeckHas:Ability$Counters +DeckHints:Ability$Counters Oracle:Outlast {1}{W} ({1}{W}, {T}: Put a +1/+1 counter on this creature. Outlast only as a sorcery.)\nEach creature you control with a +1/+1 counter on it has first strike. diff --git a/forge-gui/res/cardsfolder/a/ajanis_aid.txt b/forge-gui/res/cardsfolder/a/ajanis_aid.txt index 0c350c155c1..58eec10c14c 100644 --- a/forge-gui/res/cardsfolder/a/ajanis_aid.txt +++ b/forge-gui/res/cardsfolder/a/ajanis_aid.txt @@ -6,6 +6,6 @@ SVar:TrigSearch:DB$ ChangeZone | Origin$ Library | OriginAlternative$ Graveyard A:AB$ ChooseCard | Cost$ Sac<1/CARDNAME> | Choices$ Creature | Mandatory$ True | AILogic$ NeedsPrevention | SubAbility$ DBEffect | SpellDescription$ Prevent all combat damage a creature of your choice would deal this turn. SVar:DBEffect:DB$ Effect | ReplacementEffects$ RPreventNextFromSource | RememberObjects$ ChosenCard | ExileOnMoved$ Battlefield SVar:RPreventNextFromSource:Event$ DamageDone | IsCombat$ True | ValidSource$ Card.IsRemembered | Prevent$ True | Description$ Prevent all combat damage a creature of your choice would deal this turn. -DeckHints:Name$Ajani, Valiant Protector DeckHas:Ability$Sacrifice +DeckHints:Name$Ajani, Valiant Protector Oracle:When Ajani's Aid enters, you may search your library and/or graveyard for a card named Ajani, Valiant Protector, reveal it, and put it into your hand. If you search your library this way, shuffle.\nSacrifice Ajani's Aid: Prevent all combat damage a creature of your choice would deal this turn. diff --git a/forge-gui/res/cardsfolder/a/ajanis_pridemate.txt b/forge-gui/res/cardsfolder/a/ajanis_pridemate.txt index 0f8773bc9bb..cfceaa587cb 100644 --- a/forge-gui/res/cardsfolder/a/ajanis_pridemate.txt +++ b/forge-gui/res/cardsfolder/a/ajanis_pridemate.txt @@ -4,6 +4,6 @@ Types:Creature Cat Soldier PT:2/2 T:Mode$ LifeGained | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever you gain life, put a +1/+1 counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 -DeckHints:Ability$LifeGain DeckHas:Ability$Counters +DeckHints:Ability$LifeGain Oracle:Whenever you gain life, put a +1/+1 counter on Ajani's Pridemate. diff --git a/forge-gui/res/cardsfolder/a/alandra_sky_dreamer.txt b/forge-gui/res/cardsfolder/a/alandra_sky_dreamer.txt index 81cf8841a63..0a4335febd9 100644 --- a/forge-gui/res/cardsfolder/a/alandra_sky_dreamer.txt +++ b/forge-gui/res/cardsfolder/a/alandra_sky_dreamer.txt @@ -7,7 +7,7 @@ SVar:TrigToken:DB$ Token | TokenScript$ u_2_2_drake_flying T:Mode$ Drawn | ValidCard$ Card.YouCtrl | Number$ 5 | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ Whenever you draw your fifth card each turn, CARDNAME and Drakes you control get +X/+X until end of turn, where X is the number of cards in your hand. SVar:TrigPump:DB$ PumpAll | ValidCards$ Card.Self,Drake.YouCtrl | NumAtt$ X | NumDef$ X SVar:X:Count$InYourHand +AI:RemoveDeck:Random DeckHas:Ability$Token & Type$Drake DeckHints:Type$Drake -AI:RemoveDeck:Random Oracle:Whenever you draw your second card each turn, create a 2/2 blue Drake creature token with flying.\nWhenever you draw your fifth card each turn, Alandra, Sky Dreamer and Drakes you control get +X/+X until end of turn, where X is the number of cards in your hand. diff --git a/forge-gui/res/cardsfolder/a/albiorix_goose_tyrant_wild_goose_chase.txt b/forge-gui/res/cardsfolder/a/albiorix_goose_tyrant_wild_goose_chase.txt index 5278f8f020a..0fad583c19c 100644 --- a/forge-gui/res/cardsfolder/a/albiorix_goose_tyrant_wild_goose_chase.txt +++ b/forge-gui/res/cardsfolder/a/albiorix_goose_tyrant_wild_goose_chase.txt @@ -7,9 +7,9 @@ K:Trample K:Ward:1 T:Mode$ Sacrificed | ValidPlayer$ You | ValidCard$ Card.token | TriggerZones$ Battlefield,Exile | Execute$ TrigPump | TriggerDescription$ Whenever you sacrifice a token, NICKNAME perpetually gets +1/+1. This ability also triggers if NICKNAME is in exile. SVar:TrigPump:DB$ Pump | PumpZone$ Battlefield,Exile | NumAtt$ 1 | NumDef$ 1 | Duration$ Perpetual -AlternateMode:Adventure DeckHas:Ability$Discard|Token & Type$Food DeckHints:Ability$Token & Type$Treasure|Food|Clue +AlternateMode:Adventure Oracle:Flying, Trample, Ward {1}\nWhenever you sacrifice a token, Albiorix perpetually gets +1/+1. This ability also triggers if Albiorix is in exile. ALTERNATE diff --git a/forge-gui/res/cardsfolder/a/alquist_proft_master_sleuth.txt b/forge-gui/res/cardsfolder/a/alquist_proft_master_sleuth.txt index 5d649a1e1e8..7a5719897c7 100644 --- a/forge-gui/res/cardsfolder/a/alquist_proft_master_sleuth.txt +++ b/forge-gui/res/cardsfolder/a/alquist_proft_master_sleuth.txt @@ -8,6 +8,6 @@ SVar:TrigInvestigate:DB$ Investigate A:AB$ Draw | Cost$ X W U U T Sac<1/Clue> | NumCards$ X | SubAbility$ DBGainLife | SpellDescription$ You draw X cards and gain X life. SVar:DBGainLife:DB$ GainLife | LifeAmount$ X SVar:X:Count$xPaid -DeckHints:Ability$Investigate DeckHas:Ability$Investigate|Token|Sacrifice|LifeGain & Type$Artifact|Clue +DeckHints:Ability$Investigate Oracle:Vigilance\nWhen Alquist Proft, Master Sleuth enters, investigate. (Create a Clue token. It's an artifact with "{2}, Sacrifice this artifact: Draw a card.")\n{X}{W}{U}{U}, {T}, Sacrifice a Clue: You draw X cards and gain X life. diff --git a/forge-gui/res/cardsfolder/a/alrund_god_of_the_cosmos_hakka_whispering_raven.txt b/forge-gui/res/cardsfolder/a/alrund_god_of_the_cosmos_hakka_whispering_raven.txt index fe75a4210c0..d8b5f62991c 100644 --- a/forge-gui/res/cardsfolder/a/alrund_god_of_the_cosmos_hakka_whispering_raven.txt +++ b/forge-gui/res/cardsfolder/a/alrund_god_of_the_cosmos_hakka_whispering_raven.txt @@ -9,8 +9,8 @@ SVar:Z:SVar$X/Plus.Y T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigChooseCardType | TriggerDescription$ At the beginning of your end step, choose a card type, then reveal the top two cards of your library. Put all cards of the chosen type revealed this way into your hand and the rest on the bottom of your library in any order. SVar:TrigChooseCardType:DB$ ChooseType | Defined$ You | Type$ Card | SubAbility$ DBDig SVar:DBDig:DB$ Dig | DigNum$ 2 | Reveal$ True | ChangeNum$ All | ChangeValid$ Card.ChosenType | DestinationZone2$ Library | LibraryPosition$ -1 -DeckHints:Keyword$Foretell AI:RemoveDeck:All +DeckHints:Keyword$Foretell AlternateMode:Modal Oracle:Alrund gets +1/+1 for each card in your hand and each foretold card you own in exile.\nAt the beginning of your end step, choose a card type, then reveal the top two cards of your library. Put all cards of the chosen type revealed this way into your hand and the rest on the bottom of your library in any order. diff --git a/forge-gui/res/cardsfolder/a/altar_of_the_wretched_wretched_bonemass.txt b/forge-gui/res/cardsfolder/a/altar_of_the_wretched_wretched_bonemass.txt index 44700db266d..55cdc02dbba 100644 --- a/forge-gui/res/cardsfolder/a/altar_of_the_wretched_wretched_bonemass.txt +++ b/forge-gui/res/cardsfolder/a/altar_of_the_wretched_wretched_bonemass.txt @@ -8,9 +8,9 @@ SVar:Y:Sacrificed$CardPower K:Craft:2 B B XMin1 ExileCtrlOrGrave SVar:X:Count$xPaid A:AB$ ChangeZone | Cost$ 2 B | Origin$ Graveyard | Destination$ Hand | ActivationZone$ Graveyard | SpellDescription$ Return CARDNAME from your graveyard to your hand. -DeckHints:Ability$Discard|Mill|Sacrifice -DeckHas:Ability$Graveyard|Sacrifice|Mill AI:RemoveDeck:All +DeckHas:Ability$Graveyard|Sacrifice|Mill +DeckHints:Ability$Discard|Mill|Sacrifice AlternateMode:DoubleFaced Oracle:When Altar of the Wretched enters, you may sacrifice a nontoken creature. If you do, draw X cards, then mill X cards, where X is that creature's power.\nCraft with one or more creatures {2}{B}{B}\n{2}{B}: Return Altar of the Wretched from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/a/amzu_swarms_hunger.txt b/forge-gui/res/cardsfolder/a/amzu_swarms_hunger.txt index 8815f59da11..8943a0bd5ce 100644 --- a/forge-gui/res/cardsfolder/a/amzu_swarms_hunger.txt +++ b/forge-gui/res/cardsfolder/a/amzu_swarms_hunger.txt @@ -10,6 +10,6 @@ SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ bg_1_1_insect | Remembe SVar:DBPutCounter:DB$ PutCounter | Defined$ Remembered | CounterNum$ X | CounterType$ P1P1 | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:TriggerObjectsCards$GreatestCMC -DeckHints:Type$Insect & Ability$Graveyard DeckHas:Ability$Token & Ability$Graveyard +DeckHints:Type$Insect & Ability$Graveyard Oracle:Flying, menace\nOther Insects you control have menace.\nWhenever one or more cards leave your graveyard, you may create a 1/1 black and green Insect creature token, then put a number of +1/+1 counters on it equal to the greatest mana value among those cards. Do this only once each turn. diff --git a/forge-gui/res/cardsfolder/a/anchor_to_reality.txt b/forge-gui/res/cardsfolder/a/anchor_to_reality.txt index cb954d7daf4..0c7da6ef690 100644 --- a/forge-gui/res/cardsfolder/a/anchor_to_reality.txt +++ b/forge-gui/res/cardsfolder/a/anchor_to_reality.txt @@ -7,6 +7,6 @@ SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Count$Compare Y LTZ.2.0 SVar:Y:Remembered$CardManaCost SVar:Z:Sacrificed$CardManaCost -DeckNeeds:Type$Artifact|Creature|Equipment|Vehicle AI:RemoveDeck:Random +DeckNeeds:Type$Artifact|Creature|Equipment|Vehicle Oracle:As an additional cost to cast this spell, sacrifice an artifact or creature.\nSearch your library for an Equipment or Vehicle card, put that card onto the battlefield, then shuffle. If it has mana value less than the sacrificed permanent's mana value, scry 2. diff --git a/forge-gui/res/cardsfolder/a/angel_of_deliverance.txt b/forge-gui/res/cardsfolder/a/angel_of_deliverance.txt index 4c803c55271..8c4580f503e 100644 --- a/forge-gui/res/cardsfolder/a/angel_of_deliverance.txt +++ b/forge-gui/res/cardsfolder/a/angel_of_deliverance.txt @@ -6,6 +6,6 @@ K:Flying T:Mode$ DamageDealtOnce | ValidSource$ Card.Self | Execute$ TrigChange | Delirium$ True | TriggerZones$ Battlefield | TriggerDescription$ Delirium — Whenever CARDNAME deals damage, if there are four or more card types among cards in your graveyard, exile target creature an opponent controls. SVar:TrigChange:DB$ ChangeZone | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Select target creature an opponent controls | Origin$ Battlefield | Destination$ Exile SVar:HasCombatEffect:TRUE -DeckHints:Ability$Graveyard|Discard DeckHas:Ability$Delirium +DeckHints:Ability$Graveyard|Discard Oracle:Flying\nDelirium — Whenever Angel of Deliverance deals damage, if there are four or more card types among cards in your graveyard, exile target creature an opponent controls. diff --git a/forge-gui/res/cardsfolder/a/angelic_favor.txt b/forge-gui/res/cardsfolder/a/angelic_favor.txt index 64f8f7c24d6..2ff750183c4 100644 --- a/forge-gui/res/cardsfolder/a/angelic_favor.txt +++ b/forge-gui/res/cardsfolder/a/angelic_favor.txt @@ -3,6 +3,6 @@ ManaCost:3 W Types:Instant S:Mode$ AlternativeCost | ValidSA$ Spell.Self | EffectZone$ All | Cost$ tapXType<1/Creature> | IsPresent$ Plains.YouCtrl | Description$ If you control a Plains, you may tap an untapped creature you control rather than pay this spell's mana cost. A:SP$ Token | TokenScript$ w_4_4_angel_flying | AtEOT$ Exile | ActivationPhases$ BeginCombat->EndCombat | StackDescription$ {p:You} creates a 4/4 white Angel creature token with flying. Exile it at the beginning of the next end step. | SpellDescription$ Cast this spell only during combat. Create a 4/4 white Angel creature token with flying. Exile it at the beginning of the next end step. -DeckHas:Ability$Token AI:RemoveDeck:All +DeckHas:Ability$Token Oracle:If you control a Plains, you may tap an untapped creature you control rather than pay this spell's mana cost.\nCast this spell only during combat.\nCreate a 4/4 white Angel creature token with flying. Exile it at the beginning of the next end step. diff --git a/forge-gui/res/cardsfolder/a/angelic_sleuth.txt b/forge-gui/res/cardsfolder/a/angelic_sleuth.txt index bd3fc595643..a00c37db69a 100644 --- a/forge-gui/res/cardsfolder/a/angelic_sleuth.txt +++ b/forge-gui/res/cardsfolder/a/angelic_sleuth.txt @@ -5,6 +5,6 @@ PT:2/3 K:Flying T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Permanent.YouCtrl+Other+HasCounters | TriggerZones$ Battlefield | Execute$ TrigInvestigate | TriggerDescription$ Whenever another permanent you control leaves the battlefield, if it had counters on it, investigate. SVar:TrigInvestigate:DB$ Investigate -DeckHints:Ability$Counters DeckHas:Ability$Investigate|Token|Sacrifice & Type$Artifact|Clue +DeckHints:Ability$Counters Oracle:Flying\nWhenever another permanent you control leaves the battlefield, if it had counters on it, investigate. diff --git a/forge-gui/res/cardsfolder/a/anikthea_hand_of_erebos.txt b/forge-gui/res/cardsfolder/a/anikthea_hand_of_erebos.txt index 0b676e43e15..22534421f40 100644 --- a/forge-gui/res/cardsfolder/a/anikthea_hand_of_erebos.txt +++ b/forge-gui/res/cardsfolder/a/anikthea_hand_of_erebos.txt @@ -10,7 +10,7 @@ SVar:TrigExile:DB$ ChangeZone | ValidTgts$ Enchantment.nonAura+YouCtrl | Origin$ SVar:DBCopy:DB$ CopyPermanent | Defined$ Remembered | SetPower$ 3 | SetToughness$ 3 | AddTypes$ Creature & Zombie | SetColor$ Black | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True DeckHas:Ability$Token|Graveyard -DeckNeeds:Type$Enchantment DeckHints:Ability$Graveyard|Mill +DeckNeeds:Type$Enchantment SVar:HasAttackEffect:TRUE Oracle:Menace\nOther enchantment creatures you control have menace.\nWhenever Anikthea enters or attacks, exile up to one target non-Aura enchantment card from your graveyard. Create a token that's a copy of that card, except it's a 3/3 black Zombie creature in addition to its other types. diff --git a/forge-gui/res/cardsfolder/a/animation_module.txt b/forge-gui/res/cardsfolder/a/animation_module.txt index 994696a170d..499dd912d4b 100644 --- a/forge-gui/res/cardsfolder/a/animation_module.txt +++ b/forge-gui/res/cardsfolder/a/animation_module.txt @@ -4,6 +4,6 @@ Types:Artifact T:Mode$ CounterAddedOnce | ValidCard$ Permanent.YouCtrl | TriggerZones$ Battlefield | CounterType$ P1P1 | Execute$ TrigToken | TriggerDescription$ Whenever one or more +1/+1 counters are put on a permanent you control, you may pay {1}. If you do, create a 1/1 colorless Servo artifact creature token. SVar:TrigToken:AB$ Token | Cost$ 1 | TokenAmount$ 1 | TokenScript$ c_1_1_a_servo | TokenOwner$ You A:AB$ PutCounter | Cost$ 3 T | ValidTgts$ Permanent,Player | TgtPrompt$ Select target player or permanent | CounterType$ ExistingCounter | CounterNum$ 1 | AILogic$ AtOppEOT | SpellDescription$ Choose a counter on target permanent or player. Give that permanent or player another counter of that kind. -DeckHints:Ability$Counters AI:RemoveDeck:All +DeckHints:Ability$Counters Oracle:Whenever one or more +1/+1 counters are put on a permanent you control, you may pay {1}. If you do, create a 1/1 colorless Servo artifact creature token.\n{3}, {T}: Choose a counter on target permanent or player. Give that permanent or player another counter of that kind. diff --git a/forge-gui/res/cardsfolder/a/aquatic_alchemist_bubble_up.txt b/forge-gui/res/cardsfolder/a/aquatic_alchemist_bubble_up.txt index 682cd78cfad..53490af1361 100644 --- a/forge-gui/res/cardsfolder/a/aquatic_alchemist_bubble_up.txt +++ b/forge-gui/res/cardsfolder/a/aquatic_alchemist_bubble_up.txt @@ -4,8 +4,8 @@ Types:Creature Elemental PT:1/3 T:Mode$ SpellCast | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | ActivatorThisTurnCast$ EQ1 | Execute$ TrigPump | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast your first instant or sorcery spell each turn, CARDNAME gets +2/+0 until end of turn. SVar:TrigPump:DB$ Pump | Defined$ Self | NumAtt$ 2 -DeckHints:Type$Instant|Sorcery DeckHas:Ability$Graveyard +DeckHints:Type$Instant|Sorcery AlternateMode:Adventure Oracle:Whenever you cast your first instant or sorcery spell each turn, Aquatic Alchemist gets +2/+0 until end of turn. diff --git a/forge-gui/res/cardsfolder/a/arcane_melee.txt b/forge-gui/res/cardsfolder/a/arcane_melee.txt index 91c1c65ec3a..c661e4df229 100644 --- a/forge-gui/res/cardsfolder/a/arcane_melee.txt +++ b/forge-gui/res/cardsfolder/a/arcane_melee.txt @@ -2,6 +2,6 @@ Name:Arcane Melee ManaCost:4 U Types:Enchantment S:Mode$ ReduceCost | ValidCard$ Instant,Sorcery | Type$ Spell | Amount$ 2 | Description$ Instant and sorcery spells cost {2} less to cast. -DeckNeeds:Type$Instant|Sorcery AI:RemoveDeck:Random +DeckNeeds:Type$Instant|Sorcery Oracle:Instant and sorcery spells cost {2} less to cast. diff --git a/forge-gui/res/cardsfolder/a/arcbound_wanderer.txt b/forge-gui/res/cardsfolder/a/arcbound_wanderer.txt index 71f19f62fc6..a33d277d40f 100644 --- a/forge-gui/res/cardsfolder/a/arcbound_wanderer.txt +++ b/forge-gui/res/cardsfolder/a/arcbound_wanderer.txt @@ -3,7 +3,7 @@ ManaCost:6 Types:Artifact Creature Golem PT:0/0 K:Modular:Sunburst +AI:RemoveDeck:Random DeckHas:Ability$Counters DeckHints:Ability$Proliferate -AI:RemoveDeck:Random Oracle:Modular—Sunburst (This creature enters with a +1/+1 counter on it for each color of mana spent to cast it. When it dies, you may put its +1/+1 counters on target artifact creature.) diff --git a/forge-gui/res/cardsfolder/a/archfiend_of_the_dross.txt b/forge-gui/res/cardsfolder/a/archfiend_of_the_dross.txt index 2dd8135bd35..63b1bf3214b 100644 --- a/forge-gui/res/cardsfolder/a/archfiend_of_the_dross.txt +++ b/forge-gui/res/cardsfolder/a/archfiend_of_the_dross.txt @@ -9,6 +9,6 @@ SVar:TrigRemoveCtr:DB$ RemoveCounter | Defined$ Self | CounterType$ OIL | Counte SVar:LoseGame:DB$ LosesGame | Defined$ You | ConditionDefined$ Self | ConditionPresent$ Card.counters_EQ0_OIL T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Creature.OppCtrl | TriggerZones$ Battlefield | Execute$ TrigLoseLife | TriggerDescription$ Whenever a creature an opponent controls dies, its controller loses 2 life. SVar:TrigLoseLife:DB$ LoseLife | LifeAmount$ 2 | Defined$ TriggeredCardController -DeckHas:Ability$Counters AI:RemoveDeck:Random +DeckHas:Ability$Counters Oracle:Flying\nArchfiend of the Dross enters with four oil counters on it.\nAt the beginning of your upkeep, remove an oil counter from Archfiend of the Dross. Then if it has no oil counters on it, you lose the game.\nWhenever a creature an opponent controls dies, its controller loses 2 life. diff --git a/forge-gui/res/cardsfolder/a/archghoul_of_thraben.txt b/forge-gui/res/cardsfolder/a/archghoul_of_thraben.txt index 9b742e85bc7..813e71604d8 100644 --- a/forge-gui/res/cardsfolder/a/archghoul_of_thraben.txt +++ b/forge-gui/res/cardsfolder/a/archghoul_of_thraben.txt @@ -7,6 +7,6 @@ SVar:TrigPeek:DB$ PeekAndReveal | PeekAmount$ 1 | RevealValid$ Zombie | RevealOp SVar:DBToHand:DB$ ChangeZone | Defined$ Remembered | Origin$ Library | Destination$ Hand | SubAbility$ DBToGrave SVar:DBToGrave:DB$ ChangeZone | Defined$ TopOfLibrary | Origin$ Library | Destination$ Graveyard | Optional$ True | ConditionDefined$ Remembered | ConditionPresent$ Card | ConditionCompare$ EQ0 | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -DeckHints:Type$Zombie DeckHas:Ability$Graveyard +DeckHints:Type$Zombie Oracle:Whenever Archghoul of Thraben or another Zombie you control dies, look at the top card of your library. If it's a Zombie card, you may reveal it and put it into your hand. If you don't put the card into your hand, you may put it into your graveyard. diff --git a/forge-gui/res/cardsfolder/a/archivist_of_oghma.txt b/forge-gui/res/cardsfolder/a/archivist_of_oghma.txt index b6ef766fd3d..df9a94a4e88 100644 --- a/forge-gui/res/cardsfolder/a/archivist_of_oghma.txt +++ b/forge-gui/res/cardsfolder/a/archivist_of_oghma.txt @@ -6,6 +6,6 @@ K:Flash T:Mode$ SearchedLibrary | ValidPlayer$ Player.Opponent | SearchOwnLibrary$ True | Execute$ TrigGainLife | TriggerZones$ Battlefield | TriggerDescription$ Whenever an opponent searches their library, you gain 1 life and draw a card. SVar:TrigGainLife:DB$ GainLife | LifeAmount$ 1 | SubAbility$ DBDraw SVar:DBDraw:DB$ Draw -DeckHas:Ability$LifeGain AI:RemoveDeck:Random +DeckHas:Ability$LifeGain Oracle:Flash\nWhenever an opponent searches their library, you gain 1 life and draw a card. diff --git a/forge-gui/res/cardsfolder/a/archon_of_suns_grace.txt b/forge-gui/res/cardsfolder/a/archon_of_suns_grace.txt index 75f3775dfb5..615426aa4e8 100644 --- a/forge-gui/res/cardsfolder/a/archon_of_suns_grace.txt +++ b/forge-gui/res/cardsfolder/a/archon_of_suns_grace.txt @@ -9,6 +9,6 @@ SVar:PlayMain1:TRUE T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Enchantment.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Constellation — Whenever an enchantment you control enters, create a 2/2 white Pegasus creature token with flying. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ w_2_2_pegasus_flying | TokenOwner$ You DeckHas:Ability$Token -DeckNeeds:Type$Enchantment DeckHints:Type$Pegasus +DeckNeeds:Type$Enchantment Oracle:Flying, lifelink\nPegasus creatures you control have lifelink.\nConstellation — Whenever an enchantment you control enters, create a 2/2 white Pegasus creature token with flying. diff --git a/forge-gui/res/cardsfolder/a/archons_glory.txt b/forge-gui/res/cardsfolder/a/archons_glory.txt index 6e0e6c1dd96..f0c3ee0c764 100644 --- a/forge-gui/res/cardsfolder/a/archons_glory.txt +++ b/forge-gui/res/cardsfolder/a/archons_glory.txt @@ -4,6 +4,6 @@ Types:Instant K:Bargain A:SP$ Pump | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumAtt$ +2 | NumDef$ +2 | SubAbility$ PumpBargain | SpellDescription$ Target creature gets +2/+2 until end of turn. If this spell was bargained, that creature also gains flying and lifelink until end of turn. SVar:PumpBargain:DB$ Pump | Condition$ Bargain | KW$ Flying & Lifelink | Defined$ Targeted -DeckHints:Type$Artifact|Enchantment & Ability$Token DeckHas:Ability$Sacrifice|LifeGain +DeckHints:Type$Artifact|Enchantment & Ability$Token Oracle:Bargain (You may sacrifice an artifact, enchantment, or token as you cast this spell.)\nTarget creature gets +2/+2 until end of turn. If this spell was bargained, that creature also gains flying and lifelink until end of turn. diff --git a/forge-gui/res/cardsfolder/a/argivian_archaeologist.txt b/forge-gui/res/cardsfolder/a/argivian_archaeologist.txt index b667e877a96..702b64844a5 100644 --- a/forge-gui/res/cardsfolder/a/argivian_archaeologist.txt +++ b/forge-gui/res/cardsfolder/a/argivian_archaeologist.txt @@ -4,7 +4,7 @@ Types:Creature Human Artificer PT:1/1 A:AB$ ChangeZone | Cost$ W W T | TgtPrompt$ Choose target artifact card in your graveyard | ValidTgts$ Artifact.YouCtrl | Origin$ Graveyard | Destination$ Hand | SpellDescription$ Return target artifact card from your graveyard to your hand. AI:RemoveDeck:Random -DeckNeeds:Type$Artifact DeckHas:Ability$Graveyard DeckHints:Ability$Graveyard|Mill +DeckNeeds:Type$Artifact Oracle:{W}{W}, {T}: Return target artifact card from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/a/armed_and_armored.txt b/forge-gui/res/cardsfolder/a/armed_and_armored.txt index b7ebd3e70ea..595c0b3369a 100644 --- a/forge-gui/res/cardsfolder/a/armed_and_armored.txt +++ b/forge-gui/res/cardsfolder/a/armed_and_armored.txt @@ -3,7 +3,7 @@ ManaCost:1 W Types:Instant A:SP$ AnimateAll | Types$ Creature,Artifact | ValidCards$ Vehicle.YouCtrl | SubAbility$ ArmDwarf | StackDescription$ Vehicles {p:You} controls become artifact creatures until end of turn. | SpellDescription$ Vehicles you control become artifact creatures until end of turn. Choose a Dwarf you control. Attach any number of Equipment you control to it. SVar:ArmDwarf:DB$ Attach | Object$ Valid Equipment.YouCtrl | Defined$ Valid Dwarf.YouCtrl | Optional$ True | StackDescription$ {p:You} chooses a Dwarf they control and attaches any number of Equipment they control to it. +AI:RemoveDeck:All DeckNeeds:Type$Vehicle|Dwarf DeckHints:Type$Equipment -AI:RemoveDeck:All Oracle:Vehicles you control become artifact creatures until end of turn. Choose a Dwarf you control. Attach any number of Equipment you control to it. diff --git a/forge-gui/res/cardsfolder/a/arteeoh_dread_scavenger.txt b/forge-gui/res/cardsfolder/a/arteeoh_dread_scavenger.txt index 3171f634429..202a1b10651 100644 --- a/forge-gui/res/cardsfolder/a/arteeoh_dread_scavenger.txt +++ b/forge-gui/res/cardsfolder/a/arteeoh_dread_scavenger.txt @@ -9,6 +9,6 @@ SVar:TrigExchange:DB$ ExchangeControl | RememberExchanged$ True | ValidTgts$ Art SVar:TrigImmediateTrig:DB$ ImmediateTrigger | ConditionDefined$ Remembered | ConditionPresent$ Card | ConditionCompare$ GE2 | SubAbility$ DBCleanup | Execute$ TrigToken | TriggerDescription$ When you do, create a token that's a copy of target artifact you don't control, except it's a 1/1 green Squirrel creature token in addition to its other colors and types. SVar:TrigToken:DB$ CopyPermanent | ValidTgts$ Artifact.YouDontCtrl | TgtPrompt$ Select target artifact you don't control | SetPower$ 1 | SetToughness$ 1 | AddColors$ Green | AddTypes$ Creature & Squirrel SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -DeckHas:Ability$Token & Type$Squirrel AI:RemoveDeck:Random +DeckHas:Ability$Token & Type$Squirrel Oracle:Flying, deathtouch\nWhenever Arteeoh deals combat damage to a player, you may exchange control of two other target artifacts. When you do, create a token that's a copy of target artifact you don't control, except it's a 1/1 green Squirrel creature token in addition to its other colors and types. diff --git a/forge-gui/res/cardsfolder/a/artifact_mutation.txt b/forge-gui/res/cardsfolder/a/artifact_mutation.txt index 37c4bc3391f..47788d85600 100644 --- a/forge-gui/res/cardsfolder/a/artifact_mutation.txt +++ b/forge-gui/res/cardsfolder/a/artifact_mutation.txt @@ -4,6 +4,6 @@ Types:Instant A:SP$ Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact | NoRegen$ True | SubAbility$ TrigToken | SpellDescription$ Destroy target artifact. It can't be regenerated. SVar:TrigToken:DB$ Token | TokenAmount$ X | TokenScript$ g_1_1_saproling | SpellDescription$ Create X 1/1 green Saproling creature tokens, where X is that artifact's mana value. SVar:X:Targeted$CardManaCost -DeckHas:Ability$Token & Type$Saproling AI:RemoveDeck:Random +DeckHas:Ability$Token & Type$Saproling Oracle:Destroy target artifact. It can't be regenerated. Create X 1/1 green Saproling creature tokens, where X is that artifact's mana value. diff --git a/forge-gui/res/cardsfolder/a/asmoranomardicadaistinaculdacar.txt b/forge-gui/res/cardsfolder/a/asmoranomardicadaistinaculdacar.txt index 33ec4dab185..56ac30c566d 100644 --- a/forge-gui/res/cardsfolder/a/asmoranomardicadaistinaculdacar.txt +++ b/forge-gui/res/cardsfolder/a/asmoranomardicadaistinaculdacar.txt @@ -8,7 +8,7 @@ SVar:X:PlayerCountPropertyYou$CardsDiscardedThisTurn T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | OptionalDecider$ You | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters, you may search your library for a card named The Underworld Cookbook, reveal it, put it into your hand, then shuffle. SVar:TrigChange:DB$ ChangeZone | Origin$ Library | Destination$ Hand | ChangeType$ Card.namedThe Underworld Cookbook | ShuffleNonMandatory$ True A:AB$ DealDamage | Cost$ Sac<2/Food> | ValidTgts$ Creature | TgtPrompt$ Select target creature | DamageSource$ Targeted | NumDmg$ 6 | SpellDescription$ Target creature deals 6 damage to itself. -DeckHints:Type$Discard DeckHas:Ability$Sacrifice +DeckHints:Type$Discard DeckNeeds:Name$The Underworld Cookbook Oracle:As long as you've discarded a card this turn, you may pay {B/R} to cast this spell.\nWhen Asmoranomardicadaistinaculdacar enters, you may search your library for a card named The Underworld Cookbook, reveal it, put it into your hand, then shuffle.\nSacrifice two Foods: Target creature deals 6 damage to itself. diff --git a/forge-gui/res/cardsfolder/a/audacious_reshapers.txt b/forge-gui/res/cardsfolder/a/audacious_reshapers.txt index eda4fa9e0a3..a9de31d33f0 100644 --- a/forge-gui/res/cardsfolder/a/audacious_reshapers.txt +++ b/forge-gui/res/cardsfolder/a/audacious_reshapers.txt @@ -6,7 +6,7 @@ A:AB$ DigUntil | Cost$ T Sac<1/Artifact> | Valid$ Artifact | ValidDescription$ a SVar:DBDealDamage:DB$ DealDamage | Defined$ You | NumDmg$ X | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Remembered$Amount +AI:RemoveDeck:Random DeckHas:Ability$Sacrifice DeckNeeds:Type$Artifact -AI:RemoveDeck:Random Oracle:{T}, Sacrifice an artifact: Reveal cards from the top of your library until you reveal an artifact card. Put that card onto the battlefield and the rest on the bottom of your library in a random order. Audacious Reshapers deals damage to you equal to the number of cards revealed this way. diff --git a/forge-gui/res/cardsfolder/a/auntie_blyte_bad_influence.txt b/forge-gui/res/cardsfolder/a/auntie_blyte_bad_influence.txt index 0f073210bbe..1113af5b5c6 100644 --- a/forge-gui/res/cardsfolder/a/auntie_blyte_bad_influence.txt +++ b/forge-gui/res/cardsfolder/a/auntie_blyte_bad_influence.txt @@ -8,6 +8,6 @@ SVar:TrigCounter:DB$ PutCounter | Defined$ Self | CounterNum$ Y | CounterType$ P SVar:Y:TriggerCount$DamageAmount A:AB$ DealDamage | Cost$ 1 R T SubCounter | ValidTgts$ Any | NumDmg$ X | SpellDescription$ It deals X damage to any target. SVar:X:Count$xPaid -DeckHas:Ability$Counters AI:RemoveDeck:Random +DeckHas:Ability$Counters Oracle:Flying\nWhenever a source you control deals damage to you, put that many +1/+1 counters on Auntie Blyte, Bad Influence.\n{1}{R}, {T}, Remove X +1/+1 counters from Auntie Blyte: It deals X damage to any target. diff --git a/forge-gui/res/cardsfolder/b/back_in_town.txt b/forge-gui/res/cardsfolder/b/back_in_town.txt index 54407af54c1..4ea6eaeca02 100644 --- a/forge-gui/res/cardsfolder/b/back_in_town.txt +++ b/forge-gui/res/cardsfolder/b/back_in_town.txt @@ -1,6 +1,6 @@ Name:Back in Town -Types:Sorcery ManaCost:X 2 B +Types:Sorcery A:SP$ ChangeZone | TargetMin$ X | TargetMax$ X | ValidTgts$ Creature.YouOwn+Outlaw | TgtPrompt$ Select X target outlaw creatures in your graveyard | Origin$ Graveyard | Destination$ Battlefield | SpellDescription$ Return X target outlaw creature cards from your graveyard to the battlefield. SVar:X:Count$xPaid DeckHints:Type$Assassin|Mercenary|Pirate|Rogue|Warlock diff --git a/forge-gui/res/cardsfolder/b/baird_argivian_recruiter.txt b/forge-gui/res/cardsfolder/b/baird_argivian_recruiter.txt index 0b63d9f4dba..7f3f44d7fad 100644 --- a/forge-gui/res/cardsfolder/b/baird_argivian_recruiter.txt +++ b/forge-gui/res/cardsfolder/b/baird_argivian_recruiter.txt @@ -4,6 +4,6 @@ Types:Legendary Creature Human Soldier PT:2/2 T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigToken | IsPresent$ Creature.YouCtrl+powerGTbasePower | TriggerDescription$ At the beginning of your end step, if you control a creature with power greater than its base power, create a 1/1 white Soldier creature token. SVar:TrigToken:DB$ Token | TokenScript$ w_1_1_soldier -DeckHas:Ability$Token AI:RemoveDeck:Random +DeckHas:Ability$Token Oracle:At the beginning of your end step, if you control a creature with power greater than its base power, create a 1/1 white Soldier creature token. diff --git a/forge-gui/res/cardsfolder/b/balloon_stand.txt b/forge-gui/res/cardsfolder/b/balloon_stand.txt index 9c8c82aeaaf..e31f012206f 100644 --- a/forge-gui/res/cardsfolder/b/balloon_stand.txt +++ b/forge-gui/res/cardsfolder/b/balloon_stand.txt @@ -1,12 +1,15 @@ Name:Balloon Stand ManaCost:no cost Types:Artifact Attraction -Variant:A:Lights:2 6 -Variant:B:Lights:3 6 -Variant:C:Lights:4 6 -Variant:D:Lights:5 6 K:Visit:TrigCharm SVar:TrigCharm:DB$ Charm | Choices$ DBToken,DBPump SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ r_1_1_balloon_flying | TokenOwner$ You | SpellDescription$ Create a 1/1 red Balloon creature token with flying. SVar:DBPump:DB$ Pump | UnlessCost$ Sac<1/Balloon> | UnlessSwitched$ True | UnlessPayer$ You | ValidTgts$ Creature | KW$ Flying | SpellDescription$ Sacrifice a Balloon. If you do, target creature gains flying until end of turn. Oracle:Visit — Choose one.\n• Create a 1/1 red Balloon creature token with flying.\n• Sacrifice a Balloon. If you do, target creature gains flying until end of turn. + +# --- VARIANTS --- + +Variant:A:Lights:2 6 +Variant:B:Lights:3 6 +Variant:C:Lights:4 6 +Variant:D:Lights:5 6 diff --git a/forge-gui/res/cardsfolder/b/bazaar_of_baghdad.txt b/forge-gui/res/cardsfolder/b/bazaar_of_baghdad.txt index a194b3d4e2e..48b751f25b5 100644 --- a/forge-gui/res/cardsfolder/b/bazaar_of_baghdad.txt +++ b/forge-gui/res/cardsfolder/b/bazaar_of_baghdad.txt @@ -4,7 +4,7 @@ Types:Land A:AB$ Draw | Cost$ T | NumCards$ 2 | SpellDescription$ Draw two cards, then discard three cards. | SubAbility$ DBDiscard SVar:DBDiscard:DB$ Discard | Defined$ You | NumCards$ 3 | Mode$ TgtChoose AI:RemoveDeck:Random -DeckNeeds:Ability$Graveyard DeckHas:Ability$Graveyard|Discard DeckHints:Ability$Graveyard|Discard & Type$Zombie|Necron|Phoenix|Skeleton & Keyword$Unearth|Dredge|Flashback +DeckNeeds:Ability$Graveyard Oracle:{T}: Draw two cards, then discard three cards. diff --git a/forge-gui/res/cardsfolder/b/beast_within.txt b/forge-gui/res/cardsfolder/b/beast_within.txt index 35288e8d4a1..d7355d644fb 100644 --- a/forge-gui/res/cardsfolder/b/beast_within.txt +++ b/forge-gui/res/cardsfolder/b/beast_within.txt @@ -3,6 +3,6 @@ ManaCost:2 G Types:Instant A:SP$ Destroy | ValidTgts$ Permanent | TgtPrompt$ Select target permanent | AITgts$ Card.cmcGE4 | SubAbility$ DBToken | SpellDescription$ Destroy target permanent. Its controller creates a 3/3 green Beast creature token. SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ g_3_3_beast | TokenOwner$ TargetedController -DeckHas:Ability$Token AI:RemoveDeck:All +DeckHas:Ability$Token Oracle:Destroy target permanent. Its controller creates a 3/3 green Beast creature token. diff --git a/forge-gui/res/cardsfolder/b/begin_the_invasion.txt b/forge-gui/res/cardsfolder/b/begin_the_invasion.txt index 9d019a178f0..d2756c1f9f6 100644 --- a/forge-gui/res/cardsfolder/b/begin_the_invasion.txt +++ b/forge-gui/res/cardsfolder/b/begin_the_invasion.txt @@ -3,6 +3,6 @@ ManaCost:X W U B R G Types:Sorcery A:SP$ ChangeZone | Origin$ Library | DifferentNames$ True | ChangeTypeDesc$ battle cards with different names | Destination$ Battlefield | ChangeType$ Card.Battle | ChangeNum$ X | SpellDescription$ Search your library for up to X battle cards with different names, put them onto the battlefield, then shuffle. SVar:X:Count$xPaid -DeckNeeds:Type$Battle AI:RemoveDeck:Random +DeckNeeds:Type$Battle Oracle:Search your library for up to X battle cards with different names, put them onto the battlefield, then shuffle. diff --git a/forge-gui/res/cardsfolder/b/biowaste_blob.txt b/forge-gui/res/cardsfolder/b/biowaste_blob.txt index 355f95590c7..f12c43c411b 100644 --- a/forge-gui/res/cardsfolder/b/biowaste_blob.txt +++ b/forge-gui/res/cardsfolder/b/biowaste_blob.txt @@ -5,7 +5,7 @@ PT:0/0 S:Mode$ Continuous | Affected$ Ooze.YouCtrl | AddPower$ 1 | AddToughness$ 1 | Description$ Oozes you control get +1/+1. T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ TrigCopy | TriggerZones$ Battlefield | IsPresent$ Card.IsCommander+YouCtrl | PresentCompare$ GE1 | TriggerDescription$ At the beginning of your upkeep, if you control a commander, create a token that's a copy of CARDNAME. SVar:TrigCopy:DB$ CopyPermanent | Defined$ Self | NumCopies$ 1 +AI:RemoveDeck:NonCommander DeckNeeds:Type$Ooze DeckHas:Ability$Token -AI:RemoveDeck:NonCommander Oracle:Oozes you control get +1/+1.\nAt the beginning of your upkeep, if you control a commander, create a token that's a copy of Biowaste Blob. diff --git a/forge-gui/res/cardsfolder/b/blast_zone.txt b/forge-gui/res/cardsfolder/b/blast_zone.txt index 321194c31d2..d5f7d0013d4 100644 --- a/forge-gui/res/cardsfolder/b/blast_zone.txt +++ b/forge-gui/res/cardsfolder/b/blast_zone.txt @@ -7,6 +7,6 @@ A:AB$ PutCounter | Cost$ X X T | CounterType$ CHARGE | CounterNum$ X | SpellDesc SVar:X:Count$xPaid A:AB$ DestroyAll | Cost$ 3 T Sac<1/CARDNAME> | ValidCards$ Permanent.nonLand+cmcEQY | SpellDescription$ Destroy each nonland permanent with mana value equal to the number of charge counters on CARDNAME. SVar:Y:Count$CardCounters.CHARGE -DeckHas:Ability$Counters AI:RemoveDeck:All +DeckHas:Ability$Counters Oracle:Blast Zone enters with a charge counter on it.\n{T}: Add {C}.\n{X}{X}, {T}: Put X charge counters on Blast Zone.\n{3}, {T}, Sacrifice Blast Zone: Destroy each nonland permanent with mana value equal to the number of charge counters on Blast Zone. diff --git a/forge-gui/res/cardsfolder/b/blighted_burgeoning.txt b/forge-gui/res/cardsfolder/b/blighted_burgeoning.txt index f859db3f7b0..229f6a72401 100644 --- a/forge-gui/res/cardsfolder/b/blighted_burgeoning.txt +++ b/forge-gui/res/cardsfolder/b/blighted_burgeoning.txt @@ -7,6 +7,6 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigIncubate:DB$ Incubate | Amount$ 2 T:Mode$ TapsForMana | ValidCard$ Card.AttachedBy | Execute$ TrigMana | Static$ True | TriggerDescription$ Whenever enchanted land is tapped for mana, its controller adds an additional one mana of any color. SVar:TrigMana:DB$ Mana | Produced$ Any | Amount$ 1 | Defined$ TriggeredCardController -DeckHas:Ability$Counters|Token AI:RemoveDeck:All +DeckHas:Ability$Counters|Token Oracle:Enchant land\nWhen Blighted Burgeoning enters, 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.)\nWhenever enchanted land is tapped for mana, its controller adds an additional one mana of any color. diff --git a/forge-gui/res/cardsfolder/b/bloodcurdler.txt b/forge-gui/res/cardsfolder/b/bloodcurdler.txt index 9bc5575d9ec..97d7bd76887 100644 --- a/forge-gui/res/cardsfolder/b/bloodcurdler.txt +++ b/forge-gui/res/cardsfolder/b/bloodcurdler.txt @@ -8,6 +8,6 @@ SVar:TrigMill:DB$ Mill | Defined$ You | NumCards$ 1 S:Mode$ Continuous | Affected$ Card.Self | AddPower$ 1 | AddToughness$ 1 | AddTrigger$ EndScream | Condition$ Threshold | Description$ Threshold — As long as seven or more cards are in your graveyard, CARDNAME gets +1/+1 and has "At the beginning of your end step, exile two cards from your graveyard." SVar:EndScream:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ BloodExile | Secondary$ True | TriggerDescription$ At the beginning of your end step, exile two cards from your graveyard. SVar:BloodExile:DB$ ChangeZone | Hidden$ True | Mandatory$ True | ChangeType$ Card.YouCtrl | ChangeNum$ 2 | DefinedPlayer$ You | Origin$ Graveyard | Destination$ Exile -DeckHints:Ability$Graveyard AI:RemoveDeck:Random +DeckHints:Ability$Graveyard Oracle:Flying\nAt the beginning of your upkeep, mill a card.\nThreshold — As long as seven or more cards are in your graveyard, Bloodcurdler gets +1/+1 and has "At the beginning of your end step, exile two cards from your graveyard." diff --git a/forge-gui/res/cardsfolder/b/bloodsoaked_altar.txt b/forge-gui/res/cardsfolder/b/bloodsoaked_altar.txt index 15da957adac..76d942f5def 100644 --- a/forge-gui/res/cardsfolder/b/bloodsoaked_altar.txt +++ b/forge-gui/res/cardsfolder/b/bloodsoaked_altar.txt @@ -3,6 +3,6 @@ ManaCost:4 B B Types:Artifact A:AB$ Token | Cost$ T PayLife<2> Discard<1/Card> Sac<1/Creature> | TokenAmount$ 1 | TokenScript$ b_5_5_demon_flying | TokenOwner$ You | SorcerySpeed$ True | SpellDescription$ Create a 5/5 black Demon creature token with flying. Activate only as a sorcery. SVar:AIPreference:DiscardCost$Card | SacCost$Creature.Token,Creature.cmcLE3 -DeckHas:Ability$Token AI:RemoveDeck:Random +DeckHas:Ability$Token Oracle:{T}, Pay 2 life, Discard a card, Sacrifice a creature: Create a 5/5 black Demon creature token with flying. Activate only as a sorcery. diff --git a/forge-gui/res/cardsfolder/b/bloodthirsty_adversary.txt b/forge-gui/res/cardsfolder/b/bloodthirsty_adversary.txt index 0948ca6d84f..a1cd99f99b3 100644 --- a/forge-gui/res/cardsfolder/b/bloodthirsty_adversary.txt +++ b/forge-gui/res/cardsfolder/b/bloodthirsty_adversary.txt @@ -10,6 +10,6 @@ SVar:DBExile:DB$ ChangeZone | Origin$ Graveyard | Destination$ Exile | TargetMin SVar:DBCopyCast:DB$ Play | Valid$ Card.IsRemembered | ValidZone$ Exile | Controller$ You | CopyCard$ True | WithoutManaCost$ True | ValidSA$ Spell | Optional$ True | Amount$ All | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Count$TriggerRememberAmount -DeckHas:Ability$Counters AI:RemoveDeck:All +DeckHas:Ability$Counters Oracle:Haste\nWhen Bloodthirsty Adversary enters, you may pay {2}{R} any number of times. When you pay this cost one or more times, put that many +1/+1 counters on Bloodthirsty Adversary, then exile up to that many target instant and/or sorcery cards with mana value 3 or less from your graveyard and copy them. You may cast any number of the copies without paying their mana costs. diff --git a/forge-gui/res/cardsfolder/b/bog_naughty.txt b/forge-gui/res/cardsfolder/b/bog_naughty.txt index 2f4316372a5..e9e56cf1709 100644 --- a/forge-gui/res/cardsfolder/b/bog_naughty.txt +++ b/forge-gui/res/cardsfolder/b/bog_naughty.txt @@ -5,6 +5,6 @@ PT:3/3 K:Flying A:AB$ Pump | Cost$ 2 B Sac<1/Food> | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumAtt$ -3 | NumDef$ -3 | IsCurse$ True | SpellDescription$ Target creature gets -3/-3 until end of turn. SVar:AIPreference:SacCost$Card.Food -DeckHints:Ability$Food AI:RemoveDeck:All +DeckHints:Ability$Food Oracle:Flying\n{2}{B}, Sacrifice a Food: Target creature gets -3/-3 until end of turn. diff --git a/forge-gui/res/cardsfolder/b/bomat_courier.txt b/forge-gui/res/cardsfolder/b/bomat_courier.txt index bd23b7ce576..a21422b62e2 100644 --- a/forge-gui/res/cardsfolder/b/bomat_courier.txt +++ b/forge-gui/res/cardsfolder/b/bomat_courier.txt @@ -6,6 +6,6 @@ K:Haste T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigExile | TriggerZones$ Battlefield | TriggerDescription$ Whenever CARDNAME attacks, exile the top card of your library face down. (You can't look at it.) SVar:TrigExile:DB$ Dig | Defined$ You | DigNum$ 1 | ChangeNum$ All | DestinationZone$ Exile | ExileFaceDown$ True | NoReveal$ True A:AB$ ChangeZoneAll | Cost$ R Discard<0/Hand> Sac<1/CARDNAME> | ChangeType$ Card.ExiledWithSource | Origin$ Exile | Destination$ Hand | AILogic$ DiscardAllAndRetExiled.minAdv2 | SpellDescription$ Put all cards exiled with CARDNAME into their owners' hands. -DeckNeeds:Color$Red AI:RemoveDeck:Random +DeckNeeds:Color$Red Oracle:Haste\nWhenever Bomat Courier attacks, exile the top card of your library face down. (You can't look at it.)\n{R}, Discard your hand, Sacrifice Bomat Courier: Put all cards exiled with Bomat Courier into their owners' hands. diff --git a/forge-gui/res/cardsfolder/b/bonus_round.txt b/forge-gui/res/cardsfolder/b/bonus_round.txt index c4e5f3122fc..eafce838e20 100644 --- a/forge-gui/res/cardsfolder/b/bonus_round.txt +++ b/forge-gui/res/cardsfolder/b/bonus_round.txt @@ -4,7 +4,7 @@ Types:Sorcery A:SP$ Effect | Triggers$ TrigSpellCast | SpellDescription$ Until end of turn, whenever a player casts an instant or sorcery spell, that player copies it and may choose new targets for the copy. SVar:TrigSpellCast:Mode$ SpellCast | ValidCard$ Instant,Sorcery | TriggerZones$ Command | ValidActivatingPlayer$ Player | Execute$ TrigCopySpell | TriggerDescription$ Until end of turn, whenever a player casts an instant or sorcery spell, that player copies it and may choose new targets for the copy. SVar:TrigCopySpell:DB$ CopySpellAbility | Defined$ TriggeredSpellAbility | AILogic$ Always | Controller$ TriggeredCardController | MayChooseTarget$ True -DeckNeeds:Type$Instant|Sorcery -AI:RemoveDeck:Random SVar:PlayMain1:TRUE +AI:RemoveDeck:Random +DeckNeeds:Type$Instant|Sorcery Oracle:Until end of turn, whenever a player casts an instant or sorcery spell, that player copies it and may choose new targets for the copy. diff --git a/forge-gui/res/cardsfolder/b/bosh_iron_golem.txt b/forge-gui/res/cardsfolder/b/bosh_iron_golem.txt index 05e06e2d781..926f7f7edba 100644 --- a/forge-gui/res/cardsfolder/b/bosh_iron_golem.txt +++ b/forge-gui/res/cardsfolder/b/bosh_iron_golem.txt @@ -5,6 +5,6 @@ PT:6/7 K:Trample A:AB$ DealDamage | Cost$ 3 R Sac<1/Artifact> | ValidTgts$ Any | NumDmg$ X | SpellDescription$ CARDNAME deals damage equal to the sacrificed artifact's mana value to any target. SVar:X:Sacrificed$CardManaCost -DeckNeeds:Color$Red AI:RemoveDeck:All +DeckNeeds:Color$Red Oracle:Trample\n{3}{R}, Sacrifice an artifact: Bosh, Iron Golem deals damage equal to the sacrificed artifact's mana value to any target. diff --git a/forge-gui/res/cardsfolder/b/bounce_chamber.txt b/forge-gui/res/cardsfolder/b/bounce_chamber.txt index b15daa24593..db82760afc0 100644 --- a/forge-gui/res/cardsfolder/b/bounce_chamber.txt +++ b/forge-gui/res/cardsfolder/b/bounce_chamber.txt @@ -1,11 +1,14 @@ Name:Bounce Chamber ManaCost:no cost Types:Artifact Attraction -Variant:A:Lights:2 6 -Variant:B:Lights:3 6 -Variant:C:Lights:4 6 -Variant:D:Lights:5 6 K:Visit:TrigChoose SVar:TrigChoose:DB$ ChooseCard | Choices$ Creature.YouDontCtrl+leastToughnessControlledByOpponent | ChoiceTitle$ Choose a creature with the least toughness among creatures your opponents control | Mandatory$ True | SubAbility$ DBBounce | SpellDescription$ Return a creature you don't control with the lowest toughness among creatures you don't control to its owner's hand. SVar:DBBounce:DB$ ChangeZone | Defined$ ChosenCard | Origin$ Battlefield | Destination$ Hand Oracle:Visit — Return a creature you don't control with the lowest toughness among creatures you don't control to its owner's hand. (If multiple creatures are tied, choose any one of them.) + +# --- VARIANTS --- + +Variant:A:Lights:2 6 +Variant:B:Lights:3 6 +Variant:C:Lights:4 6 +Variant:D:Lights:5 6 diff --git a/forge-gui/res/cardsfolder/b/bounty_board.txt b/forge-gui/res/cardsfolder/b/bounty_board.txt index 9ae4710f7b2..245b11d5517 100644 --- a/forge-gui/res/cardsfolder/b/bounty_board.txt +++ b/forge-gui/res/cardsfolder/b/bounty_board.txt @@ -1,6 +1,6 @@ Name:Bounty Board -Types:Artifact ManaCost:3 +Types:Artifact A:AB$ Mana | Cost$ T | Produced$ Any | SpellDescription$ Add one mana of any color. A:AB$ PutCounter | Cost$ 1 T | ValidTgts$ Creature | TgtPrompt$ Select target creature | CounterType$ BOUNTY | CounterNum$ 1 | IsCurse$ True | SorcerySpeed$ True | SpellDescription$ Put a bounty counter on target creature. T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Creature.counters_GE1_BOUNTY | TriggerZones$ Battlefield | Execute$ TrigGainLife | TriggerDescription$ Whenever a creature with a bounty counter on it dies, each of its controller's opponents draws a card and gains 2 life. diff --git a/forge-gui/res/cardsfolder/b/bounty_of_the_hunt.txt b/forge-gui/res/cardsfolder/b/bounty_of_the_hunt.txt index cf65c6347a2..1e2c954b1c4 100644 --- a/forge-gui/res/cardsfolder/b/bounty_of_the_hunt.txt +++ b/forge-gui/res/cardsfolder/b/bounty_of_the_hunt.txt @@ -3,6 +3,6 @@ ManaCost:3 G G Types:Instant A:SP$ PutCounter | ValidTgts$ Creature | TgtPrompt$ Select target creature to distribute counters to | CounterType$ P1P1 | CounterNum$ 3 | TargetMin$ 1 | TargetMax$ 3 | DividedAsYouChoose$ 3 | RemovePhase$ Cleanup | SpellDescription$ Distribute three +1/+1 counters among one, two, or three target creatures. For each +1/+1 counter you put on a creature this way, remove a +1/+1 counter from that creature at the beginning of the next cleanup step. S:Mode$ AlternativeCost | ValidSA$ Spell.Self | EffectZone$ All | Cost$ ExileFromHand<1/Card.Green+Other> | Description$ You may exile a green card from your hand rather than pay this spell's mana cost. -DeckHas:Ability$Counters AI:RemoveDeck:All +DeckHas:Ability$Counters Oracle:You may exile a green card from your hand rather than pay this spell's mana cost.\nDistribute three +1/+1 counters among one, two, or three target creatures. For each +1/+1 counter you put on a creature this way, remove a +1/+1 counter from that creature at the beginning of the next cleanup step. diff --git a/forge-gui/res/cardsfolder/b/briar_hydra.txt b/forge-gui/res/cardsfolder/b/briar_hydra.txt index 2789b883832..15ad77769b8 100644 --- a/forge-gui/res/cardsfolder/b/briar_hydra.txt +++ b/forge-gui/res/cardsfolder/b/briar_hydra.txt @@ -6,6 +6,6 @@ K:Trample T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | Execute$ DBCounter | TriggerZones$ Battlefield | TriggerDescription$ Domain — Whenever CARDNAME deals combat damage to a player, put X +1/+1 counters on target creature you control, where X is the number of basic land types among lands you control. SVar:DBCounter:DB$ PutCounter | CounterNum$ X | CounterType$ P1P1 | ValidTgts$ Creature.YouCtrl SVar:X:Count$Domain -DeckHas:Ability$Counters AI:RemoveDeck:Random +DeckHas:Ability$Counters Oracle:Trample\nDomain — Whenever Briar Hydra deals combat damage to a player, put X +1/+1 counters on target creature you control, where X is the number of basic land types among lands you control. diff --git a/forge-gui/res/cardsfolder/b/brighthearth_banneret.txt b/forge-gui/res/cardsfolder/b/brighthearth_banneret.txt index 5659645b0e8..6b60b175d1b 100644 --- a/forge-gui/res/cardsfolder/b/brighthearth_banneret.txt +++ b/forge-gui/res/cardsfolder/b/brighthearth_banneret.txt @@ -4,7 +4,7 @@ Types:Creature Elemental Warrior PT:1/1 S:Mode$ ReduceCost | ValidCard$ Elemental,Warrior | Type$ Spell | Activator$ You | Amount$ 1 | Description$ Elemental spells and Warrior spells you cast cost {1} less to cast. K:Reinforce:1:1 R -DeckHints:Type$Elemental|Warrior DeckHas:Ability$Counters +DeckHints:Type$Elemental|Warrior DeckNeeds:Type$Creature Oracle:Elemental spells and Warrior spells you cast cost {1} less to cast.\nReinforce 1—{1}{R} ({1}{R}, Discard this card: Put a +1/+1 counter on target creature.) diff --git a/forge-gui/res/cardsfolder/b/bubbling_cauldron.txt b/forge-gui/res/cardsfolder/b/bubbling_cauldron.txt index b4f874fa0d8..7a29889689b 100644 --- a/forge-gui/res/cardsfolder/b/bubbling_cauldron.txt +++ b/forge-gui/res/cardsfolder/b/bubbling_cauldron.txt @@ -5,7 +5,7 @@ A:AB$ GainLife | Cost$ 1 T Sac<1/Creature> | LifeAmount$ 4 | SpellDescription$ Y A:AB$ LoseLife | Cost$ 1 T Sac<1/Creature.namedFestering Newt/creature named Festering Newt> | Defined$ Player.Opponent | LifeAmount$ 4 | SubAbility$ DBGainLife | SpellDescription$ Each opponent loses 4 life. You gain life equal to the life lost this way. | StackDescription$ SpellDescription SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ AFLifeLost | StackDescription$ None SVar:AFLifeLost:Number$0 +AI:RemoveDeck:Random DeckHints:Name$Bogbrew Witch DeckNeeds:Name$Festering Newt -AI:RemoveDeck:Random Oracle:{1}, {T}, Sacrifice a creature: You gain 4 life.\n{1}, {T}, Sacrifice a creature named Festering Newt: Each opponent loses 4 life. You gain life equal to the life lost this way. diff --git a/forge-gui/res/cardsfolder/b/bumper_cars.txt b/forge-gui/res/cardsfolder/b/bumper_cars.txt index 1c70dbae7f4..e1805cdc29b 100644 --- a/forge-gui/res/cardsfolder/b/bumper_cars.txt +++ b/forge-gui/res/cardsfolder/b/bumper_cars.txt @@ -1,12 +1,15 @@ Name:Bumper Cars ManaCost:no cost Types:Artifact Attraction +K:Visit:TrigMustBeBlocked +SVar:TrigMustBeBlocked:DB$ Pump | ValidTgts$ Creature | KW$ HIDDEN CARDNAME must be blocked if able. | AILogic$ Pump | SpellDescription$ Visit — Target creature must be blocked this turn if able. +Oracle:Visit — Target creature must be blocked this turn if able. + +# --- VARIANTS --- + Variant:A:Lights:2 3 6 Variant:B:Lights:2 4 6 Variant:C:Lights:2 5 6 Variant:D:Lights:3 4 6 Variant:E:Lights:3 5 6 Variant:F:Lights:4 5 6 -K:Visit:TrigMustBeBlocked -SVar:TrigMustBeBlocked:DB$ Pump | ValidTgts$ Creature | KW$ HIDDEN CARDNAME must be blocked if able. | AILogic$ Pump | SpellDescription$ Visit — Target creature must be blocked this turn if able. -Oracle:Visit — Target creature must be blocked this turn if able. diff --git a/forge-gui/res/cardsfolder/c/cactus_preserve.txt b/forge-gui/res/cardsfolder/c/cactus_preserve.txt index f09a72065c9..c86dbb74858 100644 --- a/forge-gui/res/cardsfolder/c/cactus_preserve.txt +++ b/forge-gui/res/cardsfolder/c/cactus_preserve.txt @@ -1,6 +1,6 @@ Name:Cactus Preserve -Types:Land Desert ManaCost:no cost +Types:Land Desert R:Event$ Moved | ValidCard$ Card.Self | Destination$ Battlefield | ReplacementResult$ Updated | ReplaceWith$ ETBTapped | Description$ CARDNAME enters tapped. SVar:ETBTapped:DB$ Tap | Defined$ Self | ETB$ True A:AB$ ManaReflected | Cost$ T | ColorOrType$ Type | Valid$ Land.YouCtrl | ReflectProperty$ Produce | SpellDescription$ Add one mana of any type that a land you control could produce. diff --git a/forge-gui/res/cardsfolder/c/call_the_coppercoats.txt b/forge-gui/res/cardsfolder/c/call_the_coppercoats.txt index 873b1ae79ca..4d667a25b5f 100644 --- a/forge-gui/res/cardsfolder/c/call_the_coppercoats.txt +++ b/forge-gui/res/cardsfolder/c/call_the_coppercoats.txt @@ -5,6 +5,6 @@ K:Strive:1 W A:SP$ Token | TokenAmount$ X | TokenScript$ w_1_1_human_soldier | TokenOwner$ You | ValidTgts$ Opponent | TargetMin$ 0 | TargetMax$ MaxTargets | TgtPrompt$ Choose any number of target opponents | SpellDescription$ Choose any number of target opponents. Create X 1/1 white Human Soldier creature tokens, where X is the number of creatures those opponents control. SVar:MaxTargets:PlayerCountOpponents$Amount SVar:X:Count$Valid Creature.TargetedPlayerCtrl -DeckHas:Ability$Token AI:RemoveDeck:All +DeckHas:Ability$Token Oracle:Strive — This spell costs {1}{W} more to cast for each target beyond the first.\nChoose any number of target opponents. Create X 1/1 white Human Soldier creature tokens, where X is the number of creatures those opponents control. diff --git a/forge-gui/res/cardsfolder/c/cankerbloom.txt b/forge-gui/res/cardsfolder/c/cankerbloom.txt index 09225275d33..d7dcdaea9bb 100644 --- a/forge-gui/res/cardsfolder/c/cankerbloom.txt +++ b/forge-gui/res/cardsfolder/c/cankerbloom.txt @@ -6,7 +6,7 @@ A:AB$ Charm | Cost$ 1 Sac<1/CARDNAME> | Choices$ Artifact,Enchantment,Proliferat SVar:Artifact:DB$ Destroy | ValidTgts$ Artifact | SpellDescription$ Destroy target artifact. SVar:Enchantment:DB$ Destroy | ValidTgts$ Enchantment | SpellDescription$ Destroy target enchantment. SVar:Proliferate:DB$ Proliferate | SpellDescription$ Proliferate. (Choose any number of permanents and/or players, then give each another counter of each kind already there.) +AI:RemoveDeck:Random DeckHas:Ability$Sacrifice|Proliferate DeckHints:Ability$Counters -AI:RemoveDeck:Random Oracle:{1}, Sacrifice Cankerbloom: Choose one —\n• Destroy target artifact.\n• Destroy target enchantment.\n• Proliferate. (Choose any number of permanents and/or players, then give each another counter of each kind already there.) diff --git a/forge-gui/res/cardsfolder/c/case_of_the_pilfered_proof.txt b/forge-gui/res/cardsfolder/c/case_of_the_pilfered_proof.txt index 8d86f85a8ef..a77904707fd 100644 --- a/forge-gui/res/cardsfolder/c/case_of_the_pilfered_proof.txt +++ b/forge-gui/res/cardsfolder/c/case_of_the_pilfered_proof.txt @@ -8,7 +8,7 @@ T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefiel SVar:Solved:DB$ AlterAttribute | Defined$ Self | Attributes$ Solved R:Event$ CreateToken | IsPresent$ Card.Self+IsSolved | ActiveZones$ Battlefield | ValidToken$ Card.YouCtrl | ReplaceWith$ DBReplace | Description$ Solved – If one or more tokens would be created under your control, those tokens plus a Clue token are created instead. (It's an artifact with "{2}, Sacrifice this artifact: Draw a card.") SVar:DBReplace:DB$ ReplaceToken | Type$ AddToken | Amount$ 1 | ValidCard$ Card.YouCtrl | TokenScript$ c_a_clue_draw -DeckNeeds:Type$Detective DeckHas:Ability$Counters|Token|Sacrifice & Type$Artifact|Clue DeckHints:Ability$Token +DeckNeeds:Type$Detective Oracle:Whenever a Detective you control enters and whenever a Detective you control is turned face up, put a +1/+1 counter on it.\nTo solve – You control three or more Detectives. (If unsolved, solve at the beginning of your end step.)\nSolved – If one or more tokens would be created under your control, those tokens plus a Clue token are created instead. (It's an artifact with "{2}, Sacrifice this artifact: Draw a card.") diff --git a/forge-gui/res/cardsfolder/c/cave_of_temptation.txt b/forge-gui/res/cardsfolder/c/cave_of_temptation.txt index dc6e182c50f..4be16d7f064 100644 --- a/forge-gui/res/cardsfolder/c/cave_of_temptation.txt +++ b/forge-gui/res/cardsfolder/c/cave_of_temptation.txt @@ -4,6 +4,6 @@ Types:Land A:AB$ Mana | Cost$ T | Produced$ C | SpellDescription$ Add {C}. A:AB$ Mana | Cost$ 1 T | Produced$ Any | SpellDescription$ Add one mana of any color. A:AB$ PutCounter | Cost$ 4 T Sac<1/CARDNAME> | ValidTgts$ Creature | TgtPrompt$ Select target creature | CounterType$ P1P1 | CounterNum$ 2 | SorcerySpeed$ True | SpellDescription$ Put two +1/+1 counters on target creature. Activate only as a sorcery. -DeckHas:Ability$Counters AI:RemoveDeck:All +DeckHas:Ability$Counters Oracle:{T}: Add {C}.\n{1}, {T}: Add one mana of any color.\n{4}, {T}, Sacrifice Cave of Temptation: Put two +1/+1 counters on target creature. Activate only as a sorcery. diff --git a/forge-gui/res/cardsfolder/c/celestial_kirin.txt b/forge-gui/res/cardsfolder/c/celestial_kirin.txt index 0887b8c9fa4..f0b74733973 100644 --- a/forge-gui/res/cardsfolder/c/celestial_kirin.txt +++ b/forge-gui/res/cardsfolder/c/celestial_kirin.txt @@ -7,6 +7,6 @@ T:Mode$ SpellCast | ValidCard$ Spirit,Arcane | ValidActivatingPlayer$ You | Trig SVar:TrigDestroyAll:DB$ DestroyAll | ValidCards$ Permanent.cmcEQX SVar:X:TriggeredStackInstance$CardManaCostLKI AI:RemoveDeck:All -DeckHints:Type$Spirit|Arcane AI:RemoveDeck:Random +DeckHints:Type$Spirit|Arcane Oracle:Flying\nWhenever you cast a Spirit or Arcane spell, destroy all permanents with that spell's mana value. diff --git a/forge-gui/res/cardsfolder/c/clan_crafter.txt b/forge-gui/res/cardsfolder/c/clan_crafter.txt index 749d7f5f53f..15a67c52df2 100644 --- a/forge-gui/res/cardsfolder/c/clan_crafter.txt +++ b/forge-gui/res/cardsfolder/c/clan_crafter.txt @@ -5,7 +5,7 @@ S:Mode$ Continuous | Affected$ Creature.IsCommander+YouOwn | AddAbility$ SacArt SVar:SacArt:AB$ PutCounter | Cost$ 2 Sac<1/Artifact> | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBDraw | SpellDescription$ Put a +1/+1 counter on this creature and draw a card. SVar:DBDraw:DB$ Draw | Defined$ You | NumCards$ 1 SVar:BuffedBy:Artifact +AI:RemoveDeck:NonCommander DeckHints:Type$Artifact DeckHas:Ability$Sacrifice|Counters -AI:RemoveDeck:NonCommander Oracle:Commander creatures you own have "{2}, Sacrifice an artifact: Put a +1/+1 counter on this creature and draw a card." diff --git a/forge-gui/res/cardsfolder/c/cloakwood_hermit.txt b/forge-gui/res/cardsfolder/c/cloakwood_hermit.txt index 1c3995feee2..f63f06e3f35 100644 --- a/forge-gui/res/cardsfolder/c/cloakwood_hermit.txt +++ b/forge-gui/res/cardsfolder/c/cloakwood_hermit.txt @@ -5,7 +5,7 @@ S:Mode$ Continuous | Affected$ Creature.IsCommander+YouOwn | AddTrigger$ EndStep SVar:EndStep:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | CheckSVar$ X | Execute$ TrigToken | TriggerDescription$ At the beginning of your end step, if a creature card was put into your graveyard from anywhere this turn, create two tapped 1/1 green Squirrel creature tokens. SVar:TrigToken:DB$ Token | TokenAmount$ 2 | TokenScript$ g_1_1_squirrel | TokenTapped$ True SVar:X:Count$ThisTurnEntered_Graveyard_Creature.YouOwn+nonToken +AI:RemoveDeck:NonCommander DeckHas:Ability$Token & Type$Squirrel DeckHints:Ability$Discard|Sacrifice -AI:RemoveDeck:NonCommander Oracle:Commander creatures you own have "At the beginning of your end step, if a creature card was put into your graveyard from anywhere this turn, create two tapped 1/1 green Squirrel creature tokens." diff --git a/forge-gui/res/cardsfolder/c/clown_extruder.txt b/forge-gui/res/cardsfolder/c/clown_extruder.txt index 11bf7b853c4..73884904a5a 100644 --- a/forge-gui/res/cardsfolder/c/clown_extruder.txt +++ b/forge-gui/res/cardsfolder/c/clown_extruder.txt @@ -1,10 +1,13 @@ Name:Clown Extruder ManaCost:no cost Types:Artifact Attraction +K:Visit:TrigToken +SVar:TrigToken:DB$ Token | TokenScript$ w_1_1_a_clown_robot | TokenOwner$ You | SpellDescription$ Create a 1/1 white Clown Robot artifact creature token. +Oracle:Visit — Create a 1/1 white Clown Robot artifact creature token. + +# --- VARIANTS --- + Variant:A:Lights:2 6 Variant:B:Lights:3 6 Variant:C:Lights:4 6 Variant:D:Lights:5 6 -K:Visit:TrigToken -SVar:TrigToken:DB$ Token | TokenScript$ w_1_1_a_clown_robot | TokenOwner$ You | SpellDescription$ Create a 1/1 white Clown Robot artifact creature token. -Oracle:Visit — Create a 1/1 white Clown Robot artifact creature token. diff --git a/forge-gui/res/cardsfolder/c/codsworth_handy_helper.txt b/forge-gui/res/cardsfolder/c/codsworth_handy_helper.txt index 13de6da4171..42c0ffef3c4 100644 --- a/forge-gui/res/cardsfolder/c/codsworth_handy_helper.txt +++ b/forge-gui/res/cardsfolder/c/codsworth_handy_helper.txt @@ -6,6 +6,6 @@ S:Mode$ Continuous | Affected$ Card.IsCommander+YouCtrl | AddKeyword$ Ward:2 | D A:AB$ Mana | Cost$ T | Produced$ W | RestrictValid$ Spell.Aura,Spell.Equipment | Amount$ 2 | SpellDescription$ Add {W}{W}. Spend this mana only to cast Aura and/or Equipment spells. A:AB$ Pump | Cost$ T | ValidTgts$ Aura.YouCtrl,Equipment.YouCtrl | TgtPrompt$ Select target Aura or Equipment you control | SubAbility$ DBAttach | SorcerySpeed$ True | SpellDescription$ Attach target Aura or Equipment you control to target creature you control. Activate only as a sorcery. SVar:DBAttach:DB$ Attach | Object$ ParentTarget | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control. -DeckNeeds:Type$Aura|Equipment AI:RemoveDeck:NonCommander +DeckNeeds:Type$Aura|Equipment Oracle:Commanders you control have ward {2}.\n{T}: Add {W}{W}. Spend this mana only to cast Aura and/or Equipment spells.\n{T}: Attach target Aura or Equipment you control to target creature you control. Activate only as a sorcery. diff --git a/forge-gui/res/cardsfolder/c/concession_stand.txt b/forge-gui/res/cardsfolder/c/concession_stand.txt index 31561c22bfe..57894b16a81 100644 --- a/forge-gui/res/cardsfolder/c/concession_stand.txt +++ b/forge-gui/res/cardsfolder/c/concession_stand.txt @@ -1,10 +1,13 @@ Name:Concession Stand ManaCost:no cost Types:Artifact Attraction +K:Visit:TrigFood +SVar:TrigFood:DB$ Token | TokenScript$ c_a_food_sac | TokenOwner$ You | SpellDescription$ Create a Food token. +Oracle:Visit — Create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.") + +# --- VARIANTS --- + Variant:A:Lights:2 6 Variant:B:Lights:3 6 Variant:C:Lights:4 6 Variant:D:Lights:5 6 -K:Visit:TrigFood -SVar:TrigFood:DB$ Token | TokenScript$ c_a_food_sac | TokenOwner$ You | SpellDescription$ Create a Food token. -Oracle:Visit — Create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.") diff --git a/forge-gui/res/cardsfolder/c/contraband_livestock.txt b/forge-gui/res/cardsfolder/c/contraband_livestock.txt index 21b4fec0748..8bc659ae308 100644 --- a/forge-gui/res/cardsfolder/c/contraband_livestock.txt +++ b/forge-gui/res/cardsfolder/c/contraband_livestock.txt @@ -6,6 +6,6 @@ SVar:DBRollDice:DB$ RollDice | Sides$ 20 | ResultSubAbilities$ 1-9:GreenOx,10-19 SVar:GreenOx:DB$ Token | TokenAmount$ 1 | TokenScript$ g_4_4_ox | TokenOwner$ TargetedController | SpellDescription$ 1-9 VERT Its controller creates a 4/4 green Ox creature token. SVar:GreenBoar:DB$ Token | TokenAmount$ 1 | TokenScript$ g_2_2_boar | TokenOwner$ TargetedController | SpellDescription$ 10-19 VERT Its controller creates a 2/2 green Boar creature token. SVar:WhiteGoat:DB$ Token | TokenAmount$ 1 | TokenScript$ w_0_1_goat | TokenOwner$ TargetedController | SpellDescription$ 20 VERT Its controller creates a 0/1 white Goat creature token. -DeckHas:Ability$Token AI:RemoveDeck:All +DeckHas:Ability$Token Oracle:Exile target creature, then roll a d20.\n1-9 | Its controller creates a 4/4 green Ox creature token.\n10-19 | Its controller creates a 2/2 green Boar creature token.\n20 | Its controller creates a 0/1 white Goat creature token. diff --git a/forge-gui/res/cardsfolder/c/cornered_crook.txt b/forge-gui/res/cardsfolder/c/cornered_crook.txt index c1397c937af..e97bbd4b5dc 100644 --- a/forge-gui/res/cardsfolder/c/cornered_crook.txt +++ b/forge-gui/res/cardsfolder/c/cornered_crook.txt @@ -5,7 +5,7 @@ PT:5/4 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | OptionalDecider$ You | Execute$ TrigImmediateTrig | TriggerDescription$ When CARDNAME enters, you may sacrifice an artifact. When you do, CARDNAME deals 3 damage to any target. SVar:TrigImmediateTrig:AB$ ImmediateTrigger | Cost$ Sac<1/Artifact> | Execute$ TrigDamage | SpellDescription$ When you do, CARDNAME deals 3 damage to any target. SVar:TrigDamage:DB$ DealDamage | NumDmg$ 3 | ValidTgts$ Any +AI:RemoveDeck:Random DeckNeeds:Type$Artifact DeckHas:Ability$Sacrifice -AI:RemoveDeck:Random Oracle:When Cornered Crook enters, you may sacrifice an artifact. When you do, Cornered Crook deals 3 damage to any target. diff --git a/forge-gui/res/cardsfolder/c/criminal_past.txt b/forge-gui/res/cardsfolder/c/criminal_past.txt index cc76fb6d6e0..d689e0004db 100644 --- a/forge-gui/res/cardsfolder/c/criminal_past.txt +++ b/forge-gui/res/cardsfolder/c/criminal_past.txt @@ -4,7 +4,7 @@ Types:Legendary Enchantment Background S:Mode$ Continuous | Affected$ Creature.IsCommander+YouOwn | AddKeyword$ Menace | AddStaticAbility$ PowerGrave | Description$ Commander creatures you own have menace and "This creature gets +X/+0, where X is the number of creature cards in your graveyard." (A creature with menace can't be blocked except by two or more creatures.) SVar:PowerGrave:Mode$ Continuous | Affected$ Card.Self | AddPower$ X | This creature gets +X/+0, where X is the number of creature cards in your graveyard. SVar:X:Count$TypeInYourYard.Creature +AI:RemoveDeck:NonCommander DeckHints:Ability$Discard|Mill|Sacrifice DeckHas:Ability$Graveyard -AI:RemoveDeck:NonCommander Oracle:Commander creatures you own have menace and "This creature gets +X/+0, where X is the number of creature cards in your graveyard." (A creature with menace can't be blocked except by two or more creatures.) diff --git a/forge-gui/res/cardsfolder/c/cryptbreaker.txt b/forge-gui/res/cardsfolder/c/cryptbreaker.txt index b2bc3706646..e5adbf91f57 100644 --- a/forge-gui/res/cardsfolder/c/cryptbreaker.txt +++ b/forge-gui/res/cardsfolder/c/cryptbreaker.txt @@ -6,7 +6,7 @@ A:AB$ Token | Cost$ 1 B T Discard<1/Card> | TokenAmount$ 1 | TokenScript$ b_2_2_ A:AB$ Draw | Cost$ tapXType<3/Zombie> | NumCards$ 1 | AILogic$ AtOppEOT | SpellDescription$ You draw a card and you lose 1 life. | SubAbility$ DBLoseLife SVar:DBLoseLife:DB$ LoseLife | LifeAmount$ 1 SVar:AIPreference:DiscardCost$Card +AI:RemoveDeck:Random DeckNeeds:Type$Zombie DeckHas:Ability$Token -AI:RemoveDeck:Random Oracle:{1}{B}, {T}, Discard a card: Create a 2/2 black Zombie creature token.\nTap three untapped Zombies you control: You draw a card and you lose 1 life. diff --git a/forge-gui/res/cardsfolder/c/cultist_of_the_absolute.txt b/forge-gui/res/cardsfolder/c/cultist_of_the_absolute.txt index 52adb6ade2a..eb76a556c97 100644 --- a/forge-gui/res/cardsfolder/c/cultist_of_the_absolute.txt +++ b/forge-gui/res/cardsfolder/c/cultist_of_the_absolute.txt @@ -5,6 +5,6 @@ S:Mode$ Continuous | Affected$ Creature.IsCommander+YouOwn | AddPower$ 3 | AddTo SVar:UpkeepSac:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigSac | TriggerDescription$ At the beginning of your upkeep, sacrifice a creature. SVar:TrigSac:DB$ Sacrifice | Defined$ You | SacValid$ Creature SVar:PlayMain1:TRUE -DeckHas:Ability$Sacrifice AI:RemoveDeck:NonCommander +DeckHas:Ability$Sacrifice Oracle:Commander creatures you own get +3/+3 and have flying, deathtouch, "Ward—Pay 3 life," and "At the beginning of your upkeep, sacrifice a creature." diff --git a/forge-gui/res/cardsfolder/c/curse_artifact.txt b/forge-gui/res/cardsfolder/c/curse_artifact.txt index 98104f254aa..81cda75bb43 100644 --- a/forge-gui/res/cardsfolder/c/curse_artifact.txt +++ b/forge-gui/res/cardsfolder/c/curse_artifact.txt @@ -7,6 +7,6 @@ T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | Execut SVar:TrigCurseArtifactSacrifice:DB$ Sacrifice | Defined$ TriggeredPlayer | SacValid$ Artifact.EnchantedBy | Optional$ True | RememberSacrificed$ True | SubAbility$ DBCurseArtifactDamage SVar:DBCurseArtifactDamage:DB$ DealDamage | Defined$ TriggeredPlayer | NumDmg$ 2 | ConditionDefined$ Remembered | ConditionPresent$ Card | ConditionCompare$ EQ0 | SubAbility$ DBCurseArtifactCleanup SVar:DBCurseArtifactCleanup:DB$ Cleanup | ClearRemembered$ True -DeckHas:Ability$Sacrifice AI:RemoveDeck:Random +DeckHas:Ability$Sacrifice Oracle:Enchant artifact\nAt the beginning of the upkeep of enchanted artifact's controller, Curse Artifact deals 2 damage to that player unless they sacrifice that artifact. diff --git a/forge-gui/res/cardsfolder/d/dark_temper.txt b/forge-gui/res/cardsfolder/d/dark_temper.txt index 7c59e479d9c..6be8357efa3 100644 --- a/forge-gui/res/cardsfolder/d/dark_temper.txt +++ b/forge-gui/res/cardsfolder/d/dark_temper.txt @@ -3,6 +3,6 @@ ManaCost:2 R Types:Instant A:SP$ DealDamage | ValidTgts$ Creature | NumDmg$ 2 | SubAbility$ DBDestroy | ConditionPresent$ Permanent.Black+YouCtrl | ConditionCompare$ EQ0 | SpellDescription$ CARDNAME deals 2 damage to target creature. If you control a black permanent, destroy the creature instead. SVar:DBDestroy:DB$ Destroy | Defined$ Targeted | ConditionPresent$ Permanent.Black+YouCtrl | ConditionCompare$ GE1 | ConditionDescription$ If you control a black permanent, -DeckHints:Color$Black AI:RemoveDeck:Random +DeckHints:Color$Black Oracle:Dark Temper deals 2 damage to target creature. If you control a black permanent, destroy the creature instead. diff --git a/forge-gui/res/cardsfolder/d/deal_broker.txt b/forge-gui/res/cardsfolder/d/deal_broker.txt index b3c235a0393..059e0aa7246 100644 --- a/forge-gui/res/cardsfolder/d/deal_broker.txt +++ b/forge-gui/res/cardsfolder/d/deal_broker.txt @@ -1,7 +1,7 @@ Name:Deal Broker ManaCost:3 -PT:2/3 Types:Artifact Creature Construct +PT:2/3 Draft:Draft CARDNAME face up. Draft:Immediately after the draft, you may reveal a card in your card pool. Each other player may offer you one card in their card pool in exchange. You may accept any one offer. A:AB$ Draw | Cost$ T | Defined$ You | NumCards$ 1 | SubAbility$ Discard | SpellDescription$ Draw a card, then discard a card. diff --git a/forge-gui/res/cardsfolder/d/deeproot_pilgrimage.txt b/forge-gui/res/cardsfolder/d/deeproot_pilgrimage.txt index 34876a2cc05..6b305d5b2e4 100644 --- a/forge-gui/res/cardsfolder/d/deeproot_pilgrimage.txt +++ b/forge-gui/res/cardsfolder/d/deeproot_pilgrimage.txt @@ -3,7 +3,7 @@ ManaCost:1 U Types:Enchantment T:Mode$ TapAll | ValidCards$ Merfolk.nonToken+YouCtrl | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Whenever one or more nontoken Merfolk you control become tapped, create a 1/1 blue Merfolk creature token with hexproof. SVar:TrigToken:DB$ Token | TokenScript$ u_1_1_merfolk_hexproof -DeckHas:Ability$Token & Type$Merfolk AI:RemoveDeck:Random +DeckHas:Ability$Token & Type$Merfolk DeckNeeds:Type$Merfolk Oracle:Whenever one or more nontoken Merfolk you control become tapped, create a 1/1 blue Merfolk creature token with hexproof. diff --git a/forge-gui/res/cardsfolder/d/deeproot_waters.txt b/forge-gui/res/cardsfolder/d/deeproot_waters.txt index 633524e12b5..8af53b7c744 100644 --- a/forge-gui/res/cardsfolder/d/deeproot_waters.txt +++ b/forge-gui/res/cardsfolder/d/deeproot_waters.txt @@ -3,7 +3,7 @@ ManaCost:2 U Types:Enchantment T:Mode$ SpellCast | ValidCard$ Merfolk | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Whenever you cast a Merfolk spell, create a 1/1 blue Merfolk creature token with hexproof. (A creature with hexproof can't be the target of spells or abilities your opponents control.) SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ u_1_1_merfolk_hexproof | TokenOwner$ You -DeckHas:Ability$Token AI:RemoveDeck:Random +DeckHas:Ability$Token DeckNeeds:Type$Merfolk Oracle:Whenever you cast a Merfolk spell, create a 1/1 blue Merfolk creature token with hexproof. (A creature with hexproof can't be the target of spells or abilities your opponents control.) diff --git a/forge-gui/res/cardsfolder/d/dire_flail_dire_blunderbuss.txt b/forge-gui/res/cardsfolder/d/dire_flail_dire_blunderbuss.txt index a1b4fbf4b5d..e5823a6b5ca 100644 --- a/forge-gui/res/cardsfolder/d/dire_flail_dire_blunderbuss.txt +++ b/forge-gui/res/cardsfolder/d/dire_flail_dire_blunderbuss.txt @@ -12,6 +12,7 @@ Oracle:Equipped creature gets +2/+0.\nEquip {1}\nCraft with artifact {3}{R}{R} ( ALTERNATE Name:Dire Blunderbuss +ManaCost:no cost Colors:red Types:Artifact Equipment S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddPower$ 3 | AddTrigger$ AttacksTrig | Description$ Equipped creature gets +3/+0 and has "Whenever this creature attacks, you may sacrifice an artifact other than CARDNAME. When you do, this creature deals damage equal to its power to target creature." diff --git a/forge-gui/res/cardsfolder/d/disa_the_restless.txt b/forge-gui/res/cardsfolder/d/disa_the_restless.txt index e6bf5818472..25f688acc5d 100644 --- a/forge-gui/res/cardsfolder/d/disa_the_restless.txt +++ b/forge-gui/res/cardsfolder/d/disa_the_restless.txt @@ -6,7 +6,7 @@ T:Mode$ ChangesZone | ValidCard$ Permanent.Lhurgoyf+YouOwn | Origin$ Library,Han SVar:TrigChangeZone:DB$ ChangeZone | Defined$ TriggeredCard | Origin$ Graveyard | Destination$ Battlefield T:Mode$ DamageDoneOnce | ValidSource$ Creature.YouCtrl | TriggerZones$ Battlefield | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigToken | TriggerDescription$ Whenever one or more creatures you control deal combat damage to a player, create a Tarmogoyf token. (It's a {1}{G} Lhurgoyf creature with "Tarmogoyf's power is equal to the number of card types among cards in all graveyards and its toughness is equal to that number plus 1.") SVar:TrigToken:DB$ CopyPermanent | DefinedName$ Tarmogoyf -DeckNeeds:Type$Lhurgoyf DeckHas:Ability$Token & Type$Lhurgoyf DeckHints:Ability$Mill +DeckNeeds:Type$Lhurgoyf Oracle:Whenever a Lhurgoyf permanent card is put into your graveyard from anywhere other than the battlefield, put it onto the battlefield.\nWhenever one or more creatures you control deal combat damage to a player, create a Tarmogoyf token. (It's a {1}{G} Lhurgoyf creature with "Tarmogoyf's power is equal to the number of card types among cards in all graveyards and its toughness is equal to that number plus 1.") diff --git a/forge-gui/res/cardsfolder/d/disciple_of_bolas.txt b/forge-gui/res/cardsfolder/d/disciple_of_bolas.txt index 558a223eb86..ae6889708e2 100644 --- a/forge-gui/res/cardsfolder/d/disciple_of_bolas.txt +++ b/forge-gui/res/cardsfolder/d/disciple_of_bolas.txt @@ -9,6 +9,6 @@ SVar:DBDraw:DB$ Draw | NumCards$ X | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:RememberedLKI$CardPower SVar:NeedsToPlay:Creature.YouCtrl -DeckHas:Ability$LifeGain AI:RemoveDeck:All +DeckHas:Ability$LifeGain Oracle:When Disciple of Bolas enters, sacrifice another creature. You gain X life and draw X cards, where X is that creature's power. diff --git a/forge-gui/res/cardsfolder/d/doomsday_confluence.txt b/forge-gui/res/cardsfolder/d/doomsday_confluence.txt index 2040d85a7b9..1c05b568ff2 100644 --- a/forge-gui/res/cardsfolder/d/doomsday_confluence.txt +++ b/forge-gui/res/cardsfolder/d/doomsday_confluence.txt @@ -6,6 +6,6 @@ SVar:DBSac:DB$ Sacrifice | Defined$ Player | SacValid$ Creature.nonArtifact | Sp SVar:DBToken:DB$ Token | TokenScript$ b_3_3_a_dalek_menace | SpellDescription$ Create a 3/3 black Dalek artifact creature token with menace. SVar:DBDiscard:DB$ Discard | Defined$ Opponent | Mode$ TgtChoose | SpellDescription$ Each opponent discards a card. SVar:X:Count$xPaid -DeckHas:Ability$Sacrifice|Token|Discard & Type$Artifact|Dalek AI:RemoveDeck:All +DeckHas:Ability$Sacrifice|Token|Discard & Type$Artifact|Dalek Oracle:Choose X. You may choose the same mode more than once.\n• Each player sacrifices a nonartifact creature.\n• Create a 3/3 black Dalek artifact creature token with menace.\n• Each opponent discards a card. diff --git a/forge-gui/res/cardsfolder/d/dragon_cultist.txt b/forge-gui/res/cardsfolder/d/dragon_cultist.txt index e46bd1c639d..3f9931d5a87 100644 --- a/forge-gui/res/cardsfolder/d/dragon_cultist.txt +++ b/forge-gui/res/cardsfolder/d/dragon_cultist.txt @@ -4,6 +4,6 @@ Types:Legendary Enchantment Background S:Mode$ Continuous | Affected$ Creature.IsCommander+YouOwn | AddTrigger$ TrigDragon | Description$ Commander creatures you own have "At the beginning of your end step, if a source you controlled dealt 5 or more damage this turn, create a 4/4 red Dragon creature token with flying." SVar:TrigDragon:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | CheckDefinedPlayer$ You.damageDoneSingleSource GE5 | Execute$ DBDragon | TriggerDescription$ At the beginning of your end step, if a source you controlled dealt 5 or more damage this turn, create a 4/4 red Dragon creature token with flying. SVar:DBDragon:DB$ Token | TokenScript$ r_4_4_dragon_flying -DeckHas:Ability$Token & Type$Dragon AI:RemoveDeck:NonCommander +DeckHas:Ability$Token & Type$Dragon Oracle:Commander creatures you own have "At the beginning of your end step, if a source you controlled dealt 5 or more damage this turn, create a 4/4 red Dragon creature token with flying." diff --git a/forge-gui/res/cardsfolder/d/dredging_claw.txt b/forge-gui/res/cardsfolder/d/dredging_claw.txt index d07fe6ed11b..a567d54ba25 100644 --- a/forge-gui/res/cardsfolder/d/dredging_claw.txt +++ b/forge-gui/res/cardsfolder/d/dredging_claw.txt @@ -7,6 +7,6 @@ SVar:TrigAttach:DB$ Attach | Defined$ TriggeredCard K:Equip:1 B AI:RemoveDeck:Random DeckHas:Keyword$Menace -DeckNeeds:Color$Black DeckHints:Ability$Graveyard +DeckNeeds:Color$Black Oracle:Equipped creature gets +1/+0 and has menace. (It's can't be blocked except by two or more creatures.)\nWhenever a creature enters from your graveyard, you may attach Dredging Claw to it.\nEquip {1}{B} ({1}{B}: Attach to target creature you control. Equip only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/d/drop_of_honey.txt b/forge-gui/res/cardsfolder/d/drop_of_honey.txt index ab57ed6fb6a..258490709c9 100644 --- a/forge-gui/res/cardsfolder/d/drop_of_honey.txt +++ b/forge-gui/res/cardsfolder/d/drop_of_honey.txt @@ -7,6 +7,6 @@ SVar:DBDestroy:DB$ Destroy | Defined$ ChosenCard | NoRegen$ True T:Mode$ Always | TriggerZones$ Battlefield | IsPresent$ Creature | PresentCompare$ EQ0 | Execute$ TrigSac | TriggerDescription$ When there are no creatures on the battlefield, sacrifice CARDNAME. SVar:TrigSac:DB$ Sacrifice SVar:NeedsToPlay:Creature.YouDontCtrl+leastPower -DeckHas:Ability$Sacrifice AI:RemoveDeck:All +DeckHas:Ability$Sacrifice Oracle:At the beginning of your upkeep, destroy the creature with the least power. It can't be regenerated. If two or more creatures are tied for least power, you choose one of them.\nWhen there are no creatures on the battlefield, sacrifice Drop of Honey. diff --git a/forge-gui/res/cardsfolder/d/drop_tower.txt b/forge-gui/res/cardsfolder/d/drop_tower.txt index c00f4b335e5..ed5b5ada6db 100644 --- a/forge-gui/res/cardsfolder/d/drop_tower.txt +++ b/forge-gui/res/cardsfolder/d/drop_tower.txt @@ -1,15 +1,18 @@ Name:Drop Tower ManaCost:no cost Types:Artifact Attraction +K:Visit:TrigPump +SVar:TrigPump:DB$ Effect | StaticAbilities$ Pump | ValidTgts$ Creature | Triggers$ ExileSelf | RememberObjects$ Targeted | SpellDescription$ Target creature gains flying until end of turn, or until any player rolls a 1, whichever comes first. +SVar:Pump:Mode$ Continuous | Affected$ Card.IsRemembered | AddKeyword$ Flying | Description$ This creature gains flying until end of turn, or until any player rolls a 1. +SVar:ExileSelf:Mode$ RolledDie | Execute$ TrigRemove | ValidResult$ EQ1 | Static$ True +SVar:TrigRemove:DB$ ChangeZone | Origin$ Command | Defined$ Self | Destination$ Exiled +Oracle:Visit — Target creature gains flying until end of turn, or until any player rolls a 1, whichever comes first. + +# --- VARIANTS --- + Variant:A:Lights:2 3 6 Variant:B:Lights:2 4 6 Variant:C:Lights:2 5 6 Variant:D:Lights:3 4 6 Variant:E:Lights:3 5 6 Variant:F:Lights:4 5 6 -K:Visit:TrigPump -SVar:TrigPump:DB$ Effect | StaticAbilities$ Pump | ValidTgts$ Creature | Triggers$ ExileSelf | RememberObjects$ Targeted | SpellDescription$ Target creature gains flying until end of turn, or until any player rolls a 1, whichever comes first. -SVar:Pump:Mode$ Continuous | Affected$ Card.IsRemembered | AddKeyword$ Flying | Description$ This creature gains flying until end of turn, or until any player rolls a 1. -SVar:ExileSelf:Mode$ RolledDie | Execute$ TrigRemove | ValidResult$ EQ1 | Static$ True -SVar:TrigRemove:DB$ ChangeZone | Origin$ Command | Defined$ Self | Destination$ Exile -Oracle:Visit — Target creature gains flying until end of turn, or until any player rolls a 1, whichever comes first. diff --git a/forge-gui/res/cardsfolder/d/drown_in_filth.txt b/forge-gui/res/cardsfolder/d/drown_in_filth.txt index af594f94ea6..1e2c0a40386 100644 --- a/forge-gui/res/cardsfolder/d/drown_in_filth.txt +++ b/forge-gui/res/cardsfolder/d/drown_in_filth.txt @@ -4,6 +4,6 @@ Types:Sorcery A:SP$ Mill | NumCards$ 4 | Defined$ You | SubAbility$ DBPump | SpellDescription$ Choose target creature. Mill four cards, then that creature gets -1/-1 until end of turn for each land card in your graveyard. SVar:DBPump:DB$ Pump | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumAtt$ -X | NumDef$ -X | IsCurse$ True SVar:X:Count$ValidGraveyard Land.YouOwn -DeckHas:Ability$Graveyard AI:RemoveDeck:All +DeckHas:Ability$Graveyard Oracle:Choose target creature. Mill four cards, then that creature gets -1/-1 until end of turn for each land card in your graveyard. From f91a2dbf58b44d3ebd8613355680d270128ae834 Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 09:29:20 +0100 Subject: [PATCH 10/91] Edit pile cleanup: Line reordering, first pass: part 2, folders 'e' to 'n' --- forge-gui/res/cardsfolder/e/earthbrawn.txt | 2 +- forge-gui/res/cardsfolder/e/elemental_eruption.txt | 2 +- forge-gui/res/cardsfolder/e/elven_ambush.txt | 2 +- forge-gui/res/cardsfolder/e/embrace_the_unknown.txt | 2 +- forge-gui/res/cardsfolder/e/emrakul's messenger.txt | 2 +- forge-gui/res/cardsfolder/e/emrakuls_influence.txt | 2 +- forge-gui/res/cardsfolder/e/ensoul_artifact.txt | 2 +- forge-gui/res/cardsfolder/e/esix_fractal_bloom.txt | 2 +- forge-gui/res/cardsfolder/e/everythingamajig.txt | 7 +++++-- forge-gui/res/cardsfolder/e/evolution_vat.txt | 2 +- forge-gui/res/cardsfolder/e/evolving_door.txt | 2 +- .../e/eye_of_ojer_taq_apex_observatory.txt | 2 +- forge-gui/res/cardsfolder/f/fabrication_foundry.txt | 2 +- forge-gui/res/cardsfolder/f/fasting.txt | 2 +- forge-gui/res/cardsfolder/f/feywild_visitor.txt | 2 +- forge-gui/res/cardsfolder/f/fire_giants_fury.txt | 2 +- forge-gui/res/cardsfolder/f/firecat_blitz.txt | 4 ++-- forge-gui/res/cardsfolder/f/flash_conscription.txt | 2 +- forge-gui/res/cardsfolder/f/foam_weapons_kiosk.txt | 11 +++++++---- forge-gui/res/cardsfolder/f/font_of_magic.txt | 2 +- .../res/cardsfolder/f/forerunner_of_the_heralds.txt | 2 +- forge-gui/res/cardsfolder/f/fortune_teller.txt | 9 ++++++--- forge-gui/res/cardsfolder/f/frankensteins_monster.txt | 2 +- forge-gui/res/cardsfolder/g/garbage_elemental.txt | 10 ++++++++-- forge-gui/res/cardsfolder/g/gate_hound.txt | 2 +- forge-gui/res/cardsfolder/g/gearbane_orangutan.txt | 2 +- forge-gui/res/cardsfolder/g/gilded_assault_cart.txt | 2 +- forge-gui/res/cardsfolder/g/guild_artisan.txt | 2 +- forge-gui/res/cardsfolder/h/hall_of_mirrors.txt | 7 +++++-- forge-gui/res/cardsfolder/h/halo_charged_skaab.txt | 2 +- forge-gui/res/cardsfolder/h/halo_forager.txt | 2 +- forge-gui/res/cardsfolder/h/haughty_djinn.txt | 4 ++-- forge-gui/res/cardsfolder/h/haunted_house.txt | 7 +++++-- forge-gui/res/cardsfolder/h/haunted_one.txt | 2 +- forge-gui/res/cardsfolder/h/hedron_alignment.txt | 2 +- forge-gui/res/cardsfolder/h/hells_caretaker.txt | 2 +- forge-gui/res/cardsfolder/h/hew_the_entwood.txt | 2 +- forge-gui/res/cardsfolder/h/hidden_path.txt | 2 +- forge-gui/res/cardsfolder/h/high_alert.txt | 2 +- forge-gui/res/cardsfolder/h/hobbits_sting.txt | 2 +- forge-gui/res/cardsfolder/i/ignite_the_beacon.txt | 2 +- forge-gui/res/cardsfolder/i/imposing_grandeur.txt | 2 +- forge-gui/res/cardsfolder/i/improbable_alliance.txt | 2 +- forge-gui/res/cardsfolder/i/infernal_genesis.txt | 2 +- forge-gui/res/cardsfolder/i/inferno_project.txt | 4 ++-- forge-gui/res/cardsfolder/i/information_booth.txt | 9 ++++++--- forge-gui/res/cardsfolder/i/innovative_metatect.txt | 2 +- forge-gui/res/cardsfolder/i/inspiring_leader.txt | 2 +- .../i/invasion_of_karsus_refraction_elemental.txt | 1 + forge-gui/res/cardsfolder/i/isu_the_abominable.txt | 2 +- forge-gui/res/cardsfolder/j/jackknight.txt | 2 +- .../cardsfolder/j/james_wandering_dad_follow_him.txt | 2 +- forge-gui/res/cardsfolder/j/jared_carthalion.txt | 2 +- forge-gui/res/cardsfolder/j/jeweled_lotus.txt | 2 +- .../res/cardsfolder/j/jinnie_fay_jetmirs_second.txt | 2 +- forge-gui/res/cardsfolder/j/jyoti_moag_ancient.txt | 2 +- forge-gui/res/cardsfolder/k/karsus_depthguard.txt | 2 +- .../k/kaslems_stonetree_kaslems_strider.txt | 3 +-- forge-gui/res/cardsfolder/k/katilda_and_lier.txt | 2 +- forge-gui/res/cardsfolder/k/kiddie_coaster.txt | 9 ++++++--- forge-gui/res/cardsfolder/k/kinsbaile_borderguard.txt | 2 +- .../res/cardsfolder/k/knowledge_exploitation.txt | 2 +- forge-gui/res/cardsfolder/k/kobolds_of_kher_keep.txt | 2 +- forge-gui/res/cardsfolder/k/kormus_bell.txt | 2 +- .../res/cardsfolder/k/kylox_visionary_inventor.txt | 2 +- forge-gui/res/cardsfolder/l/leonardo_da_vinci.txt | 2 +- forge-gui/res/cardsfolder/l/lifetap.txt | 2 +- forge-gui/res/cardsfolder/l/loathsome_catoblepas.txt | 2 +- forge-gui/res/cardsfolder/l/lore_seeker.txt | 2 +- forge-gui/res/cardsfolder/l/lowland_oaf.txt | 2 +- .../res/cardsfolder/l/lucas_the_sharpshooter.txt | 2 +- forge-gui/res/cardsfolder/l/lunar_convocation.txt | 2 +- forge-gui/res/cardsfolder/m/madcap_experiment.txt | 2 +- forge-gui/res/cardsfolder/m/magmatic_channeler.txt | 2 +- forge-gui/res/cardsfolder/m/maraleaf_rider.txt | 2 +- forge-gui/res/cardsfolder/m/merry_go_round.txt | 7 +++++-- .../res/cardsfolder/m/merry_warden_of_isengard.txt | 3 +-- forge-gui/res/cardsfolder/m/micromancer.txt | 2 +- forge-gui/res/cardsfolder/m/midnight_arsonist.txt | 4 ++-- forge-gui/res/cardsfolder/m/mimic_vat.txt | 2 +- forge-gui/res/cardsfolder/m/mines_of_moria.txt | 3 +-- .../mishra_claimed_by_gix_mishra_lost_to_phyrexia.txt | 2 +- forge-gui/res/cardsfolder/m/mishras_war_machine.txt | 2 +- forge-gui/res/cardsfolder/m/mishras_workshop.txt | 2 +- forge-gui/res/cardsfolder/m/moonsilver_key.txt | 2 +- forge-gui/res/cardsfolder/m/morgue_toad.txt | 2 +- forge-gui/res/cardsfolder/m/mortarpod.txt | 2 +- forge-gui/res/cardsfolder/m/muse_vortex.txt | 2 +- .../res/cardsfolder/n/nahiri_the_lithomancer.txt | 2 +- forge-gui/res/cardsfolder/n/nahiris_lithoforming.txt | 2 +- forge-gui/res/cardsfolder/n/nalfeshnee.txt | 2 +- forge-gui/res/cardsfolder/n/necroduality.txt | 2 +- forge-gui/res/cardsfolder/n/netherborn_altar.txt | 2 +- .../res/cardsfolder/n/niambi_beloved_protector.txt | 2 +- .../res/cardsfolder/n/nicanzil_current_conductor.txt | 2 +- forge-gui/res/cardsfolder/n/night_out_in_vegas.txt | 2 +- forge-gui/res/cardsfolder/n/nissas_judgment.txt | 2 +- forge-gui/res/cardsfolder/n/norns_choirmaster.txt | 2 +- 98 files changed, 146 insertions(+), 118 deletions(-) diff --git a/forge-gui/res/cardsfolder/e/earthbrawn.txt b/forge-gui/res/cardsfolder/e/earthbrawn.txt index 8d91a2e75f0..2491a9913f9 100644 --- a/forge-gui/res/cardsfolder/e/earthbrawn.txt +++ b/forge-gui/res/cardsfolder/e/earthbrawn.txt @@ -3,7 +3,7 @@ ManaCost:1 G Types:Instant K:Reinforce:1:1 G A:SP$ Pump | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumAtt$ +3 | NumDef$ +3 | SpellDescription$ Target creature gets +3/+3 until end of turn. +AI:RemoveDeck:All DeckHas:Ability$Counters DeckNeeds:Type$Creature -AI:RemoveDeck:All Oracle:Target creature gets +3/+3 until end of turn.\nReinforce 1—{1}{G} ({1}{G}, Discard this card: Put a +1/+1 counter on target creature.) diff --git a/forge-gui/res/cardsfolder/e/elemental_eruption.txt b/forge-gui/res/cardsfolder/e/elemental_eruption.txt index 94fdba2f709..4d57d51a698 100644 --- a/forge-gui/res/cardsfolder/e/elemental_eruption.txt +++ b/forge-gui/res/cardsfolder/e/elemental_eruption.txt @@ -1,6 +1,6 @@ Name:Elemental Eruption -Types:Sorcery ManaCost:4 R R +Types:Sorcery A:SP$ Token | TokenAmount$ 1 | TokenScript$ r_4_4_dragon_elemental_flying_prowess | TokenOwner$ You | SpellDescription$ Create a 4/4 red Dragon Elemental creature token with flying and prowess. K:Storm DeckHas:Ability$Token & Type$Dragon|Elemental diff --git a/forge-gui/res/cardsfolder/e/elven_ambush.txt b/forge-gui/res/cardsfolder/e/elven_ambush.txt index a48810da56e..55c7520f9ae 100644 --- a/forge-gui/res/cardsfolder/e/elven_ambush.txt +++ b/forge-gui/res/cardsfolder/e/elven_ambush.txt @@ -3,7 +3,7 @@ ManaCost:3 G Types:Instant A:SP$ Token | TokenAmount$ X | TokenScript$ g_1_1_elf_warrior | TokenOwner$ You | SpellDescription$ Create a 1/1 green Elf Warrior creature token for each Elf you control. SVar:X:Count$Valid Elf.YouCtrl +AI:RemoveDeck:Random DeckHas:Ability$Token DeckNeeds:Type$Elf -AI:RemoveDeck:Random Oracle:Create a 1/1 green Elf Warrior creature token for each Elf you control. diff --git a/forge-gui/res/cardsfolder/e/embrace_the_unknown.txt b/forge-gui/res/cardsfolder/e/embrace_the_unknown.txt index 8853c68836e..0eaf8156e45 100644 --- a/forge-gui/res/cardsfolder/e/embrace_the_unknown.txt +++ b/forge-gui/res/cardsfolder/e/embrace_the_unknown.txt @@ -1,6 +1,6 @@ Name:Embrace the Unknown -Types:Sorcery ManaCost:2 R +Types:Sorcery A:SP$ Dig | Defined$ You | DigNum$ 2 | ChangeNum$ All | DestinationZone$ Exile | RememberChanged$ True | SubAbility$ DBEffect | SpellDescription$ Exile the top two cards of your library. Until the end of your next turn, you may play those cards. SVar:DBEffect:DB$ Effect | RememberObjects$ RememberedCard | StaticAbilities$ STPlay | SubAbility$ DBCleanup | ForgetOnMoved$ Exile | Duration$ UntilTheEndOfYourNextTurn SVar:STPlay:Mode$ Continuous | MayPlay$ True | EffectZone$ Command | Affected$ Card.IsRemembered | AffectedZone$ Exile | Description$ Until the end of your next turn, you may play the exiled cards. diff --git a/forge-gui/res/cardsfolder/e/emrakul's messenger.txt b/forge-gui/res/cardsfolder/e/emrakul's messenger.txt index 87834d9e09a..59679d25d75 100644 --- a/forge-gui/res/cardsfolder/e/emrakul's messenger.txt +++ b/forge-gui/res/cardsfolder/e/emrakul's messenger.txt @@ -6,6 +6,6 @@ K:Devoid K:Flying T:Mode$ Drawn | ValidCard$ Card.YouCtrl | Number$ 2 | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Whenever you draw your second card each turn, create a 0/1 colorless Eldrazi Spawn creature token with "Sacrifice this creature: Add {C}." SVar:TrigToken:DB$ Token | TokenScript$ c_0_1_eldrazi_spawn_sac -DeckHas:Ability$Token & Type$Eldrazi|Spawn AI:RemoveDeck:Random +DeckHas:Ability$Token & Type$Eldrazi|Spawn Oracle:Devoid (This card has no color.)\nFlying\nWhenever you draw your second card each turn, create a 0/1 colorless Eldrazi Spawn creature token with "Sacrifice this creature: Add {C}." diff --git a/forge-gui/res/cardsfolder/e/emrakuls_influence.txt b/forge-gui/res/cardsfolder/e/emrakuls_influence.txt index 279628060c7..40ef88766a4 100644 --- a/forge-gui/res/cardsfolder/e/emrakuls_influence.txt +++ b/forge-gui/res/cardsfolder/e/emrakuls_influence.txt @@ -3,6 +3,6 @@ ManaCost:2 G G Types:Enchantment T:Mode$ SpellCast | ValidCard$ Creature.Eldrazi+cmcGE7 | ValidActivatingPlayer$ You | Execute$ TrigDraw | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast an Eldrazi creature spell with mana value 7 or greater, draw two cards. SVar:TrigDraw:DB$ Draw | Defined$ You | NumCards$ 2 -DeckNeeds:Type$Eldrazi AI:RemoveDeck:Random +DeckNeeds:Type$Eldrazi Oracle:Whenever you cast an Eldrazi creature spell with mana value 7 or greater, draw two cards. diff --git a/forge-gui/res/cardsfolder/e/ensoul_artifact.txt b/forge-gui/res/cardsfolder/e/ensoul_artifact.txt index 32c2df02109..49ca51872bd 100644 --- a/forge-gui/res/cardsfolder/e/ensoul_artifact.txt +++ b/forge-gui/res/cardsfolder/e/ensoul_artifact.txt @@ -4,6 +4,6 @@ Types:Enchantment Aura K:Enchant artifact A:SP$ Attach | ValidTgts$ Artifact | AITgts$ Card.nonCreature | AILogic$ Animate S:Mode$ Continuous | Affected$ Artifact.EnchantedBy | SetPower$ 5 | SetToughness$ 5 | AddType$ Creature | Description$ Enchanted artifact is a creature with base power and toughness 5/5 in addition to its other types. -DeckNeeds:Type$Artifact AI:RemoveDeck:Random +DeckNeeds:Type$Artifact Oracle:Enchant artifact\nEnchanted artifact is a creature with base power and toughness 5/5 in addition to its other types. diff --git a/forge-gui/res/cardsfolder/e/esix_fractal_bloom.txt b/forge-gui/res/cardsfolder/e/esix_fractal_bloom.txt index 6ad3e44e87c..bd94d4a416f 100644 --- a/forge-gui/res/cardsfolder/e/esix_fractal_bloom.txt +++ b/forge-gui/res/cardsfolder/e/esix_fractal_bloom.txt @@ -6,6 +6,6 @@ K:Flying R:Event$ CreateToken | ActiveZones$ Battlefield | CheckSVar$ X | SVarCompare$ EQ0 | ValidPlayer$ You | PlayerTurn$ True | Optional$ True | Layer$ Copy | ReplaceWith$ DBCopy | Description$ The first time you would create one or more tokens during each of your turns, you may instead choose a creature other than CARDNAME and create that many tokens that are copies of that creature. SVar:DBCopy:DB$ ReplaceToken | Type$ ReplaceToken | ValidChoices$ Creature.Other | TokenScript$ Chosen SVar:X:Count$ThisTurnEntered_Battlefield_Card.tokenCreated+YouOwn -DeckHas:Ability$Token AI:RemoveDeck:All +DeckHas:Ability$Token Oracle:Flying\nThe first time you would create one or more tokens during each of your turns, you may instead choose a creature other than Esix, Fractal Bloom and create that many tokens that are copies of that creature. diff --git a/forge-gui/res/cardsfolder/e/everythingamajig.txt b/forge-gui/res/cardsfolder/e/everythingamajig.txt index d354bbaf7f5..4d7d644bbaa 100644 --- a/forge-gui/res/cardsfolder/e/everythingamajig.txt +++ b/forge-gui/res/cardsfolder/e/everythingamajig.txt @@ -1,11 +1,14 @@ Name:Everythingamajig ManaCost:5 Types:Artifact +AI:RemoveDeck:All +Oracle: + +# --- VARIANT C --- + Variant:C:A:AB$ FlipACoin | Cost$ 1 | WinSubAbility$ DBAddMana | InstantSpeed$ True | SpellDescription$ Flip a coin. If you win the flip, add {C}{C}. Variant:C:SVar:DBAddMana:DB$ Mana | Produced$ C | Amount$ 2 Variant:C:A:AB$ Discard | Cost$ 3 T | ValidTgts$ Player | NumCards$ 1 | Mode$ TgtChoose | PlayerTurn$ True | SpellDescription$ Target player discards a card. Variant:C:A:AB$ Animate | Cost$ X | Defined$ Self | Power$ X | Toughness$ X | Types$ Creature,Artifact,Construct | RemoveCreatureTypes$ True | SpellDescription$ CARDNAME becomes an X/X Construct artifact creature until end of turn. Variant:C:SVar:X:Count$xPaid -AI:RemoveDeck:All -Oracle: Variant:C:Oracle:{1}: Flip a coin. If you win the flip, add {C}{C}. Activate only as an instant.\n{3}, {T}: Target player discards a card. Activate only during your turn.\n{X}: Everythingamajig becomes an X/X Construct artifact creature until end of turn. diff --git a/forge-gui/res/cardsfolder/e/evolution_vat.txt b/forge-gui/res/cardsfolder/e/evolution_vat.txt index 46f67f157bd..dfc89f5df2d 100644 --- a/forge-gui/res/cardsfolder/e/evolution_vat.txt +++ b/forge-gui/res/cardsfolder/e/evolution_vat.txt @@ -5,7 +5,7 @@ A:AB$ Tap | Cost$ 3 T | ValidTgts$ Creature | TgtPrompt$ Select target creature SVar:DBPutCounter:DB$ PutCounter | Defined$ Targeted | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBAnimate SVar:DBAnimate:DB$ Animate | Defined$ Targeted | Abilities$ ABPutCounter SVar:ABPutCounter:AB$ MultiplyCounter | Cost$ 2 G U | Defined$ Self | CounterType$ P1P1 | SpellDescription$ Double the number of +1/+1 counters on CARDNAME. +AI:RemoveDeck:Random DeckHints:Ability$Counters DeckNeeds:Color$Green|Blue -AI:RemoveDeck:Random Oracle:{3}, {T}: Tap target creature and put a +1/+1 counter on it. Until end of turn, that creature gains "{2}{G}{U}: Double the number of +1/+1 counters on this creature." diff --git a/forge-gui/res/cardsfolder/e/evolving_door.txt b/forge-gui/res/cardsfolder/e/evolving_door.txt index cc26f0f6e74..0eb050c2eea 100644 --- a/forge-gui/res/cardsfolder/e/evolving_door.txt +++ b/forge-gui/res/cardsfolder/e/evolving_door.txt @@ -5,6 +5,6 @@ A:AB$ ChangeZone | Cost$ 1 T Sac<1/Creature> | Origin$ Library | Destination$ Ex SVar:DBPlay:DB$ Play | Defined$ Remembered | ValidSA$ Spell | Amount$ All | Controller$ You | Optional$ True | SubAbility$ DBCleanup | DefinedDesc$ the exiled card | SpellDescription$ You may cast the exiled card. Activate only as a sorcery. SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Sacrificed$CardNumColors/Plus.1 -DeckHas:Ability$Sacrifice AI:RemoveDeck:Random +DeckHas:Ability$Sacrifice Oracle:{1}, {T}, Sacrifice a creature: Count the colors of the sacrificed creature, then search your library for a creature card that's exactly that many colors plus one. Exile that card, then shuffle. You may cast the exiled card. Activate only as a sorcery. diff --git a/forge-gui/res/cardsfolder/e/eye_of_ojer_taq_apex_observatory.txt b/forge-gui/res/cardsfolder/e/eye_of_ojer_taq_apex_observatory.txt index fcff4d597c0..e75e8386608 100644 --- a/forge-gui/res/cardsfolder/e/eye_of_ojer_taq_apex_observatory.txt +++ b/forge-gui/res/cardsfolder/e/eye_of_ojer_taq_apex_observatory.txt @@ -3,9 +3,9 @@ ManaCost:3 Types:Artifact A:AB$ Mana | Cost$ T | Produced$ Any | SpellDescription$ Add one mana of any color. K:Craft:6 ExileCtrlOrGrave<2/Permanent.Other+withSharedCardType/permanent>:two that share a card type:the two +AI:RemoveDeck:All DeckHints:Ability$Discard|Mill|Sacrifice DeckHas:Ability$Mill|Graveyard|Token -AI:RemoveDeck:All AlternateMode:DoubleFaced Oracle:{T}: Add one mana of any color.\nCraft with two that share a card type {6} ({6}, Exile this artifact, Exile the two from among other permanents you control and/or cards from your graveyard: Return this card transformed under its owner's control. Craft only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/f/fabrication_foundry.txt b/forge-gui/res/cardsfolder/f/fabrication_foundry.txt index d67106b223c..ef51105dc9b 100644 --- a/forge-gui/res/cardsfolder/f/fabrication_foundry.txt +++ b/forge-gui/res/cardsfolder/f/fabrication_foundry.txt @@ -4,6 +4,6 @@ Types:Artifact A:AB$ Mana | Cost$ T | Produced$ W | RestrictValid$ Spell.Artifact,Activated.Artifact | SpellDescription$ Add {W}. Spend this mana only to cast an artifact spell or activate an ability of an artifact source. A:AB$ ChangeZone | Cost$ 2 W T Exile<1+/Artifact.Other+withTotalCMCEQX/other artifacts you control with total mana value X> | Announce$ X | Origin$ Graveyard | Destination$ Battlefield | ValidTgts$ Artifact.YouOwn+cmcLEX | TgtPrompt$ Select target artifact card with mana value X or less | SorcerySpeed$ True | SpellDescription$ Return target artifact card with mana value X or less from your graveyard to the battlefield. Activate only as a sorcery. SVar:X:Count$xPaid -DeckNeeds:Type$Artifact AI:RemoveDeck:All +DeckNeeds:Type$Artifact Oracle:{T}: Add {W}. Spend this mana only to cast an artifact spell or activate an ability of an artifact source.\n{2}{W}, {T}, Exile one or more other artifacts you control with total mana value X: Return target artifact card with mana value X or less from your graveyard to the battlefield. Activate only as a sorcery. diff --git a/forge-gui/res/cardsfolder/f/fasting.txt b/forge-gui/res/cardsfolder/f/fasting.txt index 03fafd5f42a..52cb1fd097a 100644 --- a/forge-gui/res/cardsfolder/f/fasting.txt +++ b/forge-gui/res/cardsfolder/f/fasting.txt @@ -8,7 +8,7 @@ R:Event$ BeginPhase | ActiveZones$ Battlefield | ValidPlayer$ You | Phase$ Draw SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ 2 T:Mode$ Drawn | ValidCard$ Card.YouCtrl | TriggerZones$ Battlefield | Execute$ DBDestroySelf | TriggerDescription$ When you draw a card, destroy CARDNAME. SVar:DBDestroySelf:DB$ Destroy | Defined$ Self -DeckHas:Ability$Counters|LifeGain AI:RemoveDeck:Random AI:RemoveDeck:All +DeckHas:Ability$Counters|LifeGain Oracle:At the beginning of your upkeep, put a hunger counter on Fasting. Then destroy Fasting if it has five or more hunger counters on it.\nIf you would begin your draw step, you may skip that step instead. If you do, you gain 2 life.\nWhen you draw a card, destroy Fasting. diff --git a/forge-gui/res/cardsfolder/f/feywild_visitor.txt b/forge-gui/res/cardsfolder/f/feywild_visitor.txt index 9b943851102..b76cb50e0ca 100644 --- a/forge-gui/res/cardsfolder/f/feywild_visitor.txt +++ b/forge-gui/res/cardsfolder/f/feywild_visitor.txt @@ -4,6 +4,6 @@ Types:Legendary Enchantment Background S:Mode$ Continuous | Affected$ Creature.IsCommander+YouOwn | AddTrigger$ Damage | Description$ Commander creatures you own have "Whenever one or more nontoken creatures you control deal combat damage to a player, you create a 1/1 blue Faerie Dragon creature token with flying." SVar:Damage:Mode$ DamageDoneOnce | CombatDamage$ True | ValidSource$ Creature.YouCtrl+nonToken | TriggerZones$ Battlefield | ValidTarget$ Player | Execute$ TrigToken | TriggerDescription$ Whenever one or more nontoken creatures you control deal combat damage to a player, you create a 1/1 blue Faerie Dragon creature token with flying. SVar:TrigToken:DB$ Token | TokenScript$ u_1_1_faerie_dragon_flying -DeckHas:Ability$Token & Type$Faerie|Dragon AI:RemoveDeck:NonCommander +DeckHas:Ability$Token & Type$Faerie|Dragon Oracle:Commander creatures you own have "Whenever one or more nontoken creatures you control deal combat damage to a player, you create a 1/1 blue Faerie Dragon creature token with flying." diff --git a/forge-gui/res/cardsfolder/f/fire_giants_fury.txt b/forge-gui/res/cardsfolder/f/fire_giants_fury.txt index 957ce690e41..60697190726 100644 --- a/forge-gui/res/cardsfolder/f/fire_giants_fury.txt +++ b/forge-gui/res/cardsfolder/f/fire_giants_fury.txt @@ -9,6 +9,6 @@ SVar:DBEffect:DB$ Effect | StaticAbilities$ STPlay | ForgetOnMoved$ Exile | Reme SVar:STPlay:Mode$ Continuous | EffectZone$ Command | Affected$ Card.IsRemembered | MayPlay$ True | AffectedZone$ Exile | Description$ Until the end of your next turn, you may play those cards. SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True | ClearImprinted$ True SVar:X:TriggerCount$DamageAmount -DeckNeeds:Type$Giant AI:RemoveDeck:Random +DeckNeeds:Type$Giant Oracle:Target Giant you control gets +2/+2 and gains trample until end of turn. Whenever it deals combat damage to a player this turn, exile that many cards from the top of your library. Until the end of your next turn, you may play those cards. diff --git a/forge-gui/res/cardsfolder/f/firecat_blitz.txt b/forge-gui/res/cardsfolder/f/firecat_blitz.txt index 742c91ddb34..1e96a27b7f1 100644 --- a/forge-gui/res/cardsfolder/f/firecat_blitz.txt +++ b/forge-gui/res/cardsfolder/f/firecat_blitz.txt @@ -3,8 +3,8 @@ ManaCost:X R R Types:Sorcery A:SP$ Token | TokenAmount$ X | TokenScript$ r_1_1_elemental_cat_haste | AtEOT$ Exile | SpellDescription$ Create X 1/1 red Elemental Cat creature tokens with haste. Exile them at the beginning of the next end step. SVar:X:Count$xPaid -# X Will get overwritten by Announce +# X will get overwritten by Announce K:Flashback:R R Sac -DeckHas:Ability$Token AI:RemoveDeck:All +DeckHas:Ability$Token Oracle:Create X 1/1 red Elemental Cat creature tokens with haste. Exile them at the beginning of the next end step.\nFlashback—{R}{R}, Sacrifice X Mountains. (You may cast this card from your graveyard for its flashback cost. Then exile it.) diff --git a/forge-gui/res/cardsfolder/f/flash_conscription.txt b/forge-gui/res/cardsfolder/f/flash_conscription.txt index 41b3fbcbf5a..ccea6df685c 100644 --- a/forge-gui/res/cardsfolder/f/flash_conscription.txt +++ b/forge-gui/res/cardsfolder/f/flash_conscription.txt @@ -7,6 +7,6 @@ SVar:DBAnimate:DB$ Animate | Defined$ Targeted | Triggers$ TrigDamage | Conditio SVar:TrigDamage:Mode$ DamageDealtOnce | CombatDamage$ True | ValidSource$ Card.Self | Execute$ GainLife | TriggerZones$ Battlefield | TriggerDescription$ Whenever this creature deals combat damage, you gain that much life. SVar:GainLife:DB$ GainLife | LifeAmount$ X SVar:X:TriggerCount$DamageAmount -DeckHints:Color$White AI:RemoveDeck:Random +DeckHints:Color$White Oracle:Untap target creature and gain control of it until end of turn. That creature gains haste until end of turn. If {W} was spent to cast this spell, the creature gains "Whenever this creature deals combat damage, you gain that much life" until end of turn. diff --git a/forge-gui/res/cardsfolder/f/foam_weapons_kiosk.txt b/forge-gui/res/cardsfolder/f/foam_weapons_kiosk.txt index 86847f24082..0feaf55e644 100644 --- a/forge-gui/res/cardsfolder/f/foam_weapons_kiosk.txt +++ b/forge-gui/res/cardsfolder/f/foam_weapons_kiosk.txt @@ -1,12 +1,15 @@ Name:Foam Weapons Kiosk ManaCost:no cost Types:Artifact Attraction -Variant:A:Lights:2 6 -Variant:B:Lights:3 6 -Variant:C:Lights:4 6 -Variant:D:Lights:5 6 K:Visit:TrigCounter SVar:TrigCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBPump | SpellDescription$ Put a +1/+1 counter on target creature you control. It gains Vigilance until end of turn. SVar:DBPump:DB$ Pump | Defined$ Targeted | KW$ Vigilance DeckHas:Ability$Counters Oracle:Visit — Put a +1/+1 counter on target creature you control. That creature gains vigilance until end of turn. + +# --- VARIANTS --- + +Variant:A:Lights:2 6 +Variant:B:Lights:3 6 +Variant:C:Lights:4 6 +Variant:D:Lights:5 6 diff --git a/forge-gui/res/cardsfolder/f/font_of_magic.txt b/forge-gui/res/cardsfolder/f/font_of_magic.txt index 48b7b6638a6..bc837b38a39 100644 --- a/forge-gui/res/cardsfolder/f/font_of_magic.txt +++ b/forge-gui/res/cardsfolder/f/font_of_magic.txt @@ -3,6 +3,6 @@ ManaCost:3 U Types:Enchantment S:Mode$ ReduceCost | ValidCard$ Instant,Sorcery | Type$ Spell | Activator$ You | Amount$ X | Description$ Instant and sorcery spells you cast cost {1} less to cast for each time you've cast a commander from the command zone this game. SVar:X:Count$TotalCommanderCastFromCommandZone -DeckHints:Type$Instant|Sorcery AI:RemoveDeck:NonCommander +DeckHints:Type$Instant|Sorcery Oracle:Instant and sorcery spells you cast cost {1} less to cast for each time you've cast a commander from the command zone this game. diff --git a/forge-gui/res/cardsfolder/f/forerunner_of_the_heralds.txt b/forge-gui/res/cardsfolder/f/forerunner_of_the_heralds.txt index 2cd72b40ef8..0019acf13eb 100644 --- a/forge-gui/res/cardsfolder/f/forerunner_of_the_heralds.txt +++ b/forge-gui/res/cardsfolder/f/forerunner_of_the_heralds.txt @@ -6,7 +6,7 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigChange:DB$ ChangeZone | Origin$ Library | Destination$ Library | LibraryPosition$ 0 | ChangeType$ Card.Merfolk | ChangeNum$ 1 | ShuffleNonMandatory$ True T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Permanent.Merfolk+YouCtrl+Other | TriggerZones$ Battlefield | Execute$ TrigCounters | TriggerDescription$ Whenever another Merfolk you control enters, put a +1/+1 counter on CARDNAME. SVar:TrigCounters:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 +AI:RemoveDeck:Random DeckHas:Ability$Counters DeckHints:Type$Merfolk -AI:RemoveDeck:Random Oracle:When Forerunner of the Heralds enters, you may search your library for a Merfolk card, reveal it, then shuffle and put that card on top.\nWhenever another Merfolk you control enters, put a +1/+1 counter on Forerunner of the Heralds. diff --git a/forge-gui/res/cardsfolder/f/fortune_teller.txt b/forge-gui/res/cardsfolder/f/fortune_teller.txt index 9069966a9a1..7393f72161d 100644 --- a/forge-gui/res/cardsfolder/f/fortune_teller.txt +++ b/forge-gui/res/cardsfolder/f/fortune_teller.txt @@ -1,12 +1,15 @@ Name:Fortune Teller ManaCost:no cost Types:Artifact Attraction +K:Visit:TrigScry +SVar:TrigScry:DB$ Scry | ScryNum$ 1 | SpellDescription$ Scry 1. +Oracle:Visit — Scry 1. + +# --- VARIANTS --- + Variant:A:Lights:2 3 6 Variant:B:Lights:2 4 6 Variant:C:Lights:2 5 6 Variant:D:Lights:3 4 6 Variant:E:Lights:3 5 6 Variant:F:Lights:4 5 6 -K:Visit:TrigScry -SVar:TrigScry:DB$ Scry | ScryNum$ 1 | SpellDescription$ Scry 1. -Oracle:Visit — Scry 1. diff --git a/forge-gui/res/cardsfolder/f/frankensteins_monster.txt b/forge-gui/res/cardsfolder/f/frankensteins_monster.txt index 3ddbf2387c6..be5b3a6615e 100644 --- a/forge-gui/res/cardsfolder/f/frankensteins_monster.txt +++ b/forge-gui/res/cardsfolder/f/frankensteins_monster.txt @@ -13,7 +13,7 @@ SVar:X:Count$xPaid SVar:CheckExiled:Count$ValidExile Card.IsRemembered SVar:CheckYard:Count$ValidGraveyard Creature.YouOwn+NotDefinedReplacedSimultaneousETB SVar:NeedsToPlayVar:CheckYard GE1 +AI:RemoveDeck:Random DeckHints:Ability$Mill|Graveyard DeckHas:Ability$Graveyard|Counters -AI:RemoveDeck:Random Oracle:As Frankenstein's Monster enters, exile X creature cards from your graveyard. If you can't, put Frankenstein's Monster into its owner's graveyard instead of onto the battlefield. For each creature card exiled this way, Frankenstein's Monster enters with a +2/+0, +1/+1, or +0/+2 counter on it. diff --git a/forge-gui/res/cardsfolder/g/garbage_elemental.txt b/forge-gui/res/cardsfolder/g/garbage_elemental.txt index dd9ac7c52b8..23ebd45d23e 100644 --- a/forge-gui/res/cardsfolder/g/garbage_elemental.txt +++ b/forge-gui/res/cardsfolder/g/garbage_elemental.txt @@ -1,16 +1,22 @@ Name:Garbage Elemental ManaCost:4 R Types:Creature Elemental +Oracle: + +# --- VARIANT C --- + Variant:C:PT:3/2 Variant:C:K:Battle cry Variant:C:T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigRoll | TriggerDescription$ When CARDNAME enters, roll two six-sided dice. Create a number of 1/1 red Goblin creature tokens equal to the difference between those results. Variant:C:SVar:TrigRoll:DB$ RollDice | ResultSVar$ Result | Sides$ 6 | Amount$ 2 | UseDifferenceBetweenRolls$ True | SubAbility$ DBToken Variant:C:SVar:DBToken:DB$ Token | TokenScript$ r_1_1_goblin | TokenAmount$ Result +Variant:C:Oracle:Battle cry (Whenever this creature attacks, each other attacking creature gets +1/+0 until end of turn.)\nWhen Garbage Elemental enters, roll two six-sided dice. Create a number of 1/1 red Goblin creature tokens equal to the difference between those results. + +# --- VARIANT D --- + Variant:D:PT:3/3 Variant:D:K:Cascade Variant:D:T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigRoll | TriggerDescription$ When CARDNAME enters, roll a six-sided die. CARDNAME deals damage equal to the result to target opponent or planeswalker. Variant:D:SVar:TrigRoll:DB$ RollDice | ResultSVar$ Result | SubAbility$ DBDamage Variant:D:SVar:DBDamage:DB$ DealDamage | ValidTgts$ Opponent,Planeswalker | TgtPrompt$ Select target opponent or planeswalker | NumDmg$ Result -Oracle: -Variant:C:Oracle:Battle cry (Whenever this creature attacks, each other attacking creature gets +1/+0 until end of turn.)\nWhen Garbage Elemental enters, roll two six-sided dice. Create a number of 1/1 red Goblin creature tokens equal to the difference between those results. Variant:D:Oracle:Cascade (When you cast this spell, exile cards from the top of your library until you exile a nonland card that costs less. You may cast it without paying its mana cost. Put the exiled cards on the bottom of your library in a random order.)\nWhen Garbage Elemental enters, roll a six-sided die. Garbage Elemental deals damage equal to the result to target opponent or planeswalker. diff --git a/forge-gui/res/cardsfolder/g/gate_hound.txt b/forge-gui/res/cardsfolder/g/gate_hound.txt index f057c315994..f6f33f8146c 100644 --- a/forge-gui/res/cardsfolder/g/gate_hound.txt +++ b/forge-gui/res/cardsfolder/g/gate_hound.txt @@ -4,6 +4,6 @@ Types:Creature Dog PT:1/1 S:Mode$ Continuous | Affected$ Creature.YouCtrl | AddKeyword$ Vigilance | IsPresent$ Card.Self+enchanted | Description$ Creatures you control have vigilance as long as CARDNAME is enchanted. SVar:EnchantMe:Once -DeckNeeds:Type$Enchantment AI:RemoveDeck:Random +DeckNeeds:Type$Enchantment Oracle:Creatures you control have vigilance as long as Gate Hound is enchanted. diff --git a/forge-gui/res/cardsfolder/g/gearbane_orangutan.txt b/forge-gui/res/cardsfolder/g/gearbane_orangutan.txt index b1445e6ae7d..3f3c778f365 100644 --- a/forge-gui/res/cardsfolder/g/gearbane_orangutan.txt +++ b/forge-gui/res/cardsfolder/g/gearbane_orangutan.txt @@ -9,7 +9,7 @@ SVar:DBDestroy:DB$ Destroy | ValidTgts$ Artifact | TgtPrompt$ Select up to one t SVar:DBSacrifice:DB$ Sacrifice | SacValid$ Artifact | RememberSacrificed$ True | SubAbility$ DBPutCounter | SpellDescription$ Sacrifice an artifact. If you do, put two +1/+1 counters on CARDNAME. SVar:DBPutCounter:DB$ PutCounter | ConditionDefined$ Remembered | ConditionPresent$ Card | CounterType$ P1P1 | CounterNum$ 2 | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +AI:RemoveDeck:Random DeckHas:Ability$Sacrifice|Counters DeckHints:Type$Artifact -AI:RemoveDeck:Random Oracle:Reach\nWhen Gearbane Orangutan enters, choose one —\n• Destroy up to one target artifact.\n• Sacrifice an artifact. If you do, put two +1/+1 counters on Gearbane Orangutan. diff --git a/forge-gui/res/cardsfolder/g/gilded_assault_cart.txt b/forge-gui/res/cardsfolder/g/gilded_assault_cart.txt index 295bebf28e7..1d145b2df9b 100644 --- a/forge-gui/res/cardsfolder/g/gilded_assault_cart.txt +++ b/forge-gui/res/cardsfolder/g/gilded_assault_cart.txt @@ -5,6 +5,6 @@ PT:5/1 K:Trample K:Crew:2 A:AB$ ChangeZone | Cost$ Sac<2/Treasure> | CostDesc$ Sacrifice two Treasures: | Origin$ Graveyard | Destination$ Hand | ActivationZone$ Graveyard | SpellDescription$ Return CARDNAME from your graveyard to your hand. -DeckHas:Ability$Sacrifice AI:RemoveDeck:Random +DeckHas:Ability$Sacrifice Oracle:Trample\nCrew 2 (Tap any number of creatures you control with total power 2 or more: This Vehicle becomes an artifact creature until end of turn.)\nSacrifice two Treasures: Return Gilded Assault Cart from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/g/guild_artisan.txt b/forge-gui/res/cardsfolder/g/guild_artisan.txt index 4d5c428b176..d0292dd2570 100644 --- a/forge-gui/res/cardsfolder/g/guild_artisan.txt +++ b/forge-gui/res/cardsfolder/g/guild_artisan.txt @@ -4,6 +4,6 @@ Types:Legendary Enchantment Background S:Mode$ Continuous | Affected$ Creature.IsCommander+YouOwn | AddTrigger$ AttacksPlayer | Description$ Commander creatures you own have "Whenever this creature attacks a player, if no opponent has more life than that player, create two Treasure tokens." (They're artifacts with "{T}, Sacrifice this artifact: Add one mana of any color.") SVar:AttacksPlayer:Mode$ Attacks | ValidCard$ Card.Self | Attacked$ Player | Condition$ NoOpponentHasMoreLifeThanAttacked | Execute$ TrigTreasure | TriggerDescription$ Whenever this creature attacks a player, if no opponent has more life than that player, create two Treasure tokens. SVar:TrigTreasure:DB$ Token | TokenAmount$ 2 | TokenScript$ c_a_treasure_sac -DeckHas:Ability$Token|Sacrifice & Type$Treasure|Artifact AI:RemoveDeck:NonCommander +DeckHas:Ability$Token|Sacrifice & Type$Treasure|Artifact Oracle:Commander creatures you own have "Whenever this creature attacks a player, if no other opponent has more life than that player, create two Treasure tokens." (They're artifacts with "{T}, Sacrifice this artifact: Add one mana of any color.") diff --git a/forge-gui/res/cardsfolder/h/hall_of_mirrors.txt b/forge-gui/res/cardsfolder/h/hall_of_mirrors.txt index 2eaea91e609..878e5c21aca 100644 --- a/forge-gui/res/cardsfolder/h/hall_of_mirrors.txt +++ b/forge-gui/res/cardsfolder/h/hall_of_mirrors.txt @@ -1,8 +1,11 @@ Name:Hall of Mirrors ManaCost:no cost Types:Artifact Attraction -Variant:A:Lights:2 6 -Variant:B:Lights:4 6 K:Visit:TrigCopyAll SVar:TrigCopyAll:DB$ Clone | Defined$ Targeted | NonLegendary$ True | CloneTarget$ Valid Creature.YouCtrl+NotDefinedTargeted | Duration$ UntilEndOfTurn | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Choose target creature you control | SpellDescription$ Choose target creature you control. Each other creature you control becomes a copy of that creature until end of turn, except it isn't legendary. Oracle:Visit — Choose target creature you control. Each other creature you control becomes a copy of that creature until end of turn, except it isn't legendary. + +# --- VARIANTS --- + +Variant:A:Lights:2 6 +Variant:B:Lights:4 6 diff --git a/forge-gui/res/cardsfolder/h/halo_charged_skaab.txt b/forge-gui/res/cardsfolder/h/halo_charged_skaab.txt index 7e77fa70bb5..f837fa71727 100644 --- a/forge-gui/res/cardsfolder/h/halo_charged_skaab.txt +++ b/forge-gui/res/cardsfolder/h/halo_charged_skaab.txt @@ -5,7 +5,7 @@ PT:4/4 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigMill | TriggerDescription$ When CARDNAME enters, each player mills two cards. Then you may put an instant, sorcery, or battle card from your graveyard on top of your library. (To mill two cards, a player puts the top two cards of their library into their graveyard.) SVar:TrigMill:DB$ Mill | Defined$ Player | NumCards$ 2 | SubAbility$ DBChangeZone SVar:DBChangeZone:DB$ ChangeZone | ChangeType$ Instant.YouOwn,Sorcery.YouOwn,Battle.YouOwn | Origin$ Graveyard | Destination$ Library | Hidden$ True -DeckNeeds:Type$Artifact DeckHas:Ability$Graveyard|Mill DeckHints:Type$Instant|Sorcery|Battle +DeckNeeds:Type$Artifact Oracle:When Halo-Charged Skaab enters, each player mills two cards. Then you may put an instant, sorcery, or battle card from your graveyard on top of your library. (To mill two cards, a player puts the top two cards of their library into their graveyard.) diff --git a/forge-gui/res/cardsfolder/h/halo_forager.txt b/forge-gui/res/cardsfolder/h/halo_forager.txt index e3753008384..35e471cf7f7 100644 --- a/forge-gui/res/cardsfolder/h/halo_forager.txt +++ b/forge-gui/res/cardsfolder/h/halo_forager.txt @@ -7,6 +7,6 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigImmediateTrig:AB$ ImmediateTrigger | Cost$ X | Execute$ TrigCast | TriggerDescription$ When you do, you may cast target instant or sorcery card with mana value X from a graveyard without paying its mana cost. If that spell would be put into a graveyard, exile it instead. SVar:TrigCast:DB$ Play | TgtZone$ Graveyard | WithoutManaCost$ True | ValidSA$ Spell | ValidTgts$ Instant.cmcEQX,Sorcery.cmcEQX | Optional$ True | TgtPrompt$ Choose target instant or sorcery card from a graveyard with mana value X | ReplaceGraveyard$ Exile SVar:X:Count$xPaid -DeckHints:Type$Instant|Sorcery AI:RemoveDeck:Random +DeckHints:Type$Instant|Sorcery Oracle:Flying\nWhen Halo Forager enters, you may pay {X}. When you do, you may cast target instant or sorcery card with mana value X from a graveyard without paying its mana cost. If that spell would be put into a graveyard, exile it instead. diff --git a/forge-gui/res/cardsfolder/h/haughty_djinn.txt b/forge-gui/res/cardsfolder/h/haughty_djinn.txt index ddc20ec2368..b13a7beecdb 100644 --- a/forge-gui/res/cardsfolder/h/haughty_djinn.txt +++ b/forge-gui/res/cardsfolder/h/haughty_djinn.txt @@ -6,7 +6,7 @@ K:Flying S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | SetPower$ X | Description$ CARDNAME's power is equal to the number of instant and sorcery cards in your graveyard. S:Mode$ ReduceCost | ValidCard$ Instant,Sorcery | Type$ Spell | Activator$ You | Amount$ 1 | Description$ Instant and sorcery spells you cast cost {1} less to cast. SVar:X:Count$ValidGraveyard Instant.YouOwn,Sorcery.YouOwn -DeckNeeds:Type$Instant|Sorcery -AI:RemoveDeck:Random SVar:BuffedBy:Spell.Instant,Spell.Sorcery +AI:RemoveDeck:Random +DeckNeeds:Type$Instant|Sorcery Oracle:Flying\nHaughty Djinn's power is equal to the number of instant and sorcery cards in your graveyard.\nInstant and sorcery spells you cast cost {1} less to cast. diff --git a/forge-gui/res/cardsfolder/h/haunted_house.txt b/forge-gui/res/cardsfolder/h/haunted_house.txt index a19c2fac720..5ee6cd7d6a3 100644 --- a/forge-gui/res/cardsfolder/h/haunted_house.txt +++ b/forge-gui/res/cardsfolder/h/haunted_house.txt @@ -1,9 +1,12 @@ Name:Haunted House ManaCost:no cost Types:Artifact Attraction -Variant:A:Lights:3 6 -Variant:B:Lights:4 6 K:Visit:TrigRes SVar:TrigRes:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | ValidTgts$ Creature.YouOwn | TgtPrompt$ Choose target creature in your graveyard. | SubAbility$ DBHaste | SpellDescription$ Return target creature card from your graveyard to the battlefield. It gains haste. Exile it at the beginning of the next end step. SVar:DBHaste:DB$ Animate | Defined$ Targeted | Keywords$ Haste | Duration$ Permanent | AtEOT$ YourExile Oracle:Visit — Return target creature card from your graveyard to the battlefield. It gains haste. Exile it at the beginning of your next end step. + +# --- VARIANTS --- + +Variant:A:Lights:3 6 +Variant:B:Lights:4 6 diff --git a/forge-gui/res/cardsfolder/h/haunted_one.txt b/forge-gui/res/cardsfolder/h/haunted_one.txt index c12f599f018..31d0eb53998 100644 --- a/forge-gui/res/cardsfolder/h/haunted_one.txt +++ b/forge-gui/res/cardsfolder/h/haunted_one.txt @@ -4,6 +4,6 @@ Types:Legendary Enchantment Background S:Mode$ Continuous | Affected$ Creature.IsCommander+YouOwn | AddTrigger$ BecomesTapped | Description$ Commander creatures you own have "Whenever this creature becomes tapped, it and other creatures you control that share a creature type with it each get +2/+0 and gain undying until end of turn." SVar:BecomesTapped:Mode$ Taps | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ Whenever this creature becomes tapped, it and other creatures you control that share a creature type with it each get +2/+0 and gain undying until end of turn. SVar:TrigPump:DB$ PumpAll | ValidCards$ Card.sharesCreatureTypeWith+YouCtrl | KW$ Undying | NumAtt$ 2 -DeckHas:Ability$Counters & Keyword$Undying AI:RemoveDeck:NonCommander +DeckHas:Ability$Counters & Keyword$Undying Oracle:Commander creatures you own have "Whenever this creature becomes tapped, it and other creatures you control that share a creature type with it each get +2/+0 and gain undying until end of turn." (When a creature with undying dies, if it had no +1/+1 counters on it, return it to the battlefield under its owner's control with a +1/+1 counter on it.) diff --git a/forge-gui/res/cardsfolder/h/hedron_alignment.txt b/forge-gui/res/cardsfolder/h/hedron_alignment.txt index ba7a7bf02dd..ad46313d04a 100644 --- a/forge-gui/res/cardsfolder/h/hedron_alignment.txt +++ b/forge-gui/res/cardsfolder/h/hedron_alignment.txt @@ -15,6 +15,6 @@ SVar:X:SVar$Y/Plus.Z SVar:Y:SVar$A/Plus.B SVar:Z:SVar$C/Plus.D A:AB$ Scry | Cost$ 1 U | ScryNum$ 1 | SpellDescription$ Scry 1. -DeckNeeds:Name$Hedron Alignment AI:RemoveDeck:Random +DeckNeeds:Name$Hedron Alignment Oracle:Hexproof\nAt the beginning of your upkeep, you may reveal your hand. If you do, you win the game if you own a card named Hedron Alignment in exile, in your hand, in your graveyard, and on the battlefield.\n{1}{U}: Scry 1. diff --git a/forge-gui/res/cardsfolder/h/hells_caretaker.txt b/forge-gui/res/cardsfolder/h/hells_caretaker.txt index 81bbad222ba..d003e6003d8 100644 --- a/forge-gui/res/cardsfolder/h/hells_caretaker.txt +++ b/forge-gui/res/cardsfolder/h/hells_caretaker.txt @@ -5,7 +5,7 @@ PT:1/1 A:AB$ ChangeZone | Cost$ T Sac<1/Creature> | TgtPrompt$ Choose target creature card in your graveyard | ValidTgts$ Creature.YouCtrl | Origin$ Graveyard | Destination$ Battlefield | PlayerTurn$ True | ActivationPhases$ Upkeep | SpellDescription$ Return target creature card from your graveyard to the battlefield. Activate only during your upkeep. SVar:AIPreference:SacCost$Creature.cmcLE3 AI:RemoveDeck:Random -DeckNeeds:Ability$Graveyard DeckHas:Ability$Sacrifice|Graveyard DeckHints:Ability$Mill|Dredge & Type$Zombie|Phoenix +DeckNeeds:Ability$Graveyard Oracle:{T}, Sacrifice a creature: Return target creature card from your graveyard to the battlefield. Activate only during your upkeep. diff --git a/forge-gui/res/cardsfolder/h/hew_the_entwood.txt b/forge-gui/res/cardsfolder/h/hew_the_entwood.txt index c665521e258..abc4daa746c 100644 --- a/forge-gui/res/cardsfolder/h/hew_the_entwood.txt +++ b/forge-gui/res/cardsfolder/h/hew_the_entwood.txt @@ -10,7 +10,7 @@ SVar:DBPutArtifact:DB$ ChangeZoneAll | ChangeType$ Artifact.ChosenCard | Origin$ SVar:DBPutLands:DB$ ChangeZoneAll | ChangeType$ Land.ChosenCard | Origin$ Library | Destination$ Battlefield | Tapped$ True | SubAbility$ ShuffleRest SVar:ShuffleRest:DB$ ChangeZoneAll | Origin$ Library | Destination$ Library | LibraryPosition$ -1 | RandomOrder$ True | ChangeType$ Card.IsRemembered+!ChosenCard | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +AI:RemoveDeck:All DeckHas:Ability$Sacrifice DeckHints:Type$Artifact -AI:RemoveDeck:All Oracle:Sacrifice any number of lands. Reveal the top X cards of your library, where X is the number of lands sacrificed this way. Choose any number of artifact and/or land cards revealed this way. Put all nonland cards chosen this way onto the battlefield, then put all land cards chosen this way onto the battlefield tapped, then put the rest on the bottom of your library in a random order. diff --git a/forge-gui/res/cardsfolder/h/hidden_path.txt b/forge-gui/res/cardsfolder/h/hidden_path.txt index d077efc7d6e..7a6ce5a2723 100644 --- a/forge-gui/res/cardsfolder/h/hidden_path.txt +++ b/forge-gui/res/cardsfolder/h/hidden_path.txt @@ -6,6 +6,6 @@ SVar:NonStackingEffect:True SVar:NeedsToPlayVar:CountOpps LTCountMe SVar:CountOpps:Count$Valid Creature.OppCtrl+Green SVar:CountMe:Count$Valid Creature.YouCtrl+Green -DeckHas:Keyword$Forestwalk AI:RemoveDeck:Random +DeckHas:Keyword$Forestwalk Oracle:Green creatures have forestwalk. (They can't be blocked as long as defending player controls a Forest.) diff --git a/forge-gui/res/cardsfolder/h/high_alert.txt b/forge-gui/res/cardsfolder/h/high_alert.txt index 692d428fe1f..605b23d26d9 100644 --- a/forge-gui/res/cardsfolder/h/high_alert.txt +++ b/forge-gui/res/cardsfolder/h/high_alert.txt @@ -5,6 +5,6 @@ S:Mode$ CombatDamageToughness | ValidCard$ Creature.YouCtrl | Description$ Each S:Mode$ CanAttackDefender | ValidCard$ Creature.YouCtrl | Description$ Creatures you control can attack as though they didn't have defender. SVar:PlayMain1:TRUE A:AB$ Untap | Cost$ 2 W U | ValidTgts$ Creature | TgtPrompt$ Select target creature | SpellDescription$ Untap target creature. -DeckHints:Keyword$Defender AI:RemoveDeck:Random +DeckHints:Keyword$Defender Oracle:Each creature you control assigns combat damage equal to its toughness rather than its power.\nCreatures you control can attack as though they didn't have defender.\n{2}{W}{U}: Untap target creature. diff --git a/forge-gui/res/cardsfolder/h/hobbits_sting.txt b/forge-gui/res/cardsfolder/h/hobbits_sting.txt index 21a56ab538d..04784126923 100644 --- a/forge-gui/res/cardsfolder/h/hobbits_sting.txt +++ b/forge-gui/res/cardsfolder/h/hobbits_sting.txt @@ -4,6 +4,6 @@ Types:Instant A:SP$ DealDamage | NumDmg$ X | ValidTgts$ Creature | SpellDescription$ CARDNAME deals X damage to target creature, where X is the number of creatures you control plus the number of Foods you control. SVar:X:Count$Valid Creature.YouCtrl/Plus.Y SVar:Y:Count$Valid Food.YouCtrl -DeckHints:Type$Food AI:RemoveDeck:All +DeckHints:Type$Food Oracle:Hobbit's Sting deals X damage to target creature, where X is the number of creatures you control plus the number of Foods you control. diff --git a/forge-gui/res/cardsfolder/i/ignite_the_beacon.txt b/forge-gui/res/cardsfolder/i/ignite_the_beacon.txt index d1cf320d0f8..d5a159fa2d3 100644 --- a/forge-gui/res/cardsfolder/i/ignite_the_beacon.txt +++ b/forge-gui/res/cardsfolder/i/ignite_the_beacon.txt @@ -2,6 +2,6 @@ Name:Ignite the Beacon ManaCost:4 W Types:Instant A:SP$ ChangeZone | Origin$ Library | Destination$ Hand | ChangeType$ Planeswalker | ChangeNum$ 2 | SpellDescription$ Search your library for up to two planeswalker cards, reveal them, put them into your hand, then shuffle. -DeckNeeds:Type$Planeswalker AI:RemoveDeck:Random +DeckNeeds:Type$Planeswalker Oracle:Search your library for up to two planeswalker cards, reveal them, put them into your hand, then shuffle. diff --git a/forge-gui/res/cardsfolder/i/imposing_grandeur.txt b/forge-gui/res/cardsfolder/i/imposing_grandeur.txt index 2167ac60fb5..cdffb07b682 100644 --- a/forge-gui/res/cardsfolder/i/imposing_grandeur.txt +++ b/forge-gui/res/cardsfolder/i/imposing_grandeur.txt @@ -4,6 +4,6 @@ Types:Sorcery A:SP$ RepeatEach | RepeatPlayers$ Player | RepeatSubAbility$ DBDraw | SpellDescription$ Each player may discard their hand and draw cards equal to the greatest mana value of a commander they own on the battlefield or in the command zone. SVar:DBDraw:DB$ Draw | UnlessCost$ Discard<1/Hand> | UnlessPayer$ Remembered | UnlessSwitched$ True | Defined$ Remembered | NumCards$ X SVar:X:Count$ValidBattlefield,Command Card.IsCommander+RememberedPlayerOwn$GreatestCMC -DeckHas:Ability$Discard AI:RemoveDeck:NonCommander +DeckHas:Ability$Discard Oracle:Each player may discard their hand and draw cards equal to the greatest mana value of a commander they own on the battlefield or in the command zone. diff --git a/forge-gui/res/cardsfolder/i/improbable_alliance.txt b/forge-gui/res/cardsfolder/i/improbable_alliance.txt index 0ec35379e37..027eb6f07db 100644 --- a/forge-gui/res/cardsfolder/i/improbable_alliance.txt +++ b/forge-gui/res/cardsfolder/i/improbable_alliance.txt @@ -5,6 +5,6 @@ T:Mode$ Drawn | ValidCard$ Card.YouCtrl | Number$ 2 | TriggerZones$ Battlefield SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ u_1_1_faerie_flying | TokenOwner$ You A:AB$ Draw | Cost$ 4 U R | NumCards$ 1 | SpellDescription$ Draw a card, then discard a card. | SubAbility$ DBDiscard SVar:DBDiscard:DB$ Discard | Defined$ You | NumCards$ 1 | Mode$ TgtChoose -DeckHas:Ability$Token AI:RemoveDeck:All +DeckHas:Ability$Token Oracle:Whenever you draw your second card each turn, create a 1/1 blue Faerie creature token with flying.\n{4}{U}{R}: Draw a card, then discard a card. diff --git a/forge-gui/res/cardsfolder/i/infernal_genesis.txt b/forge-gui/res/cardsfolder/i/infernal_genesis.txt index 2421ef5f34c..4ff22576f8e 100644 --- a/forge-gui/res/cardsfolder/i/infernal_genesis.txt +++ b/forge-gui/res/cardsfolder/i/infernal_genesis.txt @@ -6,6 +6,6 @@ SVar:TrigMill:DB$ Mill | Defined$ TriggeredPlayer | NumCards$ 1 | RememberMilled SVar:TrigToken:DB$ Token | TokenAmount$ X | TokenScript$ b_1_1_minion | TokenOwner$ TriggeredPlayer | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Remembered$CardManaCost -DeckHas:Ability$Token AI:RemoveDeck:Random +DeckHas:Ability$Token Oracle:At the beginning of each player's upkeep, that player mills a card. Then they create X 1/1 black Minion creature tokens, where X is the milled card's mana value. diff --git a/forge-gui/res/cardsfolder/i/inferno_project.txt b/forge-gui/res/cardsfolder/i/inferno_project.txt index 637ef61f387..2ef652f04e7 100644 --- a/forge-gui/res/cardsfolder/i/inferno_project.txt +++ b/forge-gui/res/cardsfolder/i/inferno_project.txt @@ -5,8 +5,8 @@ PT:0/0 K:Trample K:etbCounter:P1P1:X:no Condition:CARDNAME enters with X +1/+1 counters on it, where X is the total mana value of instant and sorcery cards in your graveyard. SVar:X:Count$ValidGraveyard Instant.YouOwn,Sorcery.YouOwn$SumCMC +SVar:NeedsToPlayVar:X GE7 +AI:RemoveDeck:Random DeckHas:Ability$Counters DeckNeeds:Type$Instant|Sorcery -AI:RemoveDeck:Random -SVar:NeedsToPlayVar:X GE7 Oracle:Trample\nInferno Project enters with X +1/+1 counters on it, where X is the total mana value of instant and sorcery cards in your graveyard. diff --git a/forge-gui/res/cardsfolder/i/information_booth.txt b/forge-gui/res/cardsfolder/i/information_booth.txt index e35afb16d9d..8e0f5db9261 100644 --- a/forge-gui/res/cardsfolder/i/information_booth.txt +++ b/forge-gui/res/cardsfolder/i/information_booth.txt @@ -1,10 +1,13 @@ Name:Information Booth ManaCost:no cost Types:Artifact Attraction +K:Visit:TrigDraw +SVar:TrigDraw:DB$ Draw | SpellDescription$ Draw a card. +Oracle:Visit — Draw a card. + +# --- VARIANTS --- + Variant:A:Lights:2 6 Variant:B:Lights:3 6 Variant:C:Lights:4 6 Variant:D:Lights:5 6 -K:Visit:TrigDraw -SVar:TrigDraw:DB$ Draw | SpellDescription$ Draw a card. -Oracle:Visit — Draw a card. diff --git a/forge-gui/res/cardsfolder/i/innovative_metatect.txt b/forge-gui/res/cardsfolder/i/innovative_metatect.txt index dc8d8fb56e3..57745adb7b1 100644 --- a/forge-gui/res/cardsfolder/i/innovative_metatect.txt +++ b/forge-gui/res/cardsfolder/i/innovative_metatect.txt @@ -4,6 +4,6 @@ Types:Creature Phyrexian Artificer PT:1/3 T:Mode$ DamageDoneOnce | CombatDamage$ True | ValidSource$ Creature.Artifact+YouCtrl | TriggerZones$ Battlefield | ValidTarget$ Player | Execute$ TrigSeek | TriggerDescription$ Whenever one or more artifact creatures you control deal combat damage to a player, seek a nonland card with mana value 2 or less. SVar:TrigSeek:DB$ Seek | Type$ Card.nonLand+cmcLE2 -DeckNeeds:Type$Artifact AI:RemoveDeck:Random +DeckNeeds:Type$Artifact Oracle:Whenever one or more artifact creatures you control deal combat damage to a player, seek a nonland card with mana value 2 or less. diff --git a/forge-gui/res/cardsfolder/i/inspiring_leader.txt b/forge-gui/res/cardsfolder/i/inspiring_leader.txt index 4b46c0166bb..34c42974d52 100644 --- a/forge-gui/res/cardsfolder/i/inspiring_leader.txt +++ b/forge-gui/res/cardsfolder/i/inspiring_leader.txt @@ -3,6 +3,6 @@ ManaCost:2 W Types:Legendary Enchantment Background S:Mode$ Continuous | Affected$ Creature.IsCommander+YouOwn | AddStaticAbility$ BuffTokens | Description$ Commander creatures you own have "Creature tokens you control get +2/+2." SVar:BuffTokens:Mode$ Continuous | Affected$ Creature.token+YouCtrl | AddPower$ 2 | AddToughness$ 2 | Description$ Creature tokens you control get +2/+2. -DeckNeeds:Ability$Token AI:RemoveDeck:NonCommander +DeckNeeds:Ability$Token Oracle:Commander creatures you own have "Creature tokens you control get +2/+2." diff --git a/forge-gui/res/cardsfolder/i/invasion_of_karsus_refraction_elemental.txt b/forge-gui/res/cardsfolder/i/invasion_of_karsus_refraction_elemental.txt index 6cd4d11c706..37a8ab1e7d4 100644 --- a/forge-gui/res/cardsfolder/i/invasion_of_karsus_refraction_elemental.txt +++ b/forge-gui/res/cardsfolder/i/invasion_of_karsus_refraction_elemental.txt @@ -10,6 +10,7 @@ Oracle:(As a Siege enters, choose an opponent to protect it. You and others can ALTERNATE Name:Refraction Elemental +ManaCost:no cost Colors:red Types:Creature Elemental PT:4/4 diff --git a/forge-gui/res/cardsfolder/i/isu_the_abominable.txt b/forge-gui/res/cardsfolder/i/isu_the_abominable.txt index 0f87136a306..9d6c1cf2179 100644 --- a/forge-gui/res/cardsfolder/i/isu_the_abominable.txt +++ b/forge-gui/res/cardsfolder/i/isu_the_abominable.txt @@ -9,7 +9,7 @@ SVar:TrigChoice:DB$ GenericChoice | Choices$ PayG,PayW,PayU SVar:PayG:DB$ PutCounter | UnlessCost$ G | UnlessPayer$ You | UnlessSwitched$ True | CounterType$ P1P1 | SpellDescription$ {G}: Put a +1/+1 counter on CARDNAME. SVar:PayW:DB$ PutCounter | UnlessCost$ W | UnlessPayer$ You | UnlessSwitched$ True | CounterType$ P1P1 | SpellDescription$ {W}: Put a +1/+1 counter on CARDNAME. SVar:PayU:DB$ PutCounter | UnlessCost$ U | UnlessPayer$ You | UnlessSwitched$ True | CounterType$ P1P1 | SpellDescription$ {U}: Put a +1/+1 counter on CARDNAME. -DeckNeeds:Type$Snow DeckHas:Ability$Counters DeckHints:Color$Blue|Green +DeckNeeds:Type$Snow Oracle:You may look at the top card of your library any time.\nYou may play snow lands and cast snow spells from the top of your library.\nWhenever another snow permanent you control enters, you may pay {G}, {W}, or {U}. If you do, put a +1/+1 counter on Isu the Abominable. diff --git a/forge-gui/res/cardsfolder/j/jackknight.txt b/forge-gui/res/cardsfolder/j/jackknight.txt index a129eaa8162..22924099b7e 100644 --- a/forge-gui/res/cardsfolder/j/jackknight.txt +++ b/forge-gui/res/cardsfolder/j/jackknight.txt @@ -5,7 +5,7 @@ PT:1/1 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Artifact.YouCtrl+Other | TriggerZones$ Battlefield | Execute$ TrigCounters | TriggerDescription$ Whenever another artifact you control enters, put a +1/+1 counter on CARDNAME. If that artifact is a Contraption, CARDNAME gains lifelink until end of turn. SVar:TrigCounters:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBPump SVar:DBPump:DB$ Pump | ConditionDefined$ TriggeredCard | ConditionPresent$ Contraption | Defined$ Self | KW$ Lifelink +AI:RemoveDeck:Random DeckHas:Ability$Counters DeckHints:Type$Contraption -AI:RemoveDeck:Random Oracle:Whenever another artifact you control enters, put a +1/+1 counter on Jackknight. If that artifact is a Contraption, Jackknight gains lifelink until end of turn. diff --git a/forge-gui/res/cardsfolder/j/james_wandering_dad_follow_him.txt b/forge-gui/res/cardsfolder/j/james_wandering_dad_follow_him.txt index 4a505a1e250..834968de27b 100644 --- a/forge-gui/res/cardsfolder/j/james_wandering_dad_follow_him.txt +++ b/forge-gui/res/cardsfolder/j/james_wandering_dad_follow_him.txt @@ -3,8 +3,8 @@ ManaCost:2 U Types:Legendary Creature Human Scientist PT:2/4 A:AB$ Mana | Cost$ T | Produced$ C C | RestrictValid$ Activated | SpellDescription$ Add {C}{C}. Spend this mana only to activate abilities. -AlternateMode:Adventure DeckHas:Ability$Token & Type$Clue +AlternateMode:Adventure Oracle:Add {C}{C}. Spend this mana only to activate abilities. ALTERNATE diff --git a/forge-gui/res/cardsfolder/j/jared_carthalion.txt b/forge-gui/res/cardsfolder/j/jared_carthalion.txt index 656d85da83b..bcb7f298c80 100644 --- a/forge-gui/res/cardsfolder/j/jared_carthalion.txt +++ b/forge-gui/res/cardsfolder/j/jared_carthalion.txt @@ -10,6 +10,6 @@ SVar:DBDraw:DB$ Draw | ConditionDefined$ Remembered | ConditionPresent$ Card.All SVar:DBTreasure:DB$ Token | ConditionDefined$ Remembered | ConditionPresent$ Card.AllColors | TokenAmount$ 2 | TokenScript$ c_a_treasure_sac | SubAbility$ DBCleanup | StackDescription$ None SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True Text:CARDNAME can be your commander. -DeckHas:Ability$Token|Counters|Sacrifice|Graveyard & Type$Kavu|Artifact|Treasure AI:RemoveDeck:Random +DeckHas:Ability$Token|Counters|Sacrifice|Graveyard & Type$Kavu|Artifact|Treasure Oracle:[+1]: Create a 3/3 Kavu creature token with trample that's all colors.\n[-3]: Choose up to two target creatures. For each of them, put a number of +1/+1 counters on it equal to the number of colors it is.\n[-6]: Return target multicolored card from your graveyard to your hand. If that card was all colors, draw a card and create two Treasure tokens.\nJared Carthalion can be your commander. diff --git a/forge-gui/res/cardsfolder/j/jeweled_lotus.txt b/forge-gui/res/cardsfolder/j/jeweled_lotus.txt index fa06ad650e9..b37f4546a3d 100644 --- a/forge-gui/res/cardsfolder/j/jeweled_lotus.txt +++ b/forge-gui/res/cardsfolder/j/jeweled_lotus.txt @@ -2,6 +2,6 @@ Name:Jeweled Lotus ManaCost:0 Types:Artifact A:AB$ Mana | Cost$ T Sac<1/CARDNAME> | Produced$ Any | Amount$ 3 | RestrictValid$ Spell.IsCommander+YouOwn | SpellDescription$ Add three mana of any one color. Spend this mana only to cast your commander. -DeckHas:Ability$Sacrifice AI:RemoveDeck:NonCommander +DeckHas:Ability$Sacrifice Oracle:{T}, Sacrifice Jeweled Lotus: Add three mana of any one color. Spend this mana only to cast your commander. diff --git a/forge-gui/res/cardsfolder/j/jinnie_fay_jetmirs_second.txt b/forge-gui/res/cardsfolder/j/jinnie_fay_jetmirs_second.txt index 8ca8ef7479b..26082cdfd8a 100644 --- a/forge-gui/res/cardsfolder/j/jinnie_fay_jetmirs_second.txt +++ b/forge-gui/res/cardsfolder/j/jinnie_fay_jetmirs_second.txt @@ -6,7 +6,7 @@ R:Event$ CreateToken | ActiveZones$ Battlefield | ValidToken$ Card.YouCtrl | Rep SVar:GenericChoice:DB$ GenericChoice | Choices$ Cat,Dog SVar:Cat:DB$ ReplaceToken | Type$ ReplaceToken | ValidCard$ Card.YouCtrl | TokenScript$ g_2_2_cat_haste | SpellDescription$ Create that many 2/2 green Cat creature tokens with haste. SVar:Dog:DB$ ReplaceToken | Type$ ReplaceToken | ValidCard$ Card.YouCtrl | TokenScript$ g_3_1_dog_vigilance | SpellDescription$ Create that many 3/1 green Dog creature tokens with vigilance. +AI:RemoveDeck:Random DeckNeeds:Ability$Token DeckHas:Type$Cat|Dog -AI:RemoveDeck:Random Oracle:If you would create one or more tokens, you may instead create that many 2/2 green Cat creature tokens with haste or that many 3/1 green Dog creature tokens with vigilance. diff --git a/forge-gui/res/cardsfolder/j/jyoti_moag_ancient.txt b/forge-gui/res/cardsfolder/j/jyoti_moag_ancient.txt index b705cdf81fc..be872f09315 100644 --- a/forge-gui/res/cardsfolder/j/jyoti_moag_ancient.txt +++ b/forge-gui/res/cardsfolder/j/jyoti_moag_ancient.txt @@ -8,6 +8,6 @@ SVar:X:Count$TotalCommanderCastFromCommandZone T:Mode$ Phase | Phase$ BeginCombat | TriggerZones$ Battlefield | Execute$ TrigPumpAll | TriggerDescription$ At the beginning of each combat, land creatures you control get +X/+X until end of turn, where X is NICKNAME's power. SVar:TrigPumpAll:DB$ PumpAll | ValidCards$ Creature.Land+YouCtrl | NumAtt$ Y | NumDef$ Y SVar:Y:Count$CardPower -DeckHas:Ability$Token & Type$Dryad AI:RemoveDeck:NonCommander +DeckHas:Ability$Token & Type$Dryad Oracle:When Jyoti, Moag Ancient enters, create a 1/1 green Forest Dryad land creature token for each time you've cast a commander from the command zone this game.\nAt the beginning of each combat, land creatures you control get +X/+X until end of turn, where X is Jyoti's power. diff --git a/forge-gui/res/cardsfolder/k/karsus_depthguard.txt b/forge-gui/res/cardsfolder/k/karsus_depthguard.txt index 4de3e096b1f..5c9419dcd8f 100644 --- a/forge-gui/res/cardsfolder/k/karsus_depthguard.txt +++ b/forge-gui/res/cardsfolder/k/karsus_depthguard.txt @@ -4,6 +4,6 @@ Types:Creature Lizard Warrior PT:4/3 K:Defender S:Mode$ CanAttackDefender | ValidCard$ Card.Self+powerGE5 | Description$ As long as CARDNAME's power is 5 or greater, it can attack as though it didn't have defender. -DeckHints:Ability$Counters AI:RemoveDeck:Random +DeckHints:Ability$Counters Oracle:Defender\nAs long as Karsus Depthguard's power is 5 or greater, it can attack as though it didn't have defender. diff --git a/forge-gui/res/cardsfolder/k/kaslems_stonetree_kaslems_strider.txt b/forge-gui/res/cardsfolder/k/kaslems_stonetree_kaslems_strider.txt index 280f1b7e0c3..ff8e6b08c8b 100644 --- a/forge-gui/res/cardsfolder/k/kaslems_stonetree_kaslems_strider.txt +++ b/forge-gui/res/cardsfolder/k/kaslems_stonetree_kaslems_strider.txt @@ -4,9 +4,8 @@ Types:Artifact T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigDig | TriggerDescription$ When CARDNAME enters, look at the top six cards of your library. You may put a land card from among them onto the battlefield tapped. Put the rest on the bottom in a random order. SVar:TrigDig:DB$ Dig | DigNum$ 6 | ChangeNum$ 1 | ChangeValid$ Card.Land | Optional$ True | DestinationZone$ Battlefield | DestinationZone2$ Library | LibraryPosition$ -1 | RestRandomOrder$ True | Tapped$ True K:Craft:5 G ExileCtrlOrGrave<1/Cave.Other> -DeckHints:Ability$Discard|Mill|Sacrifice DeckHas:Ability$Graveyard -DeckHints:Type$Cave +DeckHints:Ability$Discard|Mill|Sacrifice & Type$Cave AlternateMode:DoubleFaced Oracle:When Kaslem's Stonetree enters, look at the top six cards of your library. You may put a land card from among them onto the battlefield tapped. Put the rest on the bottom in a random order.\nCraft with Cave {5}{G} ({5}{G}, Exile this artifact, Exile a Cave you control or a Cave card from your graveyard: Return this card transformed under its owner's control. Craft only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/k/katilda_and_lier.txt b/forge-gui/res/cardsfolder/k/katilda_and_lier.txt index 8c483a56859..47028521db5 100644 --- a/forge-gui/res/cardsfolder/k/katilda_and_lier.txt +++ b/forge-gui/res/cardsfolder/k/katilda_and_lier.txt @@ -5,6 +5,6 @@ PT:3/3 T:Mode$ SpellCast | ValidCard$ Human | ValidActivatingPlayer$ You | Execute$ TrigFlashback | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast a Human spell, target instant or sorcery card in your graveyard gains flashback until end of turn. The flashback cost is equal to its mana cost. (You may cast that card from your graveyard for its flashback cost. Then exile it.) SVar:TrigFlashback:DB$ Pump | ValidTgts$ Instant.YouOwn,Sorcery.YouOwn | TgtZone$ Graveyard | TgtPrompt$ Select target instant or sorcery card in your graveyard | KW$ Flashback | PumpZone$ Graveyard | AILogic$ ReplaySpell DeckHas:Ability$Graveyard & Keyword$Flashback -DeckNeeds:Type$Human DeckHints:Ability$Graveyard|Mill & Type$Instant|Sorcery +DeckNeeds:Type$Human Oracle:Whenever you cast a Human spell, target instant or sorcery card in your graveyard gains flashback until end of turn. The flashback cost is equal to its mana cost. (You may cast that card from your graveyard for its flashback cost. Then exile it.) diff --git a/forge-gui/res/cardsfolder/k/kiddie_coaster.txt b/forge-gui/res/cardsfolder/k/kiddie_coaster.txt index 10f89a7c09c..b10b80c2f6e 100644 --- a/forge-gui/res/cardsfolder/k/kiddie_coaster.txt +++ b/forge-gui/res/cardsfolder/k/kiddie_coaster.txt @@ -1,12 +1,15 @@ Name:Kiddie Coaster ManaCost:no cost Types:Artifact Attraction +K:Visit:TrigPump +SVar:TrigPump:DB$ PumpAll | ValidCards$ Creature.YouCtrl | NumAtt$ +1 | SpellDescription$ Creatures you control get +1/+0 until end of turn. +Oracle:Visit — Creatures you control get +1/+0 until end of turn. + +# --- VARIANTS --- + Variant:A:Lights:2 3 6 Variant:B:Lights:2 4 6 Variant:C:Lights:2 5 6 Variant:D:Lights:3 4 6 Variant:E:Lights:3 5 6 Variant:F:Lights:4 5 6 -K:Visit:TrigPump -SVar:TrigPump:DB$ PumpAll | ValidCards$ Creature.YouCtrl | NumAtt$ +1 | SpellDescription$ Creatures you control get +1/+0 until end of turn. -Oracle:Visit — Creatures you control get +1/+0 until end of turn. diff --git a/forge-gui/res/cardsfolder/k/kinsbaile_borderguard.txt b/forge-gui/res/cardsfolder/k/kinsbaile_borderguard.txt index beed8ce787d..fe7c691ae48 100644 --- a/forge-gui/res/cardsfolder/k/kinsbaile_borderguard.txt +++ b/forge-gui/res/cardsfolder/k/kinsbaile_borderguard.txt @@ -9,6 +9,6 @@ SVar:TrigToken:DB$ Token | TokenAmount$ Y | TokenScript$ w_1_1_kithkin_soldier | SVar:Y:TriggeredCard$CardCounters.ALL SVar:NeedsToPlayVar:X GE2 SVar:BuffedBy:Kithkin -DeckHints:Type$Kithkin AI:RemoveDeck:Random +DeckHints:Type$Kithkin Oracle:Kinsbaile Borderguard enters with a +1/+1 counter on it for each other Kithkin you control.\nWhen Kinsbaile Borderguard dies, create a 1/1 white Kithkin Soldier creature token for each counter on it. diff --git a/forge-gui/res/cardsfolder/k/knowledge_exploitation.txt b/forge-gui/res/cardsfolder/k/knowledge_exploitation.txt index a5e7a8d3ccd..f501d531146 100644 --- a/forge-gui/res/cardsfolder/k/knowledge_exploitation.txt +++ b/forge-gui/res/cardsfolder/k/knowledge_exploitation.txt @@ -6,6 +6,6 @@ A:SP$ ChangeZone | Cost$ 5 U U | ValidTgts$ Opponent | Origin$ Library | Destina SVar:DBPlay:DB$ Play | Defined$ Remembered | Controller$ You | WithoutManaCost$ True | ValidSA$ Spell | Optional$ True | SubAbility$ DBShuffle SVar:DBShuffle:DB$ Shuffle | Defined$ RememberedController | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -DeckNeeds:Type$Rogue AI:RemoveDeck:All +DeckNeeds:Type$Rogue Oracle:Prowl {3}{U} (You may cast this for its prowl cost if you dealt combat damage to a player this turn with a Rogue.)\nSearch target opponent's library for an instant or sorcery card. You may cast that card without paying its mana cost. Then that player shuffles. diff --git a/forge-gui/res/cardsfolder/k/kobolds_of_kher_keep.txt b/forge-gui/res/cardsfolder/k/kobolds_of_kher_keep.txt index 24f4fe110bc..e8e59e40470 100644 --- a/forge-gui/res/cardsfolder/k/kobolds_of_kher_keep.txt +++ b/forge-gui/res/cardsfolder/k/kobolds_of_kher_keep.txt @@ -1,7 +1,7 @@ Name:Kobolds of Kher Keep ManaCost:0 +Colors:red Types:Creature Kobold PT:0/1 -Colors:red DeckHints:Name$Rohgahh of Kher Keep Oracle: diff --git a/forge-gui/res/cardsfolder/k/kormus_bell.txt b/forge-gui/res/cardsfolder/k/kormus_bell.txt index 6b0d0d07cda..013031d6e5f 100644 --- a/forge-gui/res/cardsfolder/k/kormus_bell.txt +++ b/forge-gui/res/cardsfolder/k/kormus_bell.txt @@ -3,6 +3,6 @@ ManaCost:4 Types:Artifact S:Mode$ Continuous | Affected$ Swamp | SetPower$ 1 | SetToughness$ 1 | AddType$ Creature | SetColor$ Black | Description$ All Swamps are 1/1 black creatures that are still lands. SVar:NonStackingEffect:True -DeckHints:Name$Urborg, Tomb of Yawgmoth AI:RemoveDeck:Random +DeckHints:Name$Urborg, Tomb of Yawgmoth Oracle:All Swamps are 1/1 black creatures that are still lands. diff --git a/forge-gui/res/cardsfolder/k/kylox_visionary_inventor.txt b/forge-gui/res/cardsfolder/k/kylox_visionary_inventor.txt index 3bedae208db..849568a0421 100644 --- a/forge-gui/res/cardsfolder/k/kylox_visionary_inventor.txt +++ b/forge-gui/res/cardsfolder/k/kylox_visionary_inventor.txt @@ -12,7 +12,7 @@ SVar:DBPlay:DB$ Play | Valid$ Card.IsImprinted+YouOwn | ValidZone$ Exile | Valid SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True | ClearImprinted$ True SVar:X:RememberedLKI$CardPower SVar:SacX:Count$Valid Creature.Other +AI:RemoveDeck:All DeckHas:Ability$Sacrifice DeckHints:Type$Instant|Sorcery -AI:RemoveDeck:All Oracle:Menace, ward {2}, haste\nWhenever Kylox, Visionary Inventor attacks, sacrifice any number of other creatures, then exile the top X cards of your library, where X is their total power. You may cast any number of instant and/or sorcery spells from among the exiled cards without paying their mana costs. diff --git a/forge-gui/res/cardsfolder/l/leonardo_da_vinci.txt b/forge-gui/res/cardsfolder/l/leonardo_da_vinci.txt index 9c26638b89f..67af6050045 100644 --- a/forge-gui/res/cardsfolder/l/leonardo_da_vinci.txt +++ b/forge-gui/res/cardsfolder/l/leonardo_da_vinci.txt @@ -1,7 +1,7 @@ Name:Leonardo da Vinci ManaCost:2 U -PT:3/3 Types:Legendary Creature Human Artificer +PT:3/3 A:AB$ AnimateAll | Cost$ 3 U U | Power$ X | Toughness$ X | ValidCards$ Thopter.YouCtrl | SpellDescription$ Until end of turn, Thopters you control have base power and toughness X/X, where X is the number of cards in your hand. SVar:X:Count$InYourHand A:AB$ Draw | Cost$ 2 U T | NumCards$ 1 | SpellDescription$ Draw a card, then discard a card. If the discarded card was an artifact card, exile it from your graveyard. If you do, create a token that's a copy of it, except it's a 0/2 Thopter artifact creature with flying in addition to its other types. | SubAbility$ DBDiscard diff --git a/forge-gui/res/cardsfolder/l/lifetap.txt b/forge-gui/res/cardsfolder/l/lifetap.txt index 2558fb1535b..427f7bc6666 100644 --- a/forge-gui/res/cardsfolder/l/lifetap.txt +++ b/forge-gui/res/cardsfolder/l/lifetap.txt @@ -3,7 +3,7 @@ ManaCost:U U Types:Enchantment T:Mode$ Taps | ValidCard$ Forest.OppCtrl | TriggerZones$ Battlefield | Execute$ TrigGainLife | TriggerDescription$ Whenever a Forest an opponent controls becomes tapped, you gain 1 life. SVar:TrigGainLife:DB$ GainLife | LifeAmount$ 1 +AI:RemoveDeck:Random DeckHas:Ability$LifeGain DeckHints:Name$Yavimaya, Cradle of Growth -AI:RemoveDeck:Random Oracle:Whenever a Forest an opponent controls becomes tapped, you gain 1 life. diff --git a/forge-gui/res/cardsfolder/l/loathsome_catoblepas.txt b/forge-gui/res/cardsfolder/l/loathsome_catoblepas.txt index c706f2abb2b..3d68ae034be 100644 --- a/forge-gui/res/cardsfolder/l/loathsome_catoblepas.txt +++ b/forge-gui/res/cardsfolder/l/loathsome_catoblepas.txt @@ -6,6 +6,6 @@ A:AB$ Pump | Cost$ 2 G | Defined$ Self | KW$ HIDDEN CARDNAME must be blocked if T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ When CARDNAME dies, target creature an opponent controls gets -3/-3 until end of turn. SVar:TrigPump:DB$ Pump | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Select target creature an opponent controls | NumAtt$ -3 | NumDef$ -3 | IsCurse$ True AI:RemoveDeck:Random -DeckNeeds:Color$Green AI:RemoveDeck:All +DeckNeeds:Color$Green Oracle:{2}{G}: Loathsome Catoblepas must be blocked this turn if able.\nWhen Loathsome Catoblepas dies, target creature an opponent controls gets -3/-3 until end of turn. diff --git a/forge-gui/res/cardsfolder/l/lore_seeker.txt b/forge-gui/res/cardsfolder/l/lore_seeker.txt index 4f4293260a8..6ae528b1f0c 100644 --- a/forge-gui/res/cardsfolder/l/lore_seeker.txt +++ b/forge-gui/res/cardsfolder/l/lore_seeker.txt @@ -1,7 +1,7 @@ Name:Lore Seeker ManaCost:2 -PT:2/2 Types:Artifact Creature Construct +PT:2/2 Draft:Reveal CARDNAME as you draft it. Draft:After you draft CARDNAME, you may add a booster pack to the draft. (Your next pick is from that booster pack. Pass it to the next player and it's drafted this draft round.) Oracle:Reveal Lore Seeker as you draft it. After you draft Lore Seeker, you may add a booster pack to the draft. (Your next pick is from that booster pack. Pass it to the next player and it's drafted this draft round.) diff --git a/forge-gui/res/cardsfolder/l/lowland_oaf.txt b/forge-gui/res/cardsfolder/l/lowland_oaf.txt index cffb10be8b7..8eacbf9a56c 100644 --- a/forge-gui/res/cardsfolder/l/lowland_oaf.txt +++ b/forge-gui/res/cardsfolder/l/lowland_oaf.txt @@ -3,6 +3,6 @@ ManaCost:3 R Types:Creature Giant Warrior PT:3/3 A:AB$ Pump | Cost$ T | ValidTgts$ Goblin.YouCtrl | TgtPrompt$ Select Goblin you control | NumAtt$ +1 | NumDef$ +0 | KW$ Flying | AtEOT$ Sacrifice | SpellDescription$ Target Goblin creature you control gets +1/+0 and gains flying until end of turn. Sacrifice that creature at the beginning of the next end step. -DeckNeeds:Type$Goblin AI:RemoveDeck:Random +DeckNeeds:Type$Goblin Oracle:{T}: Target Goblin creature you control gets +1/+0 and gains flying until end of turn. Sacrifice that creature at the beginning of the next end step. diff --git a/forge-gui/res/cardsfolder/l/lucas_the_sharpshooter.txt b/forge-gui/res/cardsfolder/l/lucas_the_sharpshooter.txt index c4c8e1eb650..0a580f6191e 100644 --- a/forge-gui/res/cardsfolder/l/lucas_the_sharpshooter.txt +++ b/forge-gui/res/cardsfolder/l/lucas_the_sharpshooter.txt @@ -7,7 +7,7 @@ A:AB$ DealDamage | Cost$ T Sac<1/Artifact> | ValidTgts$ Creature | TgtPrompt$ Se SVar:DBGoad:DB$ Goad | Defined$ Targeted | StackDescription$ Goad {c:Targeted}. K:Friends forever SVar:AIPreference:SacCost$Artifact.token,Artifact.cmcLE1 -DeckNeeds:Type$Artifact DeckHas:Ability$Sacrifice DeckHints:Ability$Investigate +DeckNeeds:Type$Artifact Oracle:{T}, Sacrifice an artifact: Lucas, the Sharpshooter deals 1 damage to target creature. Goad that creature. (Until your next turn, that creature attacks each combat if able and attacks a player other than you if able.)\nFriends forever (You can have two commanders if both have friends forever.) diff --git a/forge-gui/res/cardsfolder/l/lunar_convocation.txt b/forge-gui/res/cardsfolder/l/lunar_convocation.txt index b37f95e6706..384c78931a6 100644 --- a/forge-gui/res/cardsfolder/l/lunar_convocation.txt +++ b/forge-gui/res/cardsfolder/l/lunar_convocation.txt @@ -8,6 +8,6 @@ SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ b_1_1_bat_flying | Toke A:AB$ Draw | Cost$ 1 B PayLife<2> | NumCards$ 1 | SpellDescription$ Draw a card. SVar:X:Count$LifeYouGainedThisTurn SVar:Y:PlayerCountPropertyYou$LifeLostThisTurn/Times.X -DeckNeeds:Ability$LifeGain AI:RemoveDeck:Random +DeckNeeds:Ability$LifeGain Oracle:At the beginning of your end step, if you gained life this turn, each opponent loses 1 life.\nAt the beginning of your end step, if you gained and lost life this turn, create a 1/1 black Bat creature token with flying.\n{1}{B}, Pay 2 life: Draw a card. diff --git a/forge-gui/res/cardsfolder/m/madcap_experiment.txt b/forge-gui/res/cardsfolder/m/madcap_experiment.txt index 737378c381e..655dee7431b 100644 --- a/forge-gui/res/cardsfolder/m/madcap_experiment.txt +++ b/forge-gui/res/cardsfolder/m/madcap_experiment.txt @@ -5,6 +5,6 @@ A:SP$ DigUntil | Valid$ Artifact | ValidDescription$ artifact | FoundDestination SVar:DBDealDamage:DB$ DealDamage | Defined$ You | NumDmg$ X | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Remembered$Amount -DeckNeeds:Type$Artifact AI:RemoveDeck:Random +DeckNeeds:Type$Artifact Oracle:Reveal cards from the top of your library until you reveal an artifact card. Put that card onto the battlefield and the rest on the bottom of your library in a random order. Madcap Experiment deals damage to you equal to the number of cards revealed this way. diff --git a/forge-gui/res/cardsfolder/m/magmatic_channeler.txt b/forge-gui/res/cardsfolder/m/magmatic_channeler.txt index 49eafca97b9..63a19c17385 100644 --- a/forge-gui/res/cardsfolder/m/magmatic_channeler.txt +++ b/forge-gui/res/cardsfolder/m/magmatic_channeler.txt @@ -9,6 +9,6 @@ SVar:DBEffect:DB$ Effect | StaticAbilities$ STPlay | ExileOnMoved$ Exile | Remem SVar:STPlay:Mode$ Continuous | MayPlay$ True | EffectZone$ Command | Affected$ Card.IsRemembered | AffectedZone$ Exile | Description$ You may play the chosen card this turn. SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True | ClearChosenCard$ True SVar:BuffedBy:Instant,Sorcery -DeckHints:Type$Instant|Sorcery AI:RemoveDeck:All +DeckHints:Type$Instant|Sorcery Oracle:As long as there are four or more instant and/or sorcery cards in your graveyard, Magmatic Channeler gets +3/+1.\n{T}, Discard a card: Exile the top two cards of your library, then choose one of them. You may play that card this turn. diff --git a/forge-gui/res/cardsfolder/m/maraleaf_rider.txt b/forge-gui/res/cardsfolder/m/maraleaf_rider.txt index 74051753c1e..db6b4de68b7 100644 --- a/forge-gui/res/cardsfolder/m/maraleaf_rider.txt +++ b/forge-gui/res/cardsfolder/m/maraleaf_rider.txt @@ -4,6 +4,6 @@ Types:Creature Elf Knight PT:3/1 A:AB$ MustBlock | Cost$ Sac<1/Food> | ValidTgts$ Creature | TgtPrompt$ Select target creature | SpellDescription$ Target creature blocks CARDNAME this turn if able. SVar:AIPreference:SacCost$Card.Food -DeckHints:Ability$Food AI:RemoveDeck:All +DeckHints:Ability$Food Oracle:Sacrifice a Food: Target creature blocks Maraleaf Rider this turn if able. diff --git a/forge-gui/res/cardsfolder/m/merry_go_round.txt b/forge-gui/res/cardsfolder/m/merry_go_round.txt index 98da56991c9..8f5dfa1e855 100644 --- a/forge-gui/res/cardsfolder/m/merry_go_round.txt +++ b/forge-gui/res/cardsfolder/m/merry_go_round.txt @@ -1,8 +1,11 @@ Name:Merry-Go-Round ManaCost:no cost Types:Artifact Attraction -Variant:A:Lights:2 6 -Variant:B:Lights:5 6 K:Visit:TrigPump SVar:TrigPump:DB$ PumpAll | ValidCards$ Creature.powerLE2+YouCtrl | KW$ Horsemanship | SpellDescription$ Creatures you control with power 2 or less gain horsemanship until end of turn. Oracle:Visit — Creatures you control with power 2 or less gain horsemanship until end of turn. (They can't be blocked except by creatures with horsemanship.) + +# --- VARIANTS --- + +Variant:A:Lights:2 6 +Variant:B:Lights:5 6 diff --git a/forge-gui/res/cardsfolder/m/merry_warden_of_isengard.txt b/forge-gui/res/cardsfolder/m/merry_warden_of_isengard.txt index cf7aefc3d33..412a806cff6 100644 --- a/forge-gui/res/cardsfolder/m/merry_warden_of_isengard.txt +++ b/forge-gui/res/cardsfolder/m/merry_warden_of_isengard.txt @@ -5,7 +5,6 @@ PT:1/4 K:Partner:Pippin, Warden of Isengard:Pippin T:Mode$ ChangesZoneAll | ValidCards$ Artifact.YouCtrl | Destination$ Battlefield | TriggerZones$ Battlefield | ActivationLimit$ 1 | Execute$ TrigToken | TriggerDescription$ Whenever one or more artifacts you control enter, create a 1/1 white Soldier creature token with lifelink. This ability triggers only once each turn. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ w_1_1_soldier_lifelink | TokenOwner$ You -DeckHints:Name$Pippin, Warden of Isengard DeckHas:Ability$Token -DeckHints:Type$Artifact +DeckHints:Type$Artifact & Name$Pippin, Warden of Isengard Oracle:Partner with Pippin, Warden of Isengard (When this creature enters, target player may put Pippin into their hand from their library, then shuffle.)\nWhenever one or more artifacts you control enter, create a 1/1 white Soldier creature token with lifelink. This ability triggers only once each turn. diff --git a/forge-gui/res/cardsfolder/m/micromancer.txt b/forge-gui/res/cardsfolder/m/micromancer.txt index 1fa4b4357ac..f7920e51ce7 100644 --- a/forge-gui/res/cardsfolder/m/micromancer.txt +++ b/forge-gui/res/cardsfolder/m/micromancer.txt @@ -4,6 +4,6 @@ Types:Creature Human Wizard PT:3/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigChange | OptionalDecider$ You | TriggerDescription$ When CARDNAME enters, you may search your library for an instant or sorcery card with mana value 1, reveal it, put it into your hand, then shuffle. SVar:TrigChange:DB$ ChangeZone | Origin$ Library | Destination$ Hand | ChangeType$ Instant.cmcEQ1,Sorcery.cmcEQ1 | ChangeNum$ 1 -DeckNeeds:Type$Instant|Sorcery AI:RemoveDeck:Random +DeckNeeds:Type$Instant|Sorcery Oracle:When Micromancer enters, you may search your library for an instant or sorcery card with mana value 1, reveal it, put it into your hand, then shuffle. diff --git a/forge-gui/res/cardsfolder/m/midnight_arsonist.txt b/forge-gui/res/cardsfolder/m/midnight_arsonist.txt index 1e6bd54ec4d..f2d60567985 100644 --- a/forge-gui/res/cardsfolder/m/midnight_arsonist.txt +++ b/forge-gui/res/cardsfolder/m/midnight_arsonist.txt @@ -5,7 +5,7 @@ PT:3/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters, destroy up to X target artifacts without mana abilities, where X is the number of Vampires you control. SVar:TrigDestroy:DB$ Destroy | TargetMin$ 0 | TargetMax$ X | ValidTgts$ Artifact.!hasManaAbility | TgtPrompt$ Select up to X target artifacts without mana abilities SVar:X:Count$Valid Vampire.YouCtrl -DeckHints:Type$Vampire -AI:RemoveDeck:Random SVar:BuffedBy:Vampire +AI:RemoveDeck:Random +DeckHints:Type$Vampire Oracle:When Midnight Arsonist enters, destroy up to X target artifacts without mana abilities, where X is the number of Vampires you control. diff --git a/forge-gui/res/cardsfolder/m/mimic_vat.txt b/forge-gui/res/cardsfolder/m/mimic_vat.txt index 3589c429be7..c7537793847 100644 --- a/forge-gui/res/cardsfolder/m/mimic_vat.txt +++ b/forge-gui/res/cardsfolder/m/mimic_vat.txt @@ -11,6 +11,6 @@ SVar:DBForget:DB$ Pump | ForgetImprinted$ TriggeredCard T:Mode$ ChangesZone | Origin$ Battlefield | ValidCard$ Card.Self | Destination$ Any | Execute$ DBCleanImprinted | Static$ True SVar:DBCleanImprinted:DB$ Cleanup | ClearImprinted$ True SVar:NonStackingEffect:True -DeckHas:Ability$Token AI:RemoveDeck:Random +DeckHas:Ability$Token Oracle:Imprint — Whenever a nontoken creature dies, you may exile that card. If you do, return each other card exiled with Mimic Vat to its owner's graveyard.\n{3}, {T}: Create a token that's a copy of a card exiled with Mimic Vat. It gains haste. Exile it at the beginning of the next end step. diff --git a/forge-gui/res/cardsfolder/m/mines_of_moria.txt b/forge-gui/res/cardsfolder/m/mines_of_moria.txt index 6116c247593..3d453cac0f7 100644 --- a/forge-gui/res/cardsfolder/m/mines_of_moria.txt +++ b/forge-gui/res/cardsfolder/m/mines_of_moria.txt @@ -6,6 +6,5 @@ SVar:LandTapped:DB$ Tap | Defined$ Self | ETB$ True | ConditionPresent$ Creature A:AB$ Mana | Cost$ T | Produced$ R | SpellDescription$ Add {R}. A:AB$ Token | Cost$ 3 R T ExileFromGrave<3/Card/cards> | TokenScript$ c_a_treasure_sac | TokenAmount$ 2 | SpellDescription$ Create two Treasure tokens. DeckHas:Ability$Token & Type$Artifact|Treasure -DeckHints:Ability$Graveyard -DeckHints:Type$Legendary +DeckHints:Ability$Graveyard & Type$Legendary Oracle:Mines of Moria enters tapped unless you control a legendary creature.\n{T}: Add {R}.\n{3}{R}, {T}, Exile three cards from your graveyard: Create two Treasure tokens. diff --git a/forge-gui/res/cardsfolder/m/mishra_claimed_by_gix_mishra_lost_to_phyrexia.txt b/forge-gui/res/cardsfolder/m/mishra_claimed_by_gix_mishra_lost_to_phyrexia.txt index 317b64ce50d..e2be315fecf 100644 --- a/forge-gui/res/cardsfolder/m/mishra_claimed_by_gix_mishra_lost_to_phyrexia.txt +++ b/forge-gui/res/cardsfolder/m/mishra_claimed_by_gix_mishra_lost_to_phyrexia.txt @@ -18,9 +18,9 @@ ALTERNATE Name:Mishra, Lost to Phyrexia ManaCost:no cost +Colors:black,red Types:Legendary Artifact Creature Phyrexian Artificer PT:9/9 -Colors:black,red T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigCharm | TriggerDescription$ Whenever CARDNAME enters or attacks, ABILITY T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigCharm | TriggerZones$ Battlefield | Secondary$ True | TriggerDescription$ Whenever CARDNAME enters or attacks, ABILITY SVar:TrigCharm:DB$ Charm | Choices$ DBDiscard,DBDamage,DBDestroy,DBPump,DBCurse,DBToken | CharmNum$ 3 diff --git a/forge-gui/res/cardsfolder/m/mishras_war_machine.txt b/forge-gui/res/cardsfolder/m/mishras_war_machine.txt index 3535b7c7bc4..43b9bb47725 100644 --- a/forge-gui/res/cardsfolder/m/mishras_war_machine.txt +++ b/forge-gui/res/cardsfolder/m/mishras_war_machine.txt @@ -7,6 +7,6 @@ T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | E SVar:TrigDealDamage:DB$ DealDamage | Defined$ You | NumDmg$ 3 | UnlessPayer$ You | UnlessCost$ Discard<1/Card> | RememberDamaged$ True | SubAbility$ DBTap SVar:DBTap:DB$ Tap | ConditionPlayerDefined$ Remembered | ConditionPlayerContains$ You | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -DeckHas:Ability$Discard AI:RemoveDeck:Random +DeckHas:Ability$Discard Oracle:Banding (Any creatures with banding, and up to one without, can attack in a band. Bands are blocked as a group. If any creatures with banding you control are blocking or being blocked by a creature, you divide that creature's combat damage, not its controller, among any of the creatures it's being blocked by or is blocking.)\nAt the beginning of your upkeep, Mishra's War Machine deals 3 damage to you unless you discard a card. If Mishra's War Machine deals damage to you this way, tap it. diff --git a/forge-gui/res/cardsfolder/m/mishras_workshop.txt b/forge-gui/res/cardsfolder/m/mishras_workshop.txt index b141ccba336..736482c2e9c 100644 --- a/forge-gui/res/cardsfolder/m/mishras_workshop.txt +++ b/forge-gui/res/cardsfolder/m/mishras_workshop.txt @@ -2,6 +2,6 @@ Name:Mishra's Workshop ManaCost:no cost Types:Land A:AB$ Mana | Cost$ T | Produced$ C | Amount$ 3 | RestrictValid$ Spell.Artifact | SpellDescription$ Add {C}{C}{C}. Spend this mana only to cast artifact spells. -DeckNeeds:Type$Artifact AI:RemoveDeck:Random +DeckNeeds:Type$Artifact Oracle:{T}: Add {C}{C}{C}. Spend this mana only to cast artifact spells. diff --git a/forge-gui/res/cardsfolder/m/moonsilver_key.txt b/forge-gui/res/cardsfolder/m/moonsilver_key.txt index 39c7bfb34dd..76aea6b96ba 100644 --- a/forge-gui/res/cardsfolder/m/moonsilver_key.txt +++ b/forge-gui/res/cardsfolder/m/moonsilver_key.txt @@ -2,7 +2,7 @@ Name:Moonsilver Key ManaCost:2 Types:Artifact A:AB$ ChangeZone | Cost$ 1 T Sac<1/CARDNAME> | Origin$ Library | Destination$ Hand | ChangeType$ Artifact.hasManaAbility,Land.Basic | ChangeNum$ 1 | ShuffleNonMandatory$ True | StackDescription$ SpellDescription | SpellDescription$ Search your library for an artifact card with a mana ability or a basic land card, reveal it, put it into your hand, then shuffle. +AI:RemoveDeck:Random DeckHints:Type$Artifact DeckHas:Ability$Sacrifice -AI:RemoveDeck:Random Oracle:{1}, {T}, Sacrifice Moonsilver Key: Search your library for an artifact card with a mana ability or a basic land card, reveal it, put it into your hand, then shuffle. diff --git a/forge-gui/res/cardsfolder/m/morgue_toad.txt b/forge-gui/res/cardsfolder/m/morgue_toad.txt index d1a0efee26b..b98f5be39bc 100644 --- a/forge-gui/res/cardsfolder/m/morgue_toad.txt +++ b/forge-gui/res/cardsfolder/m/morgue_toad.txt @@ -3,6 +3,6 @@ ManaCost:2 B Types:Creature Frog PT:2/2 A:AB$ Mana | Cost$ Sac<1/CARDNAME> | Produced$ U R | SpellDescription$ Add {U}{R}. -DeckNeeds:Color$Blue|Red AI:RemoveDeck:All +DeckNeeds:Color$Blue|Red Oracle:Sacrifice Morgue Toad: Add {U}{R}. diff --git a/forge-gui/res/cardsfolder/m/mortarpod.txt b/forge-gui/res/cardsfolder/m/mortarpod.txt index ad1949a8911..f4e522b1db8 100644 --- a/forge-gui/res/cardsfolder/m/mortarpod.txt +++ b/forge-gui/res/cardsfolder/m/mortarpod.txt @@ -5,6 +5,6 @@ K:Living Weapon K:Equip:2 S:Mode$ Continuous | Affected$ Card.EquippedBy | AddToughness$ 1 | AddAbility$ Damage | Description$ Equipped creature gets +0/+1 and has "Sacrifice this creature: This creature deals 1 damage to any target." SVar:Damage:AB$ DealDamage | Cost$ Sac<1/CARDNAME> | ValidTgts$ Any | NumDmg$ 1 | SpellDescription$ CARDNAME deals 1 damage to any target. -DeckHas:Ability$Token AI:RemoveDeck:Random +DeckHas:Ability$Token Oracle:Living weapon (When this Equipment enters, create a 0/0 black Phyrexian Germ creature token, then attach this to it.)\nEquipped creature gets +0/+1 and has "Sacrifice this creature: This creature deals 1 damage to any target."\nEquip {2} diff --git a/forge-gui/res/cardsfolder/m/muse_vortex.txt b/forge-gui/res/cardsfolder/m/muse_vortex.txt index 050e11efa5d..2d13c61c202 100644 --- a/forge-gui/res/cardsfolder/m/muse_vortex.txt +++ b/forge-gui/res/cardsfolder/m/muse_vortex.txt @@ -7,6 +7,6 @@ SVar:DBHand:DB$ ChangeZoneAll | Origin$ Exile | Destination$ Hand | ChangeType$ SVar:DBLibrary:DB$ ChangeZoneAll | Origin$ Exile | Destination$ Library | ChangeType$ Card.IsRemembered+YouOwn | LibraryPosition$ -1 | RandomOrder$ True | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Count$xPaid -DeckNeeds:Type$Instant|Sorcery AI:RemoveDeck:Random +DeckNeeds:Type$Instant|Sorcery Oracle:Exile the top X cards of your library. You may cast an instant or sorcery spell with mana value X or less from among them without paying its mana cost. Then put the exiled instant and sorcery cards that weren't cast this way into your hand and the rest on the bottom of your library in a random order. diff --git a/forge-gui/res/cardsfolder/n/nahiri_the_lithomancer.txt b/forge-gui/res/cardsfolder/n/nahiri_the_lithomancer.txt index c7a47ab6c79..0bbf5a3e242 100644 --- a/forge-gui/res/cardsfolder/n/nahiri_the_lithomancer.txt +++ b/forge-gui/res/cardsfolder/n/nahiri_the_lithomancer.txt @@ -8,7 +8,7 @@ SVar:DBAttach:DB$ Attach | Optional$ True | Choices$ Equipment.YouCtrl | ChoiceT SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True A:AB$ ChangeZone | Cost$ SubCounter<2/LOYALTY> | Origin$ Hand,Graveyard | Destination$ Battlefield | Hidden$ True | Planeswalker$ True | ChangeType$ Equipment.YouCtrl | Optional$ True | SpellDescription$ You may put an Equipment card from your hand or graveyard onto the battlefield. A:AB$ Token | Cost$ SubCounter<10/LOYALTY> | Planeswalker$ True | Ultimate$ True | TokenAmount$ 1 | TokenScript$ stoneforged_blade | TokenOwner$ You | SpellDescription$ Create a colorless Equipment artifact token named Stoneforged Blade. It has indestructible, "Equipped creature gets +5/+5 and has double strike," and equip {0}. +AI:RemoveDeck:All DeckHas:Ability$Token DeckNeeds:Type$Equipment -AI:RemoveDeck:All Oracle:[+2]: Create a 1/1 white Kor Soldier creature token. You may attach an Equipment you control to it.\n[-2]: You may put an Equipment card from your hand or graveyard onto the battlefield.\n[-10]: Create a colorless Equipment artifact token named Stoneforged Blade. It has indestructible, "Equipped creature gets +5/+5 and has double strike," and equip {0}.\nNahiri, the Lithomancer can be your commander. diff --git a/forge-gui/res/cardsfolder/n/nahiris_lithoforming.txt b/forge-gui/res/cardsfolder/n/nahiris_lithoforming.txt index c03aff4a5ac..1f01a79af1b 100644 --- a/forge-gui/res/cardsfolder/n/nahiris_lithoforming.txt +++ b/forge-gui/res/cardsfolder/n/nahiris_lithoforming.txt @@ -11,6 +11,6 @@ SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Count$xPaid SVar:Y:Count$RememberedSize SVar:Z:Count$ChosenNumber -DeckHas:Ability$Sacrifice AI:RemoveDeck:All +DeckHas:Ability$Sacrifice Oracle:Sacrifice X lands. For each land sacrificed this way, draw a card. You may play X additional lands this turn. Lands you control enter tapped this turn. diff --git a/forge-gui/res/cardsfolder/n/nalfeshnee.txt b/forge-gui/res/cardsfolder/n/nalfeshnee.txt index 00511bb01d8..e26c6160b3b 100644 --- a/forge-gui/res/cardsfolder/n/nalfeshnee.txt +++ b/forge-gui/res/cardsfolder/n/nalfeshnee.txt @@ -9,7 +9,7 @@ SVar:DBAnimate:DB$ Animate | ConditionDefined$ Remembered | ConditionPresent$ Pe SVar:EOTSac:Mode$ Phase | Phase$ End of Turn | Execute$ TrigSac | TriggerDescription$ At the beginning of the end step, sacrifice this permanent. SVar:TrigSac:DB$ Sacrifice SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +AI:RemoveDeck:Random DeckHas:Ability$Token|Sacrifice DeckHints:Type$Adventure & Keyword$Foretell -AI:RemoveDeck:Random Oracle:Flying\nWhenever you cast a spell from exile, copy it. You may choose new targets for the copy. If it's a permanent spell, the copy gains haste and "At the beginning of the end step, sacrifice this permanent." (A copy of a permanent spell becomes a token.) diff --git a/forge-gui/res/cardsfolder/n/necroduality.txt b/forge-gui/res/cardsfolder/n/necroduality.txt index 3c45b664e33..f4ef4707fd7 100644 --- a/forge-gui/res/cardsfolder/n/necroduality.txt +++ b/forge-gui/res/cardsfolder/n/necroduality.txt @@ -3,7 +3,7 @@ ManaCost:3 U Types:Enchantment T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Zombie.nonToken+YouCtrl | TriggerZones$ Battlefield | Execute$ TrigCopy | TriggerDescription$ Whenever a nontoken Zombie you control enters, create a token that's a copy of that creature. SVar:TrigCopy:DB$ CopyPermanent | Defined$ TriggeredCardLKICopy +AI:RemoveDeck:Random DeckNeeds:Type$Zombie DeckHas:Ability$Token -AI:RemoveDeck:Random Oracle:Whenever a nontoken Zombie you control enters, create a token that's a copy of that creature. diff --git a/forge-gui/res/cardsfolder/n/netherborn_altar.txt b/forge-gui/res/cardsfolder/n/netherborn_altar.txt index 52661c0aa2c..fd453afbbcb 100644 --- a/forge-gui/res/cardsfolder/n/netherborn_altar.txt +++ b/forge-gui/res/cardsfolder/n/netherborn_altar.txt @@ -4,7 +4,7 @@ Types:Artifact A:AB$ ChangeZone | Cost$ T AddCounter<1/SOUL> | ChangeType$ Card.IsCommander+YouOwn | SelectPrompt$ Select a commander | ChangeNum$ 1 | Mandatory$ True | Origin$ Command | Destination$ Hand | Hidden$ True | SubAbility$ DBLoseLife | StackDescription$ SpellDescription | SpellDescription$ Put your commander into your hand from the command zone. Then you lose 3 life for each soul counter on CARDNAME. SVar:DBLoseLife:DB$ LoseLife | Defined$ You | LifeAmount$ X SVar:X:Count$CardCounters.SOUL/Times.3 -DeckHas:Ability$Counters AI:RemoveDeck:All AI:RemoveDeck:Random +DeckHas:Ability$Counters Oracle:{T}, Put a soul counter on Netherborn Altar: Put your commander into your hand from the command zone. Then you lose 3 life for each soul counter on Netherborn Altar. diff --git a/forge-gui/res/cardsfolder/n/niambi_beloved_protector.txt b/forge-gui/res/cardsfolder/n/niambi_beloved_protector.txt index 2c7c1144925..b9e946c942d 100644 --- a/forge-gui/res/cardsfolder/n/niambi_beloved_protector.txt +++ b/forge-gui/res/cardsfolder/n/niambi_beloved_protector.txt @@ -9,6 +9,6 @@ SVar:DBAnimate:DB$ Animate | Defined$ Remembered | Triggers$ BecomesTarget | Dur SVar:BecomesTarget:Mode$ BecomesTarget | ValidTarget$ Card.Self | ActivationLimit$ 1 | TriggerZones$ Battlefield | Execute$ TrigDraw | TriggerDescription$ Whenever this creature becomes the target of a spell or ability, draw a card. This ability triggers only once each turn. SVar:TrigDraw:DB$ Draw SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -DeckHas:Ability$Graveyard AI:RemoveDeck:Random +DeckHas:Ability$Graveyard Oracle:Flash\nWhen Niambi, Beloved Protector enters, if you cast it, choose target nonlegendary creature card in your graveyard that was put there from the battlefield this turn. Return it to the battlefield. It perpetually gains "Whenever this creature becomes the target of a spell or ability, draw a card. This ability triggers only once each turn." diff --git a/forge-gui/res/cardsfolder/n/nicanzil_current_conductor.txt b/forge-gui/res/cardsfolder/n/nicanzil_current_conductor.txt index 89f6adc988f..39c04f6f5af 100644 --- a/forge-gui/res/cardsfolder/n/nicanzil_current_conductor.txt +++ b/forge-gui/res/cardsfolder/n/nicanzil_current_conductor.txt @@ -6,6 +6,6 @@ T:Mode$ Explores | ValidCard$ Creature.YouCtrl | ValidExplored$ Land | TriggerZo SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Hand | Destination$ Battlefield | ChangeType$ Land | ChangeNum$ 1 | Tapped$ True T:Mode$ Explores | ValidCard$ Creature.YouCtrl | ValidExplored$ Card.nonLand | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever a creature you control explores a nonland card, put a +1/+1 counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | CounterType$ P1P1 -DeckHas:Ability$Counters AI:RemoveDeck:Random +DeckHas:Ability$Counters Oracle:Whenever a creature you control explores a land card, you may put a land card from your hand onto the battlefield tapped.\nWhenever a creature you control explores a nonland card, put a +1/+1 counter on Nicanzil, Current Conductor. diff --git a/forge-gui/res/cardsfolder/n/night_out_in_vegas.txt b/forge-gui/res/cardsfolder/n/night_out_in_vegas.txt index bcce1fc99b7..d841825d1ce 100644 --- a/forge-gui/res/cardsfolder/n/night_out_in_vegas.txt +++ b/forge-gui/res/cardsfolder/n/night_out_in_vegas.txt @@ -10,6 +10,6 @@ SVar:DBDiscard:DB$ Discard | Defined$ You | NumCards$ 1 | Mode$ Random | SubAbil SVar:DBShuffle:DB$ Shuffle | Defined$ You SVar:GoToSleep:DB$ LoseLife | LifeAmount$ 15 | SubAbility$ DBSacSelf | SpellDescription$ Go to Sleep — You lose 15 life. Sacrifice CARDNAME. SVar:DBSacSelf:DB$ Sacrifice -DeckHas:Ability$Token|Sacrifice|LifeGain & Type$Food|Artifact|Performer AI:RemoveDeck:All +DeckHas:Ability$Token|Sacrifice|LifeGain & Type$Food|Artifact|Performer Oracle:At the beginning of your upkeep, choose one that hasn't been chosen —\n• Buffet — Create three Food tokens.\n• See a Show — Create two 2/2 white Performer creature tokens.\n• Play Games — Search your library for a card, put that card into your hand, discard a card at random, then shuffle.\n• Go to Sleep — You lose 15 life. Sacrifice Night Out in Vegas. diff --git a/forge-gui/res/cardsfolder/n/nissas_judgment.txt b/forge-gui/res/cardsfolder/n/nissas_judgment.txt index faaca10f539..145f8e1c209 100644 --- a/forge-gui/res/cardsfolder/n/nissas_judgment.txt +++ b/forge-gui/res/cardsfolder/n/nissas_judgment.txt @@ -4,6 +4,6 @@ Types:Sorcery A:SP$ PutCounter | AILogic$ PowerDmg | ValidTgts$ Creature | TargetMin$ 0 | TargetMax$ 2 | TgtPrompt$ Select up to two target creatures | CounterType$ P1P1 | SubAbility$ DealToCreature | StackDescription$ REP ._. ({c:ThisTargetedCard}) | SpellDescription$ Support 2. (Put a +1/+1 counter on each of up to two target creatures.) SVar:DealToCreature:DB$ EachDamage | ValidCards$ Creature.YouCtrl+counters_GE1_P1P1 | NumDmg$ X | TgtPrompt$ Select up to one target creature an opponent controls | ValidTgts$ Creature.OppCtrl | TargetMin$ 0 | TargetMax$ 1 | StackDescription$ REP target creature opponent controls_{c:ThisTargetedCard} | SpellDescription$ Each creature you control with a +1/+1 counter deals damage equal to its power to target creature opponent controls. SVar:X:Count$CardPower -DeckHas:Ability$Counters AI:RemoveDeck:All +DeckHas:Ability$Counters Oracle:Support 2. (Put a +1/+1 counter on each of up to two target creatures.)\nChoose up to one target creature an opponent controls. Each creature you control with a +1/+1 counter on it deals damage equal to its power to that creature. diff --git a/forge-gui/res/cardsfolder/n/norns_choirmaster.txt b/forge-gui/res/cardsfolder/n/norns_choirmaster.txt index 86a47b73ebd..50fe06b7df1 100644 --- a/forge-gui/res/cardsfolder/n/norns_choirmaster.txt +++ b/forge-gui/res/cardsfolder/n/norns_choirmaster.txt @@ -8,7 +8,7 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | TriggerZones$ Bat T:Mode$ Attacks | ValidCard$ Card.IsCommander+YouOwn | TriggerZones$ Battlefield | Execute$ TrigProliferate | Secondary$ True | TriggerDescription$ Whenever your commander enters or attacks, proliferate (Choose any number of permanents and/or players, then give each another counter kind of each kind they already have.) SVar:TrigProliferate:DB$ Proliferate SVar:HasAttackEffect:TRUE +AI:RemoveDeck:NonCommander DeckHas:Ability$Proliferate DeckHints:Ability$Counters|Planeswalker -AI:RemoveDeck:NonCommander Oracle:Flying, first strike\nWhenever a commander you control enters or attacks, proliferate. (Choose any number of permanents and/or players, then give each another counter kind of each kind they already have.) From e86769ead69cdc92de6178d0bbf7c2f1f0b860a1 Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 09:30:46 +0100 Subject: [PATCH 11/91] Edit pile cleanup: Line reordering, first pass: part 3, folders 'o' to 'v', 'rebalanced', 'upcoming' (#6296) --- forge-gui/res/cardsfolder/o/orc_general.txt | 2 +- .../o/ore_rich_stalactite_cosmium_catalyst.txt | 6 +++--- forge-gui/res/cardsfolder/o/over_the_top.txt | 2 +- .../res/cardsfolder/o/overgrowth_elemental.txt | 4 ++-- ...aleontologists_pick_axe_dinosaur_headdress.txt | 2 +- .../cardsfolder/p/passionate_archaeologist.txt | 2 +- forge-gui/res/cardsfolder/p/peace_of_mind.txt | 4 ++-- .../res/cardsfolder/p/phyrexian_scrapyard.txt | 2 +- forge-gui/res/cardsfolder/p/pick_a_beeble.txt | 15 +++++++++------ forge-gui/res/cardsfolder/p/piety_charm.txt | 2 +- forge-gui/res/cardsfolder/p/plunderers_prize.txt | 2 +- forge-gui/res/cardsfolder/p/primal_adversary.txt | 2 +- .../res/cardsfolder/p/profane_transfusion.txt | 2 +- forge-gui/res/cardsfolder/p/promise_of_power.txt | 2 +- .../res/cardsfolder/p/prowling_geistcatcher.txt | 2 +- forge-gui/res/cardsfolder/p/psionic_ritual.txt | 2 +- forge-gui/res/cardsfolder/r/rage_weaver.txt | 2 +- forge-gui/res/cardsfolder/r/raised_by_giants.txt | 2 +- .../r/ral_monsoon_mage_ral_leyline_prodigy.txt | 2 +- .../res/cardsfolder/r/razias_purification.txt | 2 +- forge-gui/res/cardsfolder/r/reconstruction.txt | 2 +- forge-gui/res/cardsfolder/r/redrock_sentinel.txt | 2 +- forge-gui/res/cardsfolder/r/relic_amulet.txt | 2 +- .../res/cardsfolder/r/renowned_weaponsmith.txt | 2 +- .../res/cardsfolder/r/resonance_technician.txt | 2 +- forge-gui/res/cardsfolder/r/resurgent_belief.txt | 2 +- .../res/cardsfolder/r/ride_the_avalanche.txt | 2 +- .../res/cardsfolder/r/riku_of_many_paths.txt | 2 +- .../cardsfolder/r/rite_of_the_raging_storm.txt | 2 +- forge-gui/res/cardsfolder/r/rogues_gallery.txt | 2 +- forge-gui/res/cardsfolder/r/roller_coaster.txt | 9 ++++++--- forge-gui/res/cardsfolder/r/runed_arch.txt | 2 +- .../res/cardsfolder/r/runeforge_champion.txt | 2 +- forge-gui/res/cardsfolder/r/rustic_clachan.txt | 2 +- ...d_god_of_the_cosmos_hakka_whispering_raven.txt | 2 +- .../res/cardsfolder/rebalanced/a-briar_hydra.txt | 2 +- .../rebalanced/a-elderfang_ritualist.txt | 2 +- .../rebalanced/a-saheeli_filigree_master.txt | 3 +-- .../cardsfolder/s/safana_calimport_cutthroat.txt | 2 +- .../res/cardsfolder/s/saheeli_filigree_master.txt | 3 +-- .../s/saheelis_lattice_mastercraft_raptor.txt | 6 +++--- forge-gui/res/cardsfolder/s/sanctify.txt | 2 +- forge-gui/res/cardsfolder/s/sanctum_of_all.txt | 2 +- .../res/cardsfolder/s/sandals_of_abdallah.txt | 2 +- .../res/cardsfolder/s/sarulf_realm_eater.txt | 2 +- forge-gui/res/cardsfolder/s/scion_of_halaster.txt | 2 +- forge-gui/res/cardsfolder/s/scrounging_bandar.txt | 2 +- .../res/cardsfolder/s/scurry_of_squirrels.txt | 2 +- .../cardsfolder/s/sefris_of_the_hidden_ways.txt | 2 +- forge-gui/res/cardsfolder/s/seize_the_storm.txt | 2 +- .../cardsfolder/s/shisato_whispering_hunter.txt | 2 +- forge-gui/res/cardsfolder/s/sly_spy.txt | 5 ++++- ...rin_of_house_markov_sorin_ravenous_neonate.txt | 4 ++-- forge-gui/res/cardsfolder/s/soulherder.txt | 2 +- forge-gui/res/cardsfolder/s/space_beleren.txt | 2 +- forge-gui/res/cardsfolder/s/sparkspitter.txt | 2 +- .../res/cardsfolder/s/spectral_adversary.txt | 2 +- forge-gui/res/cardsfolder/s/spinny_ride.txt | 9 ++++++--- forge-gui/res/cardsfolder/s/stick_together.txt | 2 +- .../res/cardsfolder/s/stinkdrinker_bandit.txt | 2 +- .../res/cardsfolder/s/storm_kings_thunder.txt | 2 +- forge-gui/res/cardsfolder/s/storybook_ride.txt | 7 +++++-- .../cardsfolder/s/subira_tulzidi_caravanner.txt | 2 +- forge-gui/res/cardsfolder/s/sumala_sentry.txt | 2 +- .../s/sunbird_standard_sunbird_effigy.txt | 2 +- .../s/suppression_ray_orderly_plaza.txt | 2 +- .../cardsfolder/s/swashbuckler_extraordinaire.txt | 2 +- forge-gui/res/cardsfolder/s/swiftgear_drake.txt | 2 +- forge-gui/res/cardsfolder/s/swinging_ship.txt | 7 +++++-- forge-gui/res/cardsfolder/t/tainted_adversary.txt | 2 +- ...nquisitive_student_tamiyo_seasoned_scholar.txt | 2 +- .../res/cardsfolder/t/tazri_stalwart_survivor.txt | 2 +- .../cardsfolder/t/tezzeret_master_of_metal.txt | 2 +- .../res/cardsfolder/t/the_beamtown_bullies.txt | 2 +- .../res/cardsfolder/t/the_day_of_the_doctor.txt | 2 +- .../t/the_enigma_jewel_locus_of_enlightenment.txt | 2 +- .../cardsfolder/t/the_prydwen_steel_flagship.txt | 2 +- .../cardsfolder/t/the_trickster_gods_heist.txt | 2 +- ...tania_voice_of_gaea_titania_gaea_incarnate.txt | 4 +--- forge-gui/res/cardsfolder/t/tomb_robber.txt | 2 +- forge-gui/res/cardsfolder/t/tome_of_legends.txt | 2 +- .../res/cardsfolder/t/tournament_grounds.txt | 2 +- .../res/cardsfolder/t/tranquil_frillback.txt | 2 +- forge-gui/res/cardsfolder/t/trash_bin.txt | 11 +++++++---- forge-gui/res/cardsfolder/t/tunnel_of_love.txt | 7 +++++-- forge-gui/res/cardsfolder/t/turntimber_sower.txt | 2 +- forge-gui/res/cardsfolder/t/tyranid_invasion.txt | 2 +- forge-gui/res/cardsfolder/u/unmarked_grave.txt | 2 +- .../cardsfolder/u/urza_assembles_the_titans.txt | 2 +- .../cardsfolder/upcoming/vengeful_bloodwitch.txt | 2 +- forge-gui/res/cardsfolder/v/vastwood_animist.txt | 2 +- .../res/cardsfolder/v/vault_21_house_gambit.txt | 2 +- .../res/cardsfolder/v/vazi_keen_negotiator.txt | 2 +- forge-gui/res/cardsfolder/v/veteran_soldier.txt | 2 +- forge-gui/res/cardsfolder/v/visions_of_ruin.txt | 2 +- .../res/cardsfolder/v/vladimir_and_godfrey.txt | 2 +- .../res/cardsfolder/v/vona_butcher_of_magan.txt | 2 +- 97 files changed, 143 insertions(+), 123 deletions(-) diff --git a/forge-gui/res/cardsfolder/o/orc_general.txt b/forge-gui/res/cardsfolder/o/orc_general.txt index 82b942cb5d6..dd69d5c02b5 100644 --- a/forge-gui/res/cardsfolder/o/orc_general.txt +++ b/forge-gui/res/cardsfolder/o/orc_general.txt @@ -3,8 +3,8 @@ ManaCost:2 R Types:Creature Orc Warrior PT:2/2 A:AB$ PumpAll | Cost$ T Sac<1/Goblin.Other;Orc.Other/another Orc or Goblin> | ValidCards$ Creature.Orc+StrictlyOther | NumAtt$ +1 | NumDef$ +1 | SpellDescription$ Other Orc creatures get +1/+1 until end of turn. +AI:RemoveDeck:Random DeckHints:Type$Goblin DeckNeeds:Type$Orc DeckHas:Ability$Sacrifice -AI:RemoveDeck:Random Oracle:{T}, Sacrifice another Orc or Goblin: Other Orc creatures get +1/+1 until end of turn. diff --git a/forge-gui/res/cardsfolder/o/ore_rich_stalactite_cosmium_catalyst.txt b/forge-gui/res/cardsfolder/o/ore_rich_stalactite_cosmium_catalyst.txt index 416a5d95bfe..13b54d71fdd 100644 --- a/forge-gui/res/cardsfolder/o/ore_rich_stalactite_cosmium_catalyst.txt +++ b/forge-gui/res/cardsfolder/o/ore_rich_stalactite_cosmium_catalyst.txt @@ -4,10 +4,10 @@ Types:Artifact A:AB$ Mana | Cost$ T | Produced$ R | RestrictValid$ Spell.Instant,Spell.Sorcery | SpellDescription$ Add {R}. Spend this mana only to cast an instant or sorcery spell. K:Craft:3 R R XMin4 ExileFromGrave SVar:X:Count$xPaid -DeckHints:Ability$Discard|Mill|Sacrifice -DeckHas:Ability$Graveyard -DeckNeeds:Type$Instant|Sorcery AI:RemoveDeck:All +DeckHas:Ability$Graveyard +DeckHints:Ability$Discard|Mill|Sacrifice +DeckNeeds:Type$Instant|Sorcery AlternateMode:DoubleFaced Oracle:{T}: Add {R}. Spend this mana only to cast an instant or sorcery spell.\nCraft with four or more red instant and/or sorcery cards {3}{R}{R} ({3}{R}{R}, Exile this artifact, Exile the four or more from your graveyard: Return this card transformed under its owner's control. Craft only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/o/over_the_top.txt b/forge-gui/res/cardsfolder/o/over_the_top.txt index 89542963450..afa14b18704 100644 --- a/forge-gui/res/cardsfolder/o/over_the_top.txt +++ b/forge-gui/res/cardsfolder/o/over_the_top.txt @@ -7,6 +7,6 @@ SVar:Battlefield:DB$ ChangeZoneAll | ChangeType$ Permanent.IsRemembered | Origin SVar:Graveyard:DB$ ChangeZoneAll | ChangeType$ Card.IsRemembered | Origin$ Library | Destination$ Graveyard | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Count$Valid Permanent.nonLand+RememberedPlayerCtrl -DeckHints:Ability$Graveyard AI:RemoveDeck:Random +DeckHints:Ability$Graveyard Oracle:Each player reveals a number of cards from the top of their library equal to the number of nonland permanents they control, puts all permanent cards they revealed this way onto the battlefield, and puts the rest into their graveyard. diff --git a/forge-gui/res/cardsfolder/o/overgrowth_elemental.txt b/forge-gui/res/cardsfolder/o/overgrowth_elemental.txt index fe163663409..46038a07d5a 100644 --- a/forge-gui/res/cardsfolder/o/overgrowth_elemental.txt +++ b/forge-gui/res/cardsfolder/o/overgrowth_elemental.txt @@ -7,8 +7,8 @@ SVar:TrigPut:DB$ PutCounter | ValidTgts$ Elemental.Other+YouCtrl | TgtPrompt$ Se T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Creature.Other+YouCtrl | TriggerZones$ Battlefield | Execute$ TrigGainLife | TriggerDescription$ Whenever another creature you control dies, you gain 1 life. If that creature was an Elemental, put a +1/+1 counter on CARDNAME. SVar:TrigGainLife:DB$ GainLife | Defined$ You | LifeAmount$ 1 | SubAbility$ DBPutCounter SVar:DBPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 | ConditionDefined$ TriggeredCardLKICopy | ConditionPresent$ Creature.Elemental +SVar:PlayMain1:TRUE +AI:RemoveDeck:Random DeckHas:Ability$Counters DeckHints:Type$Elemental -AI:RemoveDeck:Random -SVar:PlayMain1:TRUE Oracle:When Overgrowth Elemental enters, put a +1/+1 counter on another target Elemental you control.\nWhenever another creature you control dies, you gain 1 life. If that creature was an Elemental, put a +1/+1 counter on Overgrowth Elemental. diff --git a/forge-gui/res/cardsfolder/p/paleontologists_pick_axe_dinosaur_headdress.txt b/forge-gui/res/cardsfolder/p/paleontologists_pick_axe_dinosaur_headdress.txt index 59a03c694cd..9aa6a2be5ce 100644 --- a/forge-gui/res/cardsfolder/p/paleontologists_pick_axe_dinosaur_headdress.txt +++ b/forge-gui/res/cardsfolder/p/paleontologists_pick_axe_dinosaur_headdress.txt @@ -7,9 +7,9 @@ SVar:DBDiscard:DB$ Discard | Mode$ TgtChoose K:Equip:1 K:Craft:5 XMin1 ExileCtrlOrGrave SVar:X:Count$xPaid +AI:RemoveDeck:All DeckHints:Ability$Discard|Mill|Sacrifice DeckHas:Ability$Graveyard|Discard -AI:RemoveDeck:All AlternateMode:DoubleFaced Oracle:Whenever equipped creature attacks, draw a card, then discard a card.\nEquip {1}\nCraft with one or more creatures {5} ({5}, Exile this artifact, Exile one or more creatures you control and/or creature cards from your graveyard: Return this card transformed under its owner's control. Craft only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/p/passionate_archaeologist.txt b/forge-gui/res/cardsfolder/p/passionate_archaeologist.txt index dc378d269e1..a065ba84030 100644 --- a/forge-gui/res/cardsfolder/p/passionate_archaeologist.txt +++ b/forge-gui/res/cardsfolder/p/passionate_archaeologist.txt @@ -5,6 +5,6 @@ S:Mode$ Continuous | Affected$ Creature.IsCommander+YouOwn | AddTrigger$ CastFro SVar:CastFromExile:Mode$ SpellCast | ValidCard$ Card.wasCastFromExile | ValidActivatingPlayer$ You | Execute$ TrigDealDamage | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast a spell from exile, CARDNAME deals damage equal to that spell's mana value to target opponent. SVar:TrigDealDamage:DB$ DealDamage | ValidTgts$ Opponent | NumDmg$ X SVar:X:TriggeredStackInstance$CardManaCostLKI -DeckHints:Type$Adventure & Keyword$Foretell AI:RemoveDeck:NonCommander +DeckHints:Type$Adventure & Keyword$Foretell Oracle:Commander creatures you own have "Whenever you cast a spell from exile, this creature deals damage equal to that spell's mana value to target opponent." diff --git a/forge-gui/res/cardsfolder/p/peace_of_mind.txt b/forge-gui/res/cardsfolder/p/peace_of_mind.txt index 7e2fcfb1815..452c1949433 100644 --- a/forge-gui/res/cardsfolder/p/peace_of_mind.txt +++ b/forge-gui/res/cardsfolder/p/peace_of_mind.txt @@ -3,7 +3,7 @@ ManaCost:1 W Types:Enchantment A:AB$ GainLife | Cost$ W Discard<1/Card> | LifeAmount$ 3 | SpellDescription$ You gain 3 life. SVar:AIPreference:DiscardCost$Card -DeckHints:Ability$Discard -AI:RemoveDeck:Random SVar:NonStackingEffect:True +AI:RemoveDeck:Random +DeckHints:Ability$Discard Oracle:{W}, Discard a card: You gain 3 life. diff --git a/forge-gui/res/cardsfolder/p/phyrexian_scrapyard.txt b/forge-gui/res/cardsfolder/p/phyrexian_scrapyard.txt index f2e77a79002..14d801981cc 100644 --- a/forge-gui/res/cardsfolder/p/phyrexian_scrapyard.txt +++ b/forge-gui/res/cardsfolder/p/phyrexian_scrapyard.txt @@ -4,7 +4,7 @@ Types:Land A:AB$ Mana | Cost$ T | Produced$ C | SpellDescription$ Add {C}. A:AB$ MakeCard | Cost$ 1 T Discard<1/Card> | Name$ Phyrexian Scrapyard | Zone$ Hand | SpellDescription$ Conjure a card named Phyrexian Scrapyard into your hand. A:AB$ MakeCard | Cost$ 2 T Sac<3/Land.namedPhyrexian Scrapyard/lands named Phyrexian Scrapyard> | Name$ Soul of New Phyrexia | Zone$ Battlefield | SorcerySpeed$ True | SpellDescription$ Conjure a card named Soul of New Phyrexia onto the battlefield. Activate only as a sorcery. -DeckHas:Ability$Discard|Sacrifice & Type$Artifact|Avatar|Phyrexian AI:RemoveDeck:Random AI:RemoveDeck:All +DeckHas:Ability$Discard|Sacrifice & Type$Artifact|Avatar|Phyrexian Oracle:{T}: Add {C}.\n{1}, {T}, Discard a card: Conjure a card named Phyrexian Scrapyard into your hand.\n{2}, {T}, Sacrifice three lands named Phyrexian Scrapyard: Conjure a card named Soul of New Phyrexia onto the battlefield. Activate only as a sorcery. diff --git a/forge-gui/res/cardsfolder/p/pick_a_beeble.txt b/forge-gui/res/cardsfolder/p/pick_a_beeble.txt index 47c43ef57b5..c2a34754fe2 100644 --- a/forge-gui/res/cardsfolder/p/pick_a_beeble.txt +++ b/forge-gui/res/cardsfolder/p/pick_a_beeble.txt @@ -1,12 +1,6 @@ Name:Pick-a-Beeble ManaCost:no cost Types:Artifact Attraction -Variant:A:Lights:2 3 6 -Variant:B:Lights:2 4 6 -Variant:C:Lights:2 5 6 -Variant:D:Lights:3 4 6 -Variant:E:Lights:3 5 6 -Variant:F:Lights:4 5 6 K:Visit:TrigRoll K:Prize:TrigPrize SVar:TrigRoll:DB$ RollDice | ResultSVar$ Result | Sides$ 6 | SubAbility$ DBCounters | SpellDescription$ Roll a six-sided die. Put a number of luck counters on CARDNAME equal to the result and create a Treasure token. Then if there are six or more luck counters on CARDNAME, claim the prize! @@ -17,3 +11,12 @@ SVar:TrigPrize:DB$ Token | TokenAmount$ 2 | TokenScript$ c_a_treasure_sac | SubA SVar:DBSack:DB$ Sacrifice | SacValid$ Self | SubAbility$ DBOpen SVar:DBOpen:DB$ OpenAttraction Oracle:Visit — Roll a six-sided die. Put a number of luck counters on Pick-a-Beeble equal to the result and create a Treasure token. Then if there are six or more luck counters on Pick-a-Beeble, claim the prize!\nPrize — Create two Treasure tokens, then sacrifice Pick-a-Beeble and open an Attraction. + +# --- VARIANTS --- + +Variant:A:Lights:2 3 6 +Variant:B:Lights:2 4 6 +Variant:C:Lights:2 5 6 +Variant:D:Lights:3 4 6 +Variant:E:Lights:3 5 6 +Variant:F:Lights:4 5 6 diff --git a/forge-gui/res/cardsfolder/p/piety_charm.txt b/forge-gui/res/cardsfolder/p/piety_charm.txt index 492b94b03e8..2bf745761a0 100644 --- a/forge-gui/res/cardsfolder/p/piety_charm.txt +++ b/forge-gui/res/cardsfolder/p/piety_charm.txt @@ -5,6 +5,6 @@ A:SP$ Charm | Choices$ DetroyAura,PumpSoldier,PumpVigilance | CharmNum$ 1 SVar:DetroyAura:DB$ Destroy | ValidTgts$ Aura.AttachedTo Creature | TgtPrompt$ Select target Aura attached to a creature | SpellDescription$ Destroy target Aura attached to a creature. SVar:PumpSoldier:DB$ Pump | NumAtt$ +2 | NumDef$ +2 | ValidTgts$ Creature.Soldier | TgtPrompt$ Select target Soldier creature | SpellDescription$ Target Soldier creature gets +2/+2 until end of turn. SVar:PumpVigilance:DB$ PumpAll | ValidCards$ Creature.YouCtrl | KW$ Vigilance | SpellDescription$ Creatures you control gain vigilance until end of turn. -DeckHints:Type$Soldier AI:RemoveDeck:Random +DeckHints:Type$Soldier Oracle:Choose one —\n• Destroy target Aura attached to a creature.\n• Target Soldier creature gets +2/+2 until end of turn.\n• Creatures you control gain vigilance until end of turn. diff --git a/forge-gui/res/cardsfolder/p/plunderers_prize.txt b/forge-gui/res/cardsfolder/p/plunderers_prize.txt index 7e21573c944..dc7d422379a 100644 --- a/forge-gui/res/cardsfolder/p/plunderers_prize.txt +++ b/forge-gui/res/cardsfolder/p/plunderers_prize.txt @@ -9,6 +9,6 @@ SVar:RaiseCost:Mode$ RaiseCost | ValidCard$ Card.Self | Type$ Spell | Amount$ 1 SVar:DBReturn:DB$ ChangeZone | Origin$ Stack | Destination$ Hand | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Count$xPaid -DeckNeeds:Type$Artifact AI:RemoveDeck:Random +DeckNeeds:Type$Artifact Oracle:Seek a nonland artifact card with mana value X or less and put it onto the battlefield. If a card with mana value less than X is put onto the battlefield this way, this spell perpetually gains "This spell costs {1} more to cast," then return this spell to its owner's hand. diff --git a/forge-gui/res/cardsfolder/p/primal_adversary.txt b/forge-gui/res/cardsfolder/p/primal_adversary.txt index d4c623b6bf6..c222c230203 100644 --- a/forge-gui/res/cardsfolder/p/primal_adversary.txt +++ b/forge-gui/res/cardsfolder/p/primal_adversary.txt @@ -8,6 +8,6 @@ SVar:TrigPay:AB$ ImmediateTrigger | Cost$ Mana<1 G\NumTimes> | Announce$ NumTime SVar:TrigPutCounter:DB$ PutCounter | CounterType$ P1P1 | CounterNum$ X | SubAbility$ DBAnimate SVar:DBAnimate:DB$ Animate | TargetMin$ 0 | TargetMax$ X | ValidTgts$ Land.YouCtrl | TgtPrompt$ Select up to that many target lands you control | Power$ 3 | Toughness$ 3 | Types$ Wolf,Creature | Keywords$ Haste | Duration$ Permanent SVar:X:Count$TriggerRememberAmount -DeckHas:Ability$Counters AI:RemoveDeck:All +DeckHas:Ability$Counters Oracle:Trample\nWhen Primal Adversary enters, you may pay {1}{G} any number of times. When you pay this cost one or more times, put that many +1/+1 counters on Primal Adversary, then up to that many target lands you control become 3/3 Wolf creatures with haste that are still lands. diff --git a/forge-gui/res/cardsfolder/p/profane_transfusion.txt b/forge-gui/res/cardsfolder/p/profane_transfusion.txt index 779caf1de28..fd7d8736c8c 100644 --- a/forge-gui/res/cardsfolder/p/profane_transfusion.txt +++ b/forge-gui/res/cardsfolder/p/profane_transfusion.txt @@ -5,6 +5,6 @@ A:SP$ ExchangeLife | TargetMin$ 2 | TargetMax$ 2 | ValidTgts$ Player | TgtPrompt SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_x_x_a_horror | TokenOwner$ You | TokenPower$ X | TokenToughness$ X | SubAbility$ DBCleanup | StackDescription$ {p:You} creates an X/X colorless Horror artifact creature token, where X is the difference between those players' life totals. SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Count$RememberedNumber/Abs -DeckHas:Ability$Token AI:RemoveDeck:All +DeckHas:Ability$Token Oracle:Two target players exchange life totals. You create an X/X colorless Horror artifact creature token, where X is the difference between those players' life totals. diff --git a/forge-gui/res/cardsfolder/p/promise_of_power.txt b/forge-gui/res/cardsfolder/p/promise_of_power.txt index 3d2e885a35c..92d68bc49d8 100644 --- a/forge-gui/res/cardsfolder/p/promise_of_power.txt +++ b/forge-gui/res/cardsfolder/p/promise_of_power.txt @@ -7,6 +7,6 @@ SVar:DBDraw:DB$ Draw | NumCards$ 5 | SpellDescription$ You draw five cards and y SVar:DBLoseLife:DB$ LoseLife | LifeAmount$ 5 SVar:DBToken:DB$ Token | TokenScript$ b_x_x_demon_flying | TokenPower$ X | TokenToughness$ X | SpellDescription$ Create an X/X black Demon creature token with flying, where X is the number of cards in your hand. SVar:X:Count$InYourHand -DeckHas:Ability$Token & Type$Demon AI:RemoveDeck:All +DeckHas:Ability$Token & Type$Demon Oracle:Choose one —\n• You draw five cards and you lose 5 life.\n• Create an X/X black Demon creature token with flying, where X is the number of cards in your hand.\nEntwine {4} (Choose both if you pay the entwine cost.) diff --git a/forge-gui/res/cardsfolder/p/prowling_geistcatcher.txt b/forge-gui/res/cardsfolder/p/prowling_geistcatcher.txt index c6ad7a29df2..c965420fdf6 100644 --- a/forge-gui/res/cardsfolder/p/prowling_geistcatcher.txt +++ b/forge-gui/res/cardsfolder/p/prowling_geistcatcher.txt @@ -7,7 +7,7 @@ SVar:TrigExile:DB$ ChangeZone | Defined$ TriggeredCard | Origin$ Graveyard | Des SVar:TokenPlus:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 | ConditionDefined$ TriggeredCardLKICopy | ConditionPresent$ Creature.token T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ TrigReturn | TriggerDescription$ When CARDNAME leaves the battlefield, return each card exiled with it to the battlefield under your control. SVar:TrigReturn:DB$ ChangeZoneAll | ChangeType$ Card.ExiledWithSource | Origin$ Exile | Destination$ Battlefield | GainControl$ True -DeckNeeds:Ability$Sacrifice DeckHas:Ability$Counters DeckHints:Ability$Token +DeckNeeds:Ability$Sacrifice Oracle:Whenever you sacrifice another creature, exile it. If that creature was a token, put a +1/+1 counter on Prowling Geistcatcher.\nWhen Prowling Geistcatcher leaves the battlefield, return each card exiled with it to the battlefield under your control. diff --git a/forge-gui/res/cardsfolder/p/psionic_ritual.txt b/forge-gui/res/cardsfolder/p/psionic_ritual.txt index 930e53e801e..6cb59ad44f1 100644 --- a/forge-gui/res/cardsfolder/p/psionic_ritual.txt +++ b/forge-gui/res/cardsfolder/p/psionic_ritual.txt @@ -6,8 +6,8 @@ A:SP$ ChangeZone | Origin$ Graveyard | Destination$ Exile | TgtPrompt$ Choose ta SVar:DBCopy:DB$ Play | Defined$ Remembered | Amount$ All | CopyCard$ True | WithoutManaCost$ True | Optional$ True | SubAbility$ ExileSelf SVar:ExileSelf:DB$ ChangeZone | Origin$ Stack | Destination$ Exile | Defined$ Self | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +AI:RemoveDeck:All DeckNeeds:Type$Horror DeckHints:Type$Instant|Sorcery DeckHas:Ability$Graveyard -AI:RemoveDeck:All Oracle:Replicate—Tap an untapped Horror you control. (When you cast this spell, copy it for each time you paid its replicate cost. You may choose new targets for the copies.)\nExile target instant or sorcery card from a graveyard and copy it. You may cast the copy without paying its mana cost.\nExile Psionic Ritual. diff --git a/forge-gui/res/cardsfolder/r/rage_weaver.txt b/forge-gui/res/cardsfolder/r/rage_weaver.txt index 8b99ef5441e..ec89f761f94 100644 --- a/forge-gui/res/cardsfolder/r/rage_weaver.txt +++ b/forge-gui/res/cardsfolder/r/rage_weaver.txt @@ -3,6 +3,6 @@ ManaCost:1 R Types:Creature Human Wizard PT:2/1 A:AB$ Pump | Cost$ 2 | ValidTgts$ Creature.Black,Creature.Green | KW$ Haste | SpellDescription$ Target black or green creature gains haste until end of turn. | TgtPrompt$ Select target black or green creature. -DeckHints:Color$Black|Green AI:RemoveDeck:Random +DeckHints:Color$Black|Green Oracle:{2}: Target black or green creature gains haste until end of turn. (It can attack and {T} this turn.) diff --git a/forge-gui/res/cardsfolder/r/raised_by_giants.txt b/forge-gui/res/cardsfolder/r/raised_by_giants.txt index 9a602d03eb0..da177a75475 100644 --- a/forge-gui/res/cardsfolder/r/raised_by_giants.txt +++ b/forge-gui/res/cardsfolder/r/raised_by_giants.txt @@ -2,6 +2,6 @@ Name:Raised by Giants ManaCost:5 G Types:Legendary Enchantment Background S:Mode$ Continuous | Affected$ Creature.IsCommander+YouOwn | SetPower$ 10 | SetToughness$ 10 | AddType$ Giant | Description$ Commander creatures you own have base power and toughness 10/10 and are Giants in addition to their other types. -DeckHas:Type$Giant AI:RemoveDeck:NonCommander +DeckHas:Type$Giant Oracle:Commander creatures you own have base power and toughness 10/10 and are Giants in addition to their other types. diff --git a/forge-gui/res/cardsfolder/r/ral_monsoon_mage_ral_leyline_prodigy.txt b/forge-gui/res/cardsfolder/r/ral_monsoon_mage_ral_leyline_prodigy.txt index 0c8a5313113..f1af2f10d45 100644 --- a/forge-gui/res/cardsfolder/r/ral_monsoon_mage_ral_leyline_prodigy.txt +++ b/forge-gui/res/cardsfolder/r/ral_monsoon_mage_ral_leyline_prodigy.txt @@ -9,8 +9,8 @@ SVar:DBDamage:DB$ DealDamage | Defined$ You | NumDmg$ 1 SVar:DBTransform:DB$ ChangeZone | Origin$ Battlefield | Destination$ Exile | RememberChanged$ True | Optional$ True | SubAbility$ DBReturn SVar:DBReturn:DB$ ChangeZone | Defined$ Remembered | Origin$ Exile | Destination$ Battlefield | Transformed$ True | ForgetOtherRemembered$ True | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -AlternateMode:DoubleFaced DeckNeeds:Type$Instant|Sorcery +AlternateMode:DoubleFaced Oracle:Instant and sorcery spells you cast cost {1} less to cast.\nWhenever you cast an instant or sorcery spell during your turn, flip a coin. If you lose the flip, Ral, Monsoon Mage deals 1 damage to you. If you win the flip, you may exile Ral. If you do, return him to the battlefield transformed under his owner's control. ALTERNATE diff --git a/forge-gui/res/cardsfolder/r/razias_purification.txt b/forge-gui/res/cardsfolder/r/razias_purification.txt index 3da870fae22..c7936c03a62 100644 --- a/forge-gui/res/cardsfolder/r/razias_purification.txt +++ b/forge-gui/res/cardsfolder/r/razias_purification.txt @@ -3,6 +3,6 @@ ManaCost:4 R W Types:Sorcery A:SP$ ChooseCard | Defined$ Player | Choices$ Permanent | ControlledByPlayer$ Chooser | Amount$ 3 | ChoiceTitle$ Choose three permanents to keep | Mandatory$ True | Reveal$ True | SubAbility$ DBSac | StackDescription$ SpellDescription | SpellDescription$ Each player chooses three permanents they control, then sacrifices the rest. SVar:DBSac:DB$ SacrificeAll | ValidCards$ Permanent.nonChosenCard -DeckHas:Ability$Sacrifice AI:RemoveDeck:All +DeckHas:Ability$Sacrifice Oracle:Each player chooses three permanents they control, then sacrifices the rest. diff --git a/forge-gui/res/cardsfolder/r/reconstruction.txt b/forge-gui/res/cardsfolder/r/reconstruction.txt index f690a0552ef..a0b5d1166e3 100644 --- a/forge-gui/res/cardsfolder/r/reconstruction.txt +++ b/forge-gui/res/cardsfolder/r/reconstruction.txt @@ -3,6 +3,6 @@ ManaCost:U Types:Sorcery A:SP$ ChangeZone | Origin$ Graveyard | Destination$ Hand | TgtPrompt$ Choose target artifact card in your graveyard | ValidTgts$ Artifact.YouCtrl | SpellDescription$ Return target artifact card from your graveyard to your hand. DeckHas:Ability$Graveyard -DeckNeeds:Type$Artifact DeckHints:Ability$Mill +DeckNeeds:Type$Artifact Oracle:Return target artifact card from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/r/redrock_sentinel.txt b/forge-gui/res/cardsfolder/r/redrock_sentinel.txt index f6d984a15db..270d1777f04 100644 --- a/forge-gui/res/cardsfolder/r/redrock_sentinel.txt +++ b/forge-gui/res/cardsfolder/r/redrock_sentinel.txt @@ -1,8 +1,8 @@ Name:Redrock Sentinel ManaCost:3 Types:Artifact Creature Golem -K:Defender PT:2/4 +K:Defender A:AB$ Draw | Cost$ 2 T Sac<1/Land> | NumCards$ 1 | SubAbility$ DBTreasure | SpellDescription$ Draw a card and create a Treasure token. (It's an artifact with "{T}, Sacrifice this artifact: Add one mana of any color.") SVar:DBTreasure:DB$ Token | TokenScript$ c_a_treasure_sac Oracle:Defender\n{2}, {T}, Sacrifice a land: Draw a card and create a Treasure token. (It's an artifact with "{T}, Sacrifice this artifact: Add one mana of any color.") diff --git a/forge-gui/res/cardsfolder/r/relic_amulet.txt b/forge-gui/res/cardsfolder/r/relic_amulet.txt index a933ccac892..c2f82bdd1bf 100644 --- a/forge-gui/res/cardsfolder/r/relic_amulet.txt +++ b/forge-gui/res/cardsfolder/r/relic_amulet.txt @@ -6,7 +6,7 @@ SVar:TrigCounter:DB$ PutCounter | Defined$ Self | CounterType$ CHARGE | CounterN A:AB$ DealDamage | Cost$ 2 T SubCounter | NumDmg$ X | ValidTgts$ Creature | TgtPrompt$ Select target creature | SpellDescription$ It deals that much damage to target creature. SVar:X:SVar$CostCountersRemoved SVar:BuffedBy:Instant,Sorcery,Wizard +AI:RemoveDeck:Random DeckNeeds:Type$Instant|Sorcery|Wizard DeckHas:Ability$Counters -AI:RemoveDeck:Random Oracle:Whenever you cast an instant, sorcery, or Wizard spell, put a charge counter on Relic Amulet.\n{2}, {T}, Remove all charge counters from Relic Amulet: It deals that much damage to target creature. diff --git a/forge-gui/res/cardsfolder/r/renowned_weaponsmith.txt b/forge-gui/res/cardsfolder/r/renowned_weaponsmith.txt index 5034c93fc2c..fdbfe3e12a9 100644 --- a/forge-gui/res/cardsfolder/r/renowned_weaponsmith.txt +++ b/forge-gui/res/cardsfolder/r/renowned_weaponsmith.txt @@ -4,6 +4,6 @@ Types:Creature Human Artificer PT:1/3 A:AB$ Mana | Cost$ T | Produced$ C | Amount$ 2 | RestrictValid$ Spell.Artifact,Activated.Artifact+inZoneBattlefield | SpellDescription$ Add {C}{C}. Spend this mana only to cast artifact spells or activate abilities of artifacts. A:AB$ ChangeZone | Cost$ U T | Origin$ Library | Destination$ Hand | ChangeType$ Card.namedHeart-Piercer Bow,Card.namedVial of Dragonfire | ChangeNum$ 1 | StackDescription$ SpellDescription | SpellDescription$ Search your library for a card named Heart-Piercer Bow or Vial of Dragonfire, put it into your hand, then shuffle. -DeckHints:Name$Heart-Piercer Bow|Vial of Dragonfire AI:RemoveDeck:Random +DeckHints:Name$Heart-Piercer Bow|Vial of Dragonfire Oracle:{T}: Add {C}{C}. Spend this mana only to cast artifact spells or activate abilities of artifacts.\n{U}, {T}: Search your library for a card named Heart-Piercer Bow or Vial of Dragonfire, reveal it, put it into your hand, then shuffle. diff --git a/forge-gui/res/cardsfolder/r/resonance_technician.txt b/forge-gui/res/cardsfolder/r/resonance_technician.txt index 63430752939..f4fbf9a6e9f 100644 --- a/forge-gui/res/cardsfolder/r/resonance_technician.txt +++ b/forge-gui/res/cardsfolder/r/resonance_technician.txt @@ -8,6 +8,6 @@ SVar:TrigInvestigate:AB$ Investigate | Cost$ Discard<1/Card> | Num$ 2 A:AB$ CopySpellAbility | Cost$ T tapXType | ValidTgts$ Instant.YouCtrl+cmcEQX,Sorcery.YouCtrl+cmcEQX | TargetType$ Spell | AILogic$ OnceIfViable | MayChooseTarget$ True | SpellDescription$ Copy target instant or sorcery spell you control with mana value X. You may choose new targets for the copy. SVar:X:Count$xPaid DeckHas:Ability$Discard|Sacrifice|Investigate|Token & Type$Clue|Artifact -DeckNeeds:Type$Artifact DeckHints:Type$Instant|Sorcery +DeckNeeds:Type$Artifact Oracle:Flying\nWhen Resonance Technician enters, you may discard a card. If you do, investigate twice.\n{T}, Tap X untapped artifacts you control: Copy target instant or sorcery spell you control with mana value X. You may choose new targets for the copy. diff --git a/forge-gui/res/cardsfolder/r/resurgent_belief.txt b/forge-gui/res/cardsfolder/r/resurgent_belief.txt index bbe1629a782..ab21a857f1e 100644 --- a/forge-gui/res/cardsfolder/r/resurgent_belief.txt +++ b/forge-gui/res/cardsfolder/r/resurgent_belief.txt @@ -4,6 +4,6 @@ Colors:white Types:Sorcery K:Suspend:2:1 W A:SP$ ChangeZoneAll | ChangeType$ Enchantment.YouOwn | Origin$ Graveyard | Destination$ Battlefield | SpellDescription$ Return all enchantment cards from your graveyard to the battlefield. (Auras with nothing to enchant remain in your graveyard.) -DeckNeeds:Type$Enchantment AI:RemoveDeck:Random +DeckNeeds:Type$Enchantment Oracle:Suspend 2—{1}{W} (Rather than cast this card from your hand, pay {1}{W} and exile it with two time counters on it. At the beginning of your upkeep, remove a time counter. When the last is removed, cast it without paying its mana cost.)\nReturn all enchantment cards from your graveyard to the battlefield. (Auras with nothing to enchant remain in your graveyard.) diff --git a/forge-gui/res/cardsfolder/r/ride_the_avalanche.txt b/forge-gui/res/cardsfolder/r/ride_the_avalanche.txt index 0928b85e5ec..e0cb743c95e 100644 --- a/forge-gui/res/cardsfolder/r/ride_the_avalanche.txt +++ b/forge-gui/res/cardsfolder/r/ride_the_avalanche.txt @@ -6,6 +6,6 @@ SVar:QuickenStA:Mode$ CastWithFlash | ValidCard$ Card | ValidSA$ Spell | EffectZ SVar:TrigCounters:Mode$ SpellCast | ValidCard$ Card | ValidActivatingPlayer$ You | OneOff$ True | Execute$ PutCounter | TriggerDescription$ When you cast your next spell this turn, put X +1/+1 counters on up to one target creature, where X is the mana value of that spell. SVar:PutCounter:DB$ PutCounter | CounterType$ P1P1 | CounterNum$ X | TargetMin$ 0 | TargetMax$ 1 | TgtPrompt$ Select target creature | ValidTgts$ Creature SVar:X:TriggeredStackInstance$CardManaCostLKI -DeckHas:Ability$Counters AI:RemoveDeck:All +DeckHas:Ability$Counters Oracle:The next spell you cast this turn can be cast as though it had flash. When you cast your next spell this turn, put X +1/+1 counters on up to one target creature, where X is the mana value of that spell. diff --git a/forge-gui/res/cardsfolder/r/riku_of_many_paths.txt b/forge-gui/res/cardsfolder/r/riku_of_many_paths.txt index 9bfb53b40ce..0172448e139 100644 --- a/forge-gui/res/cardsfolder/r/riku_of_many_paths.txt +++ b/forge-gui/res/cardsfolder/r/riku_of_many_paths.txt @@ -12,6 +12,6 @@ SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:DBPutCounter:DB$ PutCounter | CounterType$ P1P1 | SubAbility$ DBPump | SpellDescription$ Put a +1/+1 counter on CARDNAME. It gains trample until end of turn. SVar:DBPump:DB$ Pump | KW$ Trample | StackDescription$ It gains trample until end of turn. SVar:DBToken:DB$ Token | TokenScript$ u_1_1_bird_flying | SpellDescription$ Create a 1/1 blue Bird creature token with flying. -DeckHas:Ability$Counters|Token & Type$Bird AI:RemoveDeck:Random +DeckHas:Ability$Counters|Token & Type$Bird Oracle:Whenever you cast a modal spell, choose up to X, where X is the number of times you chose a mode for that spell —\n• Exile the top card of your library. Until the end of your next turn, you may play it.\n• Put a +1/+1 counter on Riku of Many Paths. It gains trample until end of turn.\n• Create a 1/1 blue Bird creature token with flying. diff --git a/forge-gui/res/cardsfolder/r/rite_of_the_raging_storm.txt b/forge-gui/res/cardsfolder/r/rite_of_the_raging_storm.txt index adb824a195f..3c522eeb529 100644 --- a/forge-gui/res/cardsfolder/r/rite_of_the_raging_storm.txt +++ b/forge-gui/res/cardsfolder/r/rite_of_the_raging_storm.txt @@ -4,6 +4,6 @@ Types:Enchantment S:Mode$ CantAttack | ValidCard$ Creature.namedLightning Rager | Target$ You,Planeswalker.YouCtrl | Description$ Creatures named Lightning Rager can't attack you or planeswalkers you control. T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player | Execute$ TrigToken | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of each player's upkeep, that player creates a 5/1 red Elemental creature token named Lightning Rager. It has trample, haste, and "At the beginning of the end step, sacrifice this creature." SVar:TrigToken:DB$ Token | TokenScript$ lightning_rager | TokenOwner$ TriggeredPlayer -DeckHas:Ability$Token AI:RemoveDeck:Random +DeckHas:Ability$Token Oracle:Creatures named Lightning Rager can't attack you or planeswalkers you control.\nAt the beginning of each player's upkeep, that player creates a 5/1 red Elemental creature token named Lightning Rager. It has trample, haste, and "At the beginning of the end step, sacrifice this creature." diff --git a/forge-gui/res/cardsfolder/r/rogues_gallery.txt b/forge-gui/res/cardsfolder/r/rogues_gallery.txt index 7005920d3fa..ad6addfc846 100644 --- a/forge-gui/res/cardsfolder/r/rogues_gallery.txt +++ b/forge-gui/res/cardsfolder/r/rogues_gallery.txt @@ -6,6 +6,6 @@ SVar:ReturnU:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | TgtPrompt$ SVar:ReturnB:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | TgtPrompt$ Select up to one target black creature card in your graveyard | ValidTgts$ Creature.Black+YouOwn | TargetMin$ 0 | TargetMax$ 1 | LockInText$ True | SubAbility$ ReturnR SVar:ReturnR:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | TgtPrompt$ Select up to one target red creature card in your graveyard | ValidTgts$ Creature.Red+YouOwn | TargetMin$ 0 | TargetMax$ 1 | LockInText$ True | SubAbility$ ReturnG SVar:ReturnG:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | TgtPrompt$ Select up to one target green creature card in your graveyard | ValidTgts$ Creature.Green+YouOwn | TargetMin$ 0 | LockInText$ True | TargetMax$ 1 -DeckHas:Ability$Graveyard AI:RemoveDeck:Random +DeckHas:Ability$Graveyard Oracle:For each color, return up to one target creature card of that color from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/r/roller_coaster.txt b/forge-gui/res/cardsfolder/r/roller_coaster.txt index 663d8450b9e..f9b41ad9ab4 100644 --- a/forge-gui/res/cardsfolder/r/roller_coaster.txt +++ b/forge-gui/res/cardsfolder/r/roller_coaster.txt @@ -1,10 +1,13 @@ Name:Roller Coaster ManaCost:no cost Types:Artifact Attraction +K:Visit:TrigPump +SVar:TrigPump:DB$ PumpAll | ValidCards$ Creature.YouCtrl | NumAtt$ +2 | SpellDescription$ Creatures you control get +2/+0 until end of turn. +Oracle:Visit — Creatures you control get +2/+0 until end of turn. + +# --- VARIANTS --- + Variant:A:Lights:2 6 Variant:B:Lights:3 6 Variant:C:Lights:4 6 Variant:D:Lights:5 6 -K:Visit:TrigPump -SVar:TrigPump:DB$ PumpAll | ValidCards$ Creature.YouCtrl | NumAtt$ +2 | SpellDescription$ Creatures you control get +2/+0 until end of turn. -Oracle:Visit — Creatures you control get +2/+0 until end of turn. diff --git a/forge-gui/res/cardsfolder/r/runed_arch.txt b/forge-gui/res/cardsfolder/r/runed_arch.txt index 5729552a379..7d6318fcbf0 100644 --- a/forge-gui/res/cardsfolder/r/runed_arch.txt +++ b/forge-gui/res/cardsfolder/r/runed_arch.txt @@ -6,6 +6,6 @@ SVar:ETBTapped:DB$ Tap | Defined$ Self | ETB$ True A:AB$ Effect | Cost$ X T Sac<1/CARDNAME> | StaticAbilities$ Unblockable | TargetMin$ X | TargetMax$ X | ValidTgts$ Creature.powerLE2 | TgtPrompt$ Select X target creatures with power 2 or less | RememberObjects$ Targeted | ForgetOnMoved$ Battlefield | StackDescription$ X target creatures with power 2 or less [{c:Targeted}] can't be blocked this turn. | SpellDescription$ X target creatures with power 2 or less can't be blocked this turn. SVar:Unblockable:Mode$ CantBlockBy | ValidAttacker$ Card.IsRemembered | Description$ These creatures can't be blocked this turn. SVar:X:Count$xPaid -DeckHas:Ability$Sacrifice AI:RemoveDeck:Random +DeckHas:Ability$Sacrifice Oracle:Runed Arch enters tapped.\n{X}, {T}, Sacrifice Runed Arch: X target creatures with power 2 or less can't be blocked this turn. diff --git a/forge-gui/res/cardsfolder/r/runeforge_champion.txt b/forge-gui/res/cardsfolder/r/runeforge_champion.txt index ef97f1f985c..9b08881838c 100644 --- a/forge-gui/res/cardsfolder/r/runeforge_champion.txt +++ b/forge-gui/res/cardsfolder/r/runeforge_champion.txt @@ -5,6 +5,6 @@ PT:2/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigChange | OptionalDecider$ You | TriggerDescription$ When CARDNAME enters, you may search your library and/or graveyard for a Rune card, reveal it, and put it into your hand. If you search your library this way, shuffle. SVar:TrigChange:DB$ ChangeZone | Origin$ Library | OriginAlternative$ Graveyard | Destination$ Hand | ChangeType$ Rune.YouOwn | ChangeNum$ 1 | Optional$ True S:Mode$ AlternativeCost | ValidSA$ Spell | ValidCard$ Card.Rune | ValidPlayer$ You | Cost$ 1 | Description$ You may pay {1} rather than pay the mana cost for Rune spells you cast. -DeckNeeds:Type$Rune AI:RemoveDeck:Random +DeckNeeds:Type$Rune Oracle:When Runeforge Champion enters, you may search your library and/or graveyard for a Rune card, reveal it, and put it into your hand. If you search your library this way, shuffle.\nYou may pay {1} rather than pay the mana cost for Rune spells you cast. diff --git a/forge-gui/res/cardsfolder/r/rustic_clachan.txt b/forge-gui/res/cardsfolder/r/rustic_clachan.txt index 2dfccdd209b..f706e0b755b 100644 --- a/forge-gui/res/cardsfolder/r/rustic_clachan.txt +++ b/forge-gui/res/cardsfolder/r/rustic_clachan.txt @@ -5,7 +5,7 @@ K:Reinforce:1:1 W A:AB$ Mana | Cost$ T | Produced$ W | SpellDescription$ Add {W}. R:Event$ Moved | ValidCard$ Card.Self | Destination$ Battlefield | ReplaceWith$ DBTap | ReplacementResult$ Updated | Description$ As CARDNAME enters, you may reveal a Kithkin card from your hand. If you don't, CARDNAME enters tapped. SVar:DBTap:DB$ Tap | ETB$ True | Defined$ Self | UnlessCost$ Reveal<1/Kithkin> | UnlessPayer$ You | StackDescription$ enters tapped. -DeckHints:Type$Kithkin DeckHas:Ability$Counters +DeckHints:Type$Kithkin DeckNeeds:Type$Creature Oracle:As Rustic Clachan enters, you may reveal a Kithkin card from your hand. If you don't, Rustic Clachan enters tapped.\n{T}: Add {W}.\nReinforce 1—{1}{W} ({1}{W}, Discard this card: Put a +1/+1 counter on target creature.) diff --git a/forge-gui/res/cardsfolder/rebalanced/a-alrund_god_of_the_cosmos_hakka_whispering_raven.txt b/forge-gui/res/cardsfolder/rebalanced/a-alrund_god_of_the_cosmos_hakka_whispering_raven.txt index ab17f9d2ade..2df0451162c 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-alrund_god_of_the_cosmos_hakka_whispering_raven.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-alrund_god_of_the_cosmos_hakka_whispering_raven.txt @@ -9,8 +9,8 @@ SVar:Z:SVar$X/Plus.Y T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigChooseCardType | TriggerDescription$ At the beginning of your end step, choose a card type, then reveal the top three cards of your library. Put all cards of the chosen type revealed this way into your hand and the rest on the bottom of your library in any order. SVar:TrigChooseCardType:DB$ ChooseType | Defined$ You | Type$ Card | SubAbility$ DBDig SVar:DBDig:DB$ Dig | DigNum$ 3 | Reveal$ True | ChangeNum$ All | ChangeValid$ Card.ChosenType | DestinationZone2$ Library | LibraryPosition$ -1 -DeckHints:Keyword$Foretell AI:RemoveDeck:All +DeckHints:Keyword$Foretell AlternateMode:Modal Oracle:Alrund gets +1/+1 for each card in your hand and each foretold card you own in exile.\nAt the beginning of your end step, choose a card type, then reveal the top three cards of your library. Put all cards of the chosen type revealed this way into your hand and the rest on the bottom of your library in any order. diff --git a/forge-gui/res/cardsfolder/rebalanced/a-briar_hydra.txt b/forge-gui/res/cardsfolder/rebalanced/a-briar_hydra.txt index 71b3d576a3d..35e14f3ba8a 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-briar_hydra.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-briar_hydra.txt @@ -6,6 +6,6 @@ K:Trample T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | Execute$ DBCounter | TriggerZones$ Battlefield | TriggerDescription$ Domain — Whenever CARDNAME deals combat damage to a player, put X +1/+1 counters on target creature you control, where X is the number of basic land types among lands you control. SVar:DBCounter:DB$ PutCounter | CounterNum$ X | CounterType$ P1P1 | ValidTgts$ Creature.YouCtrl SVar:X:Count$Domain -DeckHas:Ability$Counters AI:RemoveDeck:Random +DeckHas:Ability$Counters Oracle:Trample\nDomain — Whenever Briar Hydra deals combat damage to a player, put X +1/+1 counters on target creature you control, where X is the number of basic land types among lands you control. diff --git a/forge-gui/res/cardsfolder/rebalanced/a-elderfang_ritualist.txt b/forge-gui/res/cardsfolder/rebalanced/a-elderfang_ritualist.txt index 24540397809..7529db23183 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-elderfang_ritualist.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-elderfang_ritualist.txt @@ -6,7 +6,7 @@ T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ SVar:TrigExile:DB$ ChangeZone | Defined$ TriggeredNewCardLKICopy | Origin$ Graveyard | Destination$ Exile | SubAbility$ DBChangeZone SVar:DBChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | ValidTgts$ Elf.Other+YouOwn,Tyvar.Other+YouOwn | TgtPrompt$ Select another target Elf or Tyvar card from your graveyard SVar:SacMe:2 -DeckNeeds:Type$Elf DeckHas:Ability$Graveyard DeckHints:Type$Tyvar +DeckNeeds:Type$Elf Oracle:When Elderfang Ritualist dies, you may exile it. If you do, return another target Elf or Tyvar card from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/rebalanced/a-saheeli_filigree_master.txt b/forge-gui/res/cardsfolder/rebalanced/a-saheeli_filigree_master.txt index 75f8d210f72..a49979113e2 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-saheeli_filigree_master.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-saheeli_filigree_master.txt @@ -8,7 +8,6 @@ A:AB$ Token | Cost$ SubCounter<2/LOYALTY> | Planeswalker$ True | PumpDuration$ E A:AB$ Effect | Cost$ SubCounter<4/LOYALTY> | Name$ Emblem — Saheeli, Filigree Master | StaticAbilities$ EmblemArtifactPump,ReduceCost | Planeswalker$ True | Ultimate$ True | Stackable$ False | Duration$ Permanent | AILogic$ Always | SpellDescription$ You get an emblem with "Artifact creatures you control get +1/+1" and "Artifact spells you cast cost {1} less to cast." SVar:EmblemArtifactPump:Mode$ Continuous | AddPower$ 1 | AddToughness$ 1 | EffectZone$ Command | Affected$ Artifact.YouCtrl | AffectedZone$ Battlefield | Description$ Artifact creatures you control get +1/+1. SVar:ReduceCost:Mode$ ReduceCost | ValidCard$ Artifact | Type$ Spell | Activator$ You | Amount$ 1 | Description$ Artifact spells you cast cost {1} less to cast. -DeckHas:Ability$Token -DeckHints:Type$Artifact DeckHas:Ability$Token & Type$Thopter +DeckHints:Type$Artifact Oracle:[+1]: Scry 2. If you control an artifact, draw a card.\n[-2]: Create two 1/1 colorless Thopter artifact creature tokens with flying. They gain haste until end of turn.\n[-4]: You get an emblem with "Artifact creatures you control get +1/+1" and "Artifact spells you cast cost {1} less to cast." diff --git a/forge-gui/res/cardsfolder/s/safana_calimport_cutthroat.txt b/forge-gui/res/cardsfolder/s/safana_calimport_cutthroat.txt index ae7721b53eb..854c04f066e 100644 --- a/forge-gui/res/cardsfolder/s/safana_calimport_cutthroat.txt +++ b/forge-gui/res/cardsfolder/s/safana_calimport_cutthroat.txt @@ -8,6 +8,6 @@ SVar:TrigTreasure:DB$ Token | TokenAmount$ X | TokenScript$ c_a_treasure_sac SVar:X:Count$Compare Y GE1.3.1 SVar:Y:PlayerCountPropertyYou$DungeonsCompleted K:Choose a Background -DeckHas:Ability$Token|Sacrifice & Type$Artifact|Treasure AI:RemoveDeck:Random +DeckHas:Ability$Token|Sacrifice & Type$Artifact|Treasure Oracle:Menace\nAt the beginning of your end step, if you have the initiative, create a Treasure token. If you've completed a dungeon, create three of those tokens instead.\nChoose a Background (You can have a Background as a second commander.) diff --git a/forge-gui/res/cardsfolder/s/saheeli_filigree_master.txt b/forge-gui/res/cardsfolder/s/saheeli_filigree_master.txt index 9412008a52d..9e170af9977 100644 --- a/forge-gui/res/cardsfolder/s/saheeli_filigree_master.txt +++ b/forge-gui/res/cardsfolder/s/saheeli_filigree_master.txt @@ -8,7 +8,6 @@ A:AB$ Token | Cost$ SubCounter<2/LOYALTY> | Planeswalker$ True | PumpDuration$ E A:AB$ Effect | Cost$ SubCounter<4/LOYALTY> | Name$ Emblem — Saheeli, Filigree Master | StaticAbilities$ EmblemArtifactPump,ReduceCost | Planeswalker$ True | Ultimate$ True | Stackable$ False | Duration$ Permanent | AILogic$ Always | SpellDescription$ You get an emblem with "Artifact creatures you control get +1/+1" and "Artifact spells you cast cost {1} less to cast." SVar:EmblemArtifactPump:Mode$ Continuous | AddPower$ 1 | AddToughness$ 1 | EffectZone$ Command | Affected$ Artifact.YouCtrl | AffectedZone$ Battlefield | Description$ Artifact creatures you control get +1/+1. SVar:ReduceCost:Mode$ ReduceCost | ValidCard$ Artifact | Type$ Spell | Activator$ You | Amount$ 1 | Description$ Artifact spells you cast cost {1} less to cast. -DeckHas:Ability$Token -DeckHints:Type$Artifact DeckHas:Ability$Token & Type$Thopter +DeckHints:Type$Artifact Oracle:[+1]: Scry 1. You may tap an untapped artifact you control. If you do, draw a card.\n[-2]: Create two 1/1 colorless Thopter artifact creature tokens with flying. They gain haste until end of turn.\n[-4]: You get an emblem with "Artifact creatures you control get +1/+1" and "Artifact spells you cast cost {1} less to cast." diff --git a/forge-gui/res/cardsfolder/s/saheelis_lattice_mastercraft_raptor.txt b/forge-gui/res/cardsfolder/s/saheelis_lattice_mastercraft_raptor.txt index 0c7fb5e8675..2609f4ce4d7 100644 --- a/forge-gui/res/cardsfolder/s/saheelis_lattice_mastercraft_raptor.txt +++ b/forge-gui/res/cardsfolder/s/saheelis_lattice_mastercraft_raptor.txt @@ -5,10 +5,10 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigDiscard:AB$ Draw | Cost$ Discard<1/Card> | NumCards$ 2 K:Craft:4 R XMin1 ExileCtrlOrGrave SVar:X:Count$xPaid -DeckHints:Ability$Discard|Mill|Sacrifice -DeckHas:Ability$Discard|Graveyard -DeckNeeds:Type$Dinosaur AI:RemoveDeck:All +DeckHas:Ability$Discard|Graveyard +DeckHints:Ability$Discard|Mill|Sacrifice +DeckNeeds:Type$Dinosaur AlternateMode:DoubleFaced Oracle:When Saheeli's Lattice enters, you may discard a card. If you do, draw two cards.\nCraft with one or more Dinosaurs {4}{R} ({4}{R}, Exile this artifact, Exile one or more Dinosaurs you control and/or Dinosaur cards from your graveyard: Return this card transformed under its owner's control. Craft only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/s/sanctify.txt b/forge-gui/res/cardsfolder/s/sanctify.txt index f1082f6ec75..20c8dc43a23 100644 --- a/forge-gui/res/cardsfolder/s/sanctify.txt +++ b/forge-gui/res/cardsfolder/s/sanctify.txt @@ -3,6 +3,6 @@ ManaCost:1 W Types:Sorcery A:SP$ Destroy | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select target artifact or enchantment | SubAbility$ DBGainLife | SpellDescription$ Destroy target artifact or enchantment. You gain 3 life. SVar:DBGainLife:DB$ GainLife | LifeAmount$ 3 -DeckHas:Ability$LifeGain AI:RemoveDeck:Random +DeckHas:Ability$LifeGain Oracle:Destroy target artifact or enchantment. You gain 3 life. diff --git a/forge-gui/res/cardsfolder/s/sanctum_of_all.txt b/forge-gui/res/cardsfolder/s/sanctum_of_all.txt index 77ae53653a6..1d7842b8bd7 100644 --- a/forge-gui/res/cardsfolder/s/sanctum_of_all.txt +++ b/forge-gui/res/cardsfolder/s/sanctum_of_all.txt @@ -4,6 +4,6 @@ Types:Legendary Enchantment Shrine T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigSearch | TriggerDescription$ At the beginning of your upkeep, you may search your library and/or graveyard for a Shrine card and put it onto the battlefield. If you search your library this way, shuffle. SVar:TrigSearch:DB$ ChangeZone | Origin$ Library | OriginAlternative$ Graveyard | Destination$ Battlefield | ChangeType$ Shrine.YouOwn | Optional$ True S:Mode$ Panharmonicon | ValidCard$ Shrine.Other+YouCtrl | IsPresent$ Shrine.YouCtrl | PresentCompare$ GE6 | Description$ If an ability of another Shrine you control triggers while you control six or more Shrines, that ability triggers an additional time. -DeckNeeds:Type$Shrine AI:RemoveDeck:Random +DeckNeeds:Type$Shrine Oracle:At the beginning of your upkeep, you may search your library and/or graveyard for a Shrine card and put it onto the battlefield. If you search your library this way, shuffle.\nIf an ability of another Shrine you control triggers while you control six or more Shrines, that ability triggers an additional time. diff --git a/forge-gui/res/cardsfolder/s/sandals_of_abdallah.txt b/forge-gui/res/cardsfolder/s/sandals_of_abdallah.txt index f240542d9ef..71bf301e2b7 100644 --- a/forge-gui/res/cardsfolder/s/sandals_of_abdallah.txt +++ b/forge-gui/res/cardsfolder/s/sandals_of_abdallah.txt @@ -4,6 +4,6 @@ Types:Artifact A:AB$ Pump | Cost$ 2 T | KW$ Landwalk:Island | ValidTgts$ Creature | TgtPrompt$ Select target creature | SubAbility$ DBDelayedTrigger | SpellDescription$ Target creature gains islandwalk until end of turn. When that creature dies this turn, destroy CARDNAME. (A creature with islandwalk can't be blocked as long as defending player controls an Island.) SVar:DBDelayedTrigger:DB$ DelayedTrigger | Mode$ ChangesZone | RememberObjects$ Targeted | ValidCard$ Card.IsTriggerRemembered | Origin$ Battlefield | Destination$ Graveyard | ThisTurn$ True | Execute$ TrigDestroy | TriggerDescription$ When that creature dies this turn, destroy CARDNAME. SVar:TrigDestroy:DB$ Destroy | Defined$ Self -DeckHas:Keyword$Islandwalk AI:RemoveDeck:Random +DeckHas:Keyword$Islandwalk Oracle:{2}, {T}: Target creature gains islandwalk until end of turn. When that creature dies this turn, destroy Sandals of Abdallah. (A creature with islandwalk can't be blocked as long as defending player controls an Island.) diff --git a/forge-gui/res/cardsfolder/s/sarulf_realm_eater.txt b/forge-gui/res/cardsfolder/s/sarulf_realm_eater.txt index 62f1f5245fe..4401091825b 100644 --- a/forge-gui/res/cardsfolder/s/sarulf_realm_eater.txt +++ b/forge-gui/res/cardsfolder/s/sarulf_realm_eater.txt @@ -10,6 +10,6 @@ SVar:DBChangeZoneAll:DB$ ChangeZoneAll | Origin$ Battlefield | Destination$ Exil SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Count$CardCounters.P1P1 SVar:Y:Count$RememberedNumber -DeckHas:Ability$Counters AI:RemoveDeck:All +DeckHas:Ability$Counters Oracle:Whenever a permanent an opponent controls is put into a graveyard from the battlefield, put a +1/+1 counter on Sarulf, Realm Eater.\nAt the beginning of your upkeep, if Sarulf has one or more +1/+1 counters on it, you may remove all of them. If you do, exile each other nonland permanent with mana value less than or equal to the number of counters removed this way. diff --git a/forge-gui/res/cardsfolder/s/scion_of_halaster.txt b/forge-gui/res/cardsfolder/s/scion_of_halaster.txt index f71819ea5c4..f04097c8fa1 100644 --- a/forge-gui/res/cardsfolder/s/scion_of_halaster.txt +++ b/forge-gui/res/cardsfolder/s/scion_of_halaster.txt @@ -6,6 +6,6 @@ SVar:Draw:Event$ Draw | ValidPlayer$ You | ReplaceWith$ DBDig | CheckSVar$ X | S SVar:DBDig:DB$ Dig | DigNum$ 2 | DestinationZone$ Graveyard | NoReveal$ True | LibraryPosition2$ 0 | SubAbility$ DBDraw SVar:DBDraw:DB$ Draw | SubAbility$ Reset SVar:X:Count$YouDrewThisTurn -DeckHas:Ability$Graveyard AI:RemoveDeck:NonCommander +DeckHas:Ability$Graveyard Oracle:Commander creatures you own have "The first time you would draw a card each turn, instead look at the top two cards of your library. Put one of them into your graveyard and the other back on top of your library. Then draw a card." diff --git a/forge-gui/res/cardsfolder/s/scrounging_bandar.txt b/forge-gui/res/cardsfolder/s/scrounging_bandar.txt index d27e0a7776b..322055f42c0 100644 --- a/forge-gui/res/cardsfolder/s/scrounging_bandar.txt +++ b/forge-gui/res/cardsfolder/s/scrounging_bandar.txt @@ -5,7 +5,7 @@ PT:0/0 K:etbCounter:P1P1:2 T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigMoveCounter | TriggerDescription$ At the beginning of your upkeep, you may move any number of +1/+1 counters from CARDNAME onto another target creature. SVar:TrigMoveCounter:DB$ MoveCounter | ValidTgts$ Creature.Other | TgtPrompt$ Select target creature | Source$ Self | CounterType$ P1P1 | CounterNum$ Any +AI:RemoveDeck:All DeckNeeds:Ability$Counters DeckHas:Ability$Counters -AI:RemoveDeck:All Oracle:Scrounging Bandar enters with two +1/+1 counters on it.\nAt the beginning of your upkeep, you may move any number of +1/+1 counters from Scrounging Bandar onto another target creature. diff --git a/forge-gui/res/cardsfolder/s/scurry_of_squirrels.txt b/forge-gui/res/cardsfolder/s/scurry_of_squirrels.txt index e0629333a21..03f811e3be8 100644 --- a/forge-gui/res/cardsfolder/s/scurry_of_squirrels.txt +++ b/forge-gui/res/cardsfolder/s/scurry_of_squirrels.txt @@ -6,6 +6,6 @@ K:Myriad K:Myriad T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | Execute$ DBCounter | TriggerZones$ Battlefield | TriggerDescription$ Whenever CARDNAME deals combat damage to a player, put a +1/+1 counter on target creature you control. SVar:DBCounter:DB$ PutCounter | CounterNum$ 1 | CounterType$ P1P1 | ValidTgts$ Creature.YouCtrl -DeckHas:Ability$Counters AI:RemoveDeck:Random +DeckHas:Ability$Counters Oracle:Myriad, myriad (Whenever this creature attacks, for each opponent other than defending player, you may create a token that's a copy of this creature that's tapped and attacking that player or a planeswalker they control. Then do it again. Exile the tokens at end of combat.)\nWhenever Scurry of Squirrels deals combat damage to a player, put a +1/+1 counter on target creature you control. diff --git a/forge-gui/res/cardsfolder/s/sefris_of_the_hidden_ways.txt b/forge-gui/res/cardsfolder/s/sefris_of_the_hidden_ways.txt index f1ce2347df9..0e1bcf77523 100644 --- a/forge-gui/res/cardsfolder/s/sefris_of_the_hidden_ways.txt +++ b/forge-gui/res/cardsfolder/s/sefris_of_the_hidden_ways.txt @@ -6,6 +6,6 @@ T:Mode$ ChangesZoneAll | ValidCards$ Creature.YouOwn+nonToken | Origin$ Any | De SVar:TrigVenture:DB$ Venture T:Mode$ DungeonCompleted | ValidPlayer$ You | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ DBReturn | TriggerDescription$ Create Undead — Whenever you complete a dungeon, return target creature card from your graveyard to the battlefield. SVar:DBReturn:DB$ ChangeZone | ValidTgts$ Creature.YouOwn | Origin$ Graveyard | Destination$ Battlefield -DeckHas:Ability$Graveyard AI:RemoveDeck:Random +DeckHas:Ability$Graveyard Oracle:Whenever one or more creature cards are put into your graveyard from anywhere, venture into the dungeon. This ability triggers only once each turn. (To venture into the dungeon, enter the first room or advance to the next room.)\nCreate Undead — Whenever you complete a dungeon, return target creature card from your graveyard to the battlefield. diff --git a/forge-gui/res/cardsfolder/s/seize_the_storm.txt b/forge-gui/res/cardsfolder/s/seize_the_storm.txt index e5bca000de0..2d938d80f03 100644 --- a/forge-gui/res/cardsfolder/s/seize_the_storm.txt +++ b/forge-gui/res/cardsfolder/s/seize_the_storm.txt @@ -4,6 +4,6 @@ Types:Sorcery A:SP$ Token | TokenScript$ r_x_x_elemental_trample_grave_exile | SpellDescription$ Create a red Elemental creature token with trample and "This creature's power and toughness are each equal to the number of instant and sorcery cards in your graveyard, plus the number of cards with flashback you own in exile." K:Flashback:6 R DeckHas:Ability$Token|Graveyard -DeckNeeds:Type$Instant|Sorcery DeckHints:Keyword$Flashback +DeckNeeds:Type$Instant|Sorcery Oracle:Create a red Elemental creature token with trample and "This creature's power and toughness are each equal to the number of instant and sorcery cards in your graveyard, plus the number of cards with flashback you own in exile."\nFlashback {6}{R} (You may cast this card from your graveyard for its flashback cost. Then exile it.) diff --git a/forge-gui/res/cardsfolder/s/shisato_whispering_hunter.txt b/forge-gui/res/cardsfolder/s/shisato_whispering_hunter.txt index 82312f3824d..1fb6960fd82 100644 --- a/forge-gui/res/cardsfolder/s/shisato_whispering_hunter.txt +++ b/forge-gui/res/cardsfolder/s/shisato_whispering_hunter.txt @@ -8,7 +8,7 @@ T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage SVar:TrigSkipPhase:DB$ SkipPhase | Defined$ TriggeredTarget | Step$ Untap SVar:NeedsToPlayVar:Z GE2 SVar:Z:Count$Valid Creature.Snake+YouCtrl+cmcLE2 -DeckNeeds:Type$Snake AI:RemoveDeck:All AI:RemoveDeck:Random +DeckNeeds:Type$Snake Oracle:At the beginning of your upkeep, sacrifice a Snake.\nWhenever Shisato, Whispering Hunter deals combat damage to a player, that player skips their next untap step. diff --git a/forge-gui/res/cardsfolder/s/sly_spy.txt b/forge-gui/res/cardsfolder/s/sly_spy.txt index 36b8c632033..975a6938c53 100644 --- a/forge-gui/res/cardsfolder/s/sly_spy.txt +++ b/forge-gui/res/cardsfolder/s/sly_spy.txt @@ -2,8 +2,11 @@ Name:Sly Spy ManaCost:2 B Types:Creature Human Spy PT:2/2 +Oracle: + +# --- VARIANT F --- + Variant:F:T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigRoll | TriggerDescription$ Whenever CARDNAME deals combat damage to a player, roll a six-sided die. That player loses life equal to the result. Variant:F:SVar:TrigRoll:DB$ RollDice | ResultSVar$ Result | SubAbility$ DBLoseLife Variant:F:SVar:DBLoseLife:DB$ LoseLife | Defined$ TriggeredTarget | LifeAmount$ Result -Oracle: Variant:F:Oracle:Whenever Sly Spy deals combat damage to a player, roll a six-sided die. That player loses life equal to the result. diff --git a/forge-gui/res/cardsfolder/s/sorin_of_house_markov_sorin_ravenous_neonate.txt b/forge-gui/res/cardsfolder/s/sorin_of_house_markov_sorin_ravenous_neonate.txt index a6a06f13e20..b1071c5ee76 100644 --- a/forge-gui/res/cardsfolder/s/sorin_of_house_markov_sorin_ravenous_neonate.txt +++ b/forge-gui/res/cardsfolder/s/sorin_of_house_markov_sorin_ravenous_neonate.txt @@ -8,18 +8,18 @@ T:Mode$ Phase | Phase$ Main2 | ValidPlayer$ You | TriggerZones$ Battlefield | Ch SVar:TrigTransform:DB$ ChangeZone | Origin$ Battlefield | Destination$ Exile | RememberChanged$ True | SubAbility$ DBReturn SVar:DBReturn:DB$ ChangeZone | Defined$ Remembered | Origin$ Exile | Destination$ Battlefield | Transformed$ True | ForgetOtherRemembered$ True | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -AlternateMode:DoubleFaced SVar:LifeGained:Count$LifeYouGainedThisTurn DeckHints:Ability$LifeGain DeckHas:Ability$LifeGain +AlternateMode:DoubleFaced Oracle:Lifelink\nExtort (Whenever you cast a spell, you may pay {W/B}. If you do, each opponent loses 1 life and you gain that much life.)\nAt the beginning of each of your postcombat main phases, if you gained 3 or more life this turn, exile Sorin of House Markov, then return him to the battlefield transformed under his owner's control. ALTERNATE Name:Sorin, Ravenous Neonate ManaCost:no cost -Types:Legendary Planeswalker Sorin Colors:white,black +Types:Legendary Planeswalker Sorin Loyalty:3 K:Extort A:AB$ Token | Cost$ AddCounter<2/LOYALTY> | Planeswalker$ True | TokenAmount$ 1 | TokenScript$ c_a_food_sac | TokenOwner$ You | SpellDescription$ Create a Food token. diff --git a/forge-gui/res/cardsfolder/s/soulherder.txt b/forge-gui/res/cardsfolder/s/soulherder.txt index 73f02b27f6d..47d592a38b0 100644 --- a/forge-gui/res/cardsfolder/s/soulherder.txt +++ b/forge-gui/res/cardsfolder/s/soulherder.txt @@ -9,6 +9,6 @@ T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefiel SVar:ConjurerExile:DB$ ChangeZone | ValidTgts$ Creature.Other+YouCtrl | TgtPrompt$ Select target creature | Origin$ Battlefield | Destination$ Exile | RememberChanged$ True | SubAbility$ ConjurerReturn SVar:ConjurerReturn:DB$ ChangeZone | Defined$ Remembered | Origin$ Exile | Destination$ Battlefield | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -DeckHas:Ability$Counters AI:RemoveDeck:Random +DeckHas:Ability$Counters Oracle:Whenever a creature is exiled from the battlefield, put a +1/+1 counter on Soulherder.\nAt the beginning of your end step, you may exile another target creature you control, then return that card to the battlefield under its owner's control. diff --git a/forge-gui/res/cardsfolder/s/space_beleren.txt b/forge-gui/res/cardsfolder/s/space_beleren.txt index 65b4fc9a978..6199a2d5fc5 100644 --- a/forge-gui/res/cardsfolder/s/space_beleren.txt +++ b/forge-gui/res/cardsfolder/s/space_beleren.txt @@ -9,6 +9,6 @@ A:AB$ ChooseSector | Cost$ SubCounter<1/LOYALTY> | Planeswalker$ True | SubAbili SVar:DBPutCounterAll:DB$ PutCounterAll | ValidCards$ Creature.ChosenSector | CounterType$ P1P1 | StackDescription$ None A:AB$ ChooseSector | Cost$ SubCounter<5/LOYALTY> | Planeswalker$ True | Ultimate$ True | SubAbility$ DBDestroyAll | AILogic$ Destroy | SpellDescription$ Destroy all creatures in the sector of your choice. SVar:DBDestroyAll:DB$ DestroyAll | ValidCards$ Creature.ChosenSector | StackDescription$ None -DeckHas:Ability$Counters AI:RemoveDeck:All +DeckHas:Ability$Counters Oracle:Space sculptor (Space Beleren divides the battlefield into alpha, beta, and gamma sectors. If a creature isn't assigned to a sector, its controller assigns it to one. Opponents assign first.)\n[+1]: Creatures in each sector can be blocked this turn only by creatures in the same sector.\n[-1]: Put a +1/+1 counter on each creature in the sector of your choice.\n[-5]: Destroy all creatures in the sector of your choice. diff --git a/forge-gui/res/cardsfolder/s/sparkspitter.txt b/forge-gui/res/cardsfolder/s/sparkspitter.txt index 1db6cdee27d..daf41a72cae 100644 --- a/forge-gui/res/cardsfolder/s/sparkspitter.txt +++ b/forge-gui/res/cardsfolder/s/sparkspitter.txt @@ -3,6 +3,6 @@ ManaCost:2 R Types:Creature Elemental Spellshaper PT:1/3 A:AB$ Token | Cost$ R T Discard<1/Card> | TokenScript$ spark_elemental | SpellDescription$ Create a 3/1 red Elemental creature token named Spark Elemental. It has trample, haste, and "At the beginning of the end step, sacrifice Spark Elemental." -DeckHas:Ability$Token AI:RemoveDeck:Random +DeckHas:Ability$Token Oracle:{R}, {T}, Discard a card: Create a 3/1 red Elemental creature token named Spark Elemental. It has trample, haste, and "At the beginning of the end step, sacrifice Spark Elemental." diff --git a/forge-gui/res/cardsfolder/s/spectral_adversary.txt b/forge-gui/res/cardsfolder/s/spectral_adversary.txt index 6f19eda2cbe..8bea971a131 100644 --- a/forge-gui/res/cardsfolder/s/spectral_adversary.txt +++ b/forge-gui/res/cardsfolder/s/spectral_adversary.txt @@ -9,6 +9,6 @@ SVar:TrigPay:AB$ ImmediateTrigger | Cost$ Mana<1 U\NumTimes> | Announce$ NumTime SVar:TrigPutCounter:DB$ PutCounter | CounterType$ P1P1 | CounterNum$ X | SubAbility$ DBPhases SVar:DBPhases:DB$ Phases | ValidTgts$ Creature.Other,Artifact.Other,Enchantment.Other | TgtPrompt$ Select up to that many other target artifacts, creatures, and/or enchantments | TargetMin$ 0 | TargetMax$ X SVar:X:Count$TriggerRememberAmount -DeckHas:Ability$Counters AI:RemoveDeck:All +DeckHas:Ability$Counters Oracle:Flash\nFlying\nWhen Spectral Adversary enters, you may pay {1}{U} any number of times. When you pay this cost one or more times, put that many +1/+1 counters on Spectral Adversary, then up to that many other target artifacts, creatures, and/or enchantments phase out. diff --git a/forge-gui/res/cardsfolder/s/spinny_ride.txt b/forge-gui/res/cardsfolder/s/spinny_ride.txt index 5a73eaa11fd..c2945d479e7 100644 --- a/forge-gui/res/cardsfolder/s/spinny_ride.txt +++ b/forge-gui/res/cardsfolder/s/spinny_ride.txt @@ -1,12 +1,15 @@ Name:Spinny Ride ManaCost:no cost Types:Artifact Attraction +K:Visit:TrigTap +SVar:TrigTap:DB$ Tap | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Choose target creature an opponent controls. | SpellDescription$ Tap target creature an opponent controls. +Oracle:Visit — Tap target creature an opponent controls. + +# --- VARIANTS --- + Variant:A:Lights:2 3 6 Variant:B:Lights:2 4 6 Variant:C:Lights:2 5 6 Variant:D:Lights:3 4 6 Variant:E:Lights:3 5 6 Variant:F:Lights:4 5 6 -K:Visit:TrigTap -SVar:TrigTap:DB$ Tap | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Choose target creature an opponent controls. | SpellDescription$ Tap target creature an opponent controls. -Oracle:Visit — Tap target creature an opponent controls. diff --git a/forge-gui/res/cardsfolder/s/stick_together.txt b/forge-gui/res/cardsfolder/s/stick_together.txt index 82231fab830..de2eecb3a24 100644 --- a/forge-gui/res/cardsfolder/s/stick_together.txt +++ b/forge-gui/res/cardsfolder/s/stick_together.txt @@ -3,8 +3,8 @@ ManaCost:3 W W Types:Sorcery A:SP$ ChooseCard | Defined$ Player | Choices$ Creature | ChooseEach$ Party | Reveal$ True | SubAbility$ SacAllOthers | StackDescription$ SpellDescription | SpellDescription$ Each player chooses a party from among creatures they control, SVar:SacAllOthers:DB$ SacrificeAll | ValidCards$ Creature.nonChosenCard | StackDescription$ then sacrifices the rest. | SpellDescription$ then sacrifices the rest. (To choose a party, choose up to one each of Cleric, Rogue, Warrior, and Wizard.) +AI:RemoveDeck:Random DeckHas:Ability$Sacrifice DeckHints:Ability$Party DeckNeeds:Type$Cleric|Rogue|Warrior|Wizard -AI:RemoveDeck:Random Oracle:Each player chooses a party from among creatures they control, then sacrifices the rest. (To choose a party, choose up to one each of Cleric, Rogue, Warrior, and Wizard.) diff --git a/forge-gui/res/cardsfolder/s/stinkdrinker_bandit.txt b/forge-gui/res/cardsfolder/s/stinkdrinker_bandit.txt index 2217a1aa2ee..6759ed61240 100644 --- a/forge-gui/res/cardsfolder/s/stinkdrinker_bandit.txt +++ b/forge-gui/res/cardsfolder/s/stinkdrinker_bandit.txt @@ -5,6 +5,6 @@ PT:2/1 K:Prowl:1 B T:Mode$ AttackerUnblocked | ValidCard$ Rogue.YouCtrl | Execute$ TrigPump | TriggerZones$ Battlefield | TriggerDescription$ Whenever a Rogue you control attacks and isn't blocked, it gets +2/+1 until end of turn. SVar:TrigPump:DB$ Pump | NumAtt$ +2 | NumDef$ +1 | Defined$ TriggeredAttacker -DeckNeeds:Type$Rogue AI:RemoveDeck:Random +DeckNeeds:Type$Rogue Oracle:Prowl {1}{B} (You may cast this for its prowl cost if you dealt combat damage to a player this turn with a Goblin or Rogue.)\nWhenever a Rogue you control attacks and isn't blocked, it gets +2/+1 until end of turn. diff --git a/forge-gui/res/cardsfolder/s/storm_kings_thunder.txt b/forge-gui/res/cardsfolder/s/storm_kings_thunder.txt index 09d17d77d05..0855227db13 100644 --- a/forge-gui/res/cardsfolder/s/storm_kings_thunder.txt +++ b/forge-gui/res/cardsfolder/s/storm_kings_thunder.txt @@ -4,6 +4,6 @@ Types:Instant A:SP$ DelayedTrigger | Execute$ EffTrigCopy | ThisTurn$ True | Mode$ SpellCast | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | SpellDescription$ When you cast your next instant or sorcery spell this turn, copy that spell X times. You may choose new targets for the copies. SVar:EffTrigCopy:DB$ CopySpellAbility | Defined$ TriggeredSpellAbility | Amount$ X | MayChooseTarget$ True SVar:X:Count$xPaid -DeckNeeds:Type$Instant|Sorcery AI:RemoveDeck:All +DeckNeeds:Type$Instant|Sorcery Oracle:When you cast your next instant or sorcery spell this turn, copy that spell X times. You may choose new targets for the copies. diff --git a/forge-gui/res/cardsfolder/s/storybook_ride.txt b/forge-gui/res/cardsfolder/s/storybook_ride.txt index 2fe3a49a092..63464c56639 100644 --- a/forge-gui/res/cardsfolder/s/storybook_ride.txt +++ b/forge-gui/res/cardsfolder/s/storybook_ride.txt @@ -1,8 +1,6 @@ Name:Storybook Ride ManaCost:no cost Types:Artifact Attraction -Variant:A:Lights:2 5 6 -Variant:B:Lights:3 4 6 K:Visit:TrigExile SVar:TrigExile:DB$ Dig | DigNum$ X | ChangeNum$ All | DestinationZone$ Exile | RememberChanged$ True | SubAbility$ DBEffect | SpellDescription$ Exile the top X cards of your library, where X is the number of Attractions you've visited this turn (including this one). You may play those cards this turn. At the beginning of the next end step, if any of those cards remain exiled, put them on the bottom of your library in any order. SVar:DBEffect:DB$ Effect | StaticAbilities$ EffSModeContinuous | ForgetOnMoved$ Exile | RememberObjects$ Remembered | SubAbility$ DBDelayTrig @@ -12,3 +10,8 @@ SVar:TrigChangeAll:DB$ ChangeZone | Defined$ DelayTriggerRememberedLKI | Origin$ SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Count$Valid Attraction.VisitedThisTurn Oracle:Visit — Exile the top X cards of your library, where X is the number of Attractions you've visited this turn (including this one). You may play those cards this turn. At the beginning of the next end step, if any of those cards remain exiled, put them on the bottom of your library in any order. + +# --- VARIANTS --- + +Variant:A:Lights:2 5 6 +Variant:B:Lights:3 4 6 diff --git a/forge-gui/res/cardsfolder/s/subira_tulzidi_caravanner.txt b/forge-gui/res/cardsfolder/s/subira_tulzidi_caravanner.txt index 22537d5ec75..e178c99e251 100644 --- a/forge-gui/res/cardsfolder/s/subira_tulzidi_caravanner.txt +++ b/forge-gui/res/cardsfolder/s/subira_tulzidi_caravanner.txt @@ -9,6 +9,6 @@ A:AB$ Effect | Cost$ 1 R T Discard<1/Hand> | Triggers$ Damage | SpellDescription SVar:Damage:Mode$ DamageDone | ValidSource$ Creature.YouCtrl+powerLE2 | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigDraw | TriggerDescription$ Until end of turn, whenever a creature you control with power 2 or less deals combat damage to a player, draw a card. SVar:TrigDraw:DB$ Draw | Defined$ You | NumCards$ 1 SVar:BuffedBy:Creature.powerLE2 -DeckHas:Ability$Discard AI:RemoveDeck:Random +DeckHas:Ability$Discard Oracle:Haste\n{1}: Another target creature with power 2 or less can't be blocked this turn.\n{1}{R}, {T}, Discard your hand: Until end of turn, whenever a creature you control with power 2 or less deals combat damage to a player, draw a card. diff --git a/forge-gui/res/cardsfolder/s/sumala_sentry.txt b/forge-gui/res/cardsfolder/s/sumala_sentry.txt index 97ecc8adbcd..34679600dea 100644 --- a/forge-gui/res/cardsfolder/s/sumala_sentry.txt +++ b/forge-gui/res/cardsfolder/s/sumala_sentry.txt @@ -5,7 +5,7 @@ PT:1/3 K:Reach T:Mode$ TurnFaceUp | ValidCard$ Permanent.YouCtrl | Execute$ TrigPutCounter | TriggerZones$ Battlefield | TriggerDescription$ Whenever a face-down permanent you control is turned face up, put a +1/+1 counter on it and a +1/+1 counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ TriggeredCardLKICopyAndSelf | CounterType$ P1P1 +AI:RemoveDeck:Random DeckHas:Ability$Counters DeckHints:Keyword$Morph|Megamorph|Disguise -AI:RemoveDeck:Random Oracle:Reach\nWhenever a face-down permanent you control is turned face up, put a +1/+1 counter on it and a +1/+1 counter on Sumala Sentry. diff --git a/forge-gui/res/cardsfolder/s/sunbird_standard_sunbird_effigy.txt b/forge-gui/res/cardsfolder/s/sunbird_standard_sunbird_effigy.txt index 0de8e1d76a6..278f4e95f38 100644 --- a/forge-gui/res/cardsfolder/s/sunbird_standard_sunbird_effigy.txt +++ b/forge-gui/res/cardsfolder/s/sunbird_standard_sunbird_effigy.txt @@ -4,9 +4,9 @@ Types:Artifact A:AB$ Mana | Cost$ T | Produced$ Any | SpellDescription$ Add one mana of any color. K:Craft:5 XMin1 ExileCtrlOrGrave SVar:X:Count$xPaid +AI:RemoveDeck:All DeckHints:Ability$Discard|Mill|Sacrifice DeckHas:Ability$Graveyard -AI:RemoveDeck:All AlternateMode:DoubleFaced Oracle:{T}: Add one mana of any color.\nCraft with one or more {5} ({5}, Exile this artifact, Exile one or more other permanents you control and/or cards from your graveyard: Return this card transformed under its owner's control. Craft only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/s/suppression_ray_orderly_plaza.txt b/forge-gui/res/cardsfolder/s/suppression_ray_orderly_plaza.txt index 57149b95563..d75c434dbe8 100644 --- a/forge-gui/res/cardsfolder/s/suppression_ray_orderly_plaza.txt +++ b/forge-gui/res/cardsfolder/s/suppression_ray_orderly_plaza.txt @@ -6,8 +6,8 @@ SVar:DBChooseNumber:DB$ ChooseNumber | Max$ Max | ListTitle$ amount of energy to SVar:DBStun:DB$ PutCounter | UnlessCost$ PayEnergy | UnlessPayer$ You | UnlessSwitched$ True | Choices$ Creature.IsRemembered | ChoiceAmount$ X | ChoiceTitle$ Choose up to X creatures tapped this way | CounterType$ Stun | StackDescription$ SpellDescription | SpellDescription$ You may pay X {E}, then choose up to X creatures tapped this way. Put a stun counter on each of them. (If a permanent with a stun counter would become untapped, remove one from it instead.) SVar:Max:Count$YourCountersEnergy SVar:X:Count$ChosenNumber -AlternateMode:Modal DeckHints:Ability$Energy +AlternateMode:Modal Oracle:Tap all creatures target player controls. You may pay X {E}, then choose up to X creatures tapped this way. Put a stun counter on each of them. (If a permanent with a stun counter would become untapped, remove one from it instead.) ALTERNATE diff --git a/forge-gui/res/cardsfolder/s/swashbuckler_extraordinaire.txt b/forge-gui/res/cardsfolder/s/swashbuckler_extraordinaire.txt index e38226d13f0..95def3f9642 100644 --- a/forge-gui/res/cardsfolder/s/swashbuckler_extraordinaire.txt +++ b/forge-gui/res/cardsfolder/s/swashbuckler_extraordinaire.txt @@ -11,6 +11,6 @@ SVar:DBPump:DB$ Pump | ValidTgts$ Creature | KW$ Double Strike | TargetMin$ 0 | SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:DBSize:Count$RememberedSize SVar:X:Count$Valid Treasure.YouCtrl -DeckHas:Ability$Token|Sacrifice & Type$Treasure|Artifact AI:RemoveDeck:All +DeckHas:Ability$Token|Sacrifice & Type$Treasure|Artifact Oracle:When Swashbuckler Extraordinaire enters, create a Treasure token. (It's an artifact with "{T}, Sacrifice this artifact: Add one mana of any color.")\nWhenever you attack, you may sacrifice one or more Treasures. When you do, up to that many target creatures gain double strike until end of turn. diff --git a/forge-gui/res/cardsfolder/s/swiftgear_drake.txt b/forge-gui/res/cardsfolder/s/swiftgear_drake.txt index 23e235c9c34..a249c78867d 100644 --- a/forge-gui/res/cardsfolder/s/swiftgear_drake.txt +++ b/forge-gui/res/cardsfolder/s/swiftgear_drake.txt @@ -6,6 +6,6 @@ K:Flying K:Haste T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigChangeZone | TriggerDescription$ When CARDNAME enters, put up to one target card from a graveyard on the bottom of its owner's library. SVar:TrigChangeZone:DB$ ChangeZone | ValidTgts$ Card | TgtPrompt$ Select up to one target card in a graveyard | TargetMin$ 0 | TargetMax$ 1 | Origin$ Graveyard | Destination$ Library | LibraryPosition$ -1 -DeckHas:Ability$Graveyard AI:RemoveDeck:Random +DeckHas:Ability$Graveyard Oracle:Flying, haste\nWhen Swiftgear Drake enters, put up to one target card from a graveyard on the bottom of its owner's library. diff --git a/forge-gui/res/cardsfolder/s/swinging_ship.txt b/forge-gui/res/cardsfolder/s/swinging_ship.txt index 170f293c734..80a58a11ebb 100644 --- a/forge-gui/res/cardsfolder/s/swinging_ship.txt +++ b/forge-gui/res/cardsfolder/s/swinging_ship.txt @@ -1,8 +1,6 @@ Name:Swinging Ship ManaCost:no cost Types:Artifact Attraction -Variant:A:Lights:2 6 -Variant:B:Lights:4 6 K:Visit:TrigEffect SVar:TrigEffect:DB$ Effect | Triggers$ STShip | SpellDescription$ Visit — After the first combat phase this turn, there's an additional combat phase. At the beginning of that combat, untap all creatures that attacked this turn. SVar:STShip:Mode$ Phase | Phase$ EndCombat | ValidPlayer$ You | FirstCombat$ True | Execute$ TrigAdditionalCombat | TriggerDescription$ After the first combat phase this turn, there's an additional combat phase. At the beginning of that combat, untap all creatures that attacked this turn. @@ -10,3 +8,8 @@ SVar:TrigAdditionalCombat:DB$ AddPhase | ExtraPhase$ Combat | AfterPhase$ EndCom SVar:DBUntapAll:DB$ UntapAll | ValidCards$ Creature.attackedThisTurn SVar:PlayMain1:TRUE Oracle:Visit — After the first combat phase this turn, there's an additional combat phase. At the beginning of that combat, untap all creatures that attacked this turn. + +# --- VARIANTS --- + +Variant:A:Lights:2 6 +Variant:B:Lights:4 6 diff --git a/forge-gui/res/cardsfolder/t/tainted_adversary.txt b/forge-gui/res/cardsfolder/t/tainted_adversary.txt index b84ef3d978b..8ed0f93285e 100644 --- a/forge-gui/res/cardsfolder/t/tainted_adversary.txt +++ b/forge-gui/res/cardsfolder/t/tainted_adversary.txt @@ -8,6 +8,6 @@ SVar:TrigPay:AB$ ImmediateTrigger | Cost$ Mana<2 B\NumTimes> | Announce$ NumTime SVar:TrigPutCounter:DB$ PutCounter | CounterType$ P1P1 | CounterNum$ X | SubAbility$ DBToken SVar:DBToken:DB$ Token | TokenScript$ b_2_2_zombie_decayed | TokenAmount$ SVar$X/Twice SVar:X:Count$TriggerRememberAmount -DeckHas:Ability$Token|Counters AI:RemoveDeck:All +DeckHas:Ability$Token|Counters Oracle:Deathtouch\nWhen Tainted Adversary enters, you may pay {2}{B} any number of times. When you pay this cost one or more times, put that many +1/+1 counters on Tainted Adversary, then create twice that many black 2/2 Zombie creature tokens with decayed. (A creature with decayed can't block. When it attacks, sacrifice it at end of combat.) diff --git a/forge-gui/res/cardsfolder/t/tamiyo_inquisitive_student_tamiyo_seasoned_scholar.txt b/forge-gui/res/cardsfolder/t/tamiyo_inquisitive_student_tamiyo_seasoned_scholar.txt index ca82abd03b0..7fa6f0574d9 100644 --- a/forge-gui/res/cardsfolder/t/tamiyo_inquisitive_student_tamiyo_seasoned_scholar.txt +++ b/forge-gui/res/cardsfolder/t/tamiyo_inquisitive_student_tamiyo_seasoned_scholar.txt @@ -9,9 +9,9 @@ T:Mode$ Drawn | ValidCard$ Card.YouCtrl | Number$ 3 | TriggerZones$ Battlefield SVar:TrigTransform:DB$ ChangeZone | Origin$ Battlefield | Destination$ Exile | RememberChanged$ True | SubAbility$ DBReturn SVar:DBReturn:DB$ ChangeZone | Defined$ Remembered | Origin$ Exile | Destination$ Battlefield | Transformed$ True | ForgetOtherRemembered$ True | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -AlternateMode:DoubleFaced DeckHints:Ability$Investigate DeckHas:Ability$Investigate|Token +AlternateMode:DoubleFaced Oracle:Flying\nWhenever Tamiyo, Inquisitive Student attacks, investigate. (Create a Clue token. It's an artifact with "{2}, Sacrifice this artifact: Draw a card.")\nWhenever you draw your third card in a turn, exile Tamiyo, then return her to the battlefield transformed under her owner's control. ALTERNATE diff --git a/forge-gui/res/cardsfolder/t/tazri_stalwart_survivor.txt b/forge-gui/res/cardsfolder/t/tazri_stalwart_survivor.txt index 910e8df1820..bc81c0c5cfb 100644 --- a/forge-gui/res/cardsfolder/t/tazri_stalwart_survivor.txt +++ b/forge-gui/res/cardsfolder/t/tazri_stalwart_survivor.txt @@ -7,6 +7,6 @@ SVar:Mana:AB$ ManaReflected | Cost$ T | Valid$ Defined.Self | ColorOrType$ Color A:AB$ Mill | Cost$ W U B R G T | NumCards$ 5 | RememberMilled$ True | SubAbility$ DBChangeZone | SpellDescription$ Mill five cards. SVar:DBChangeZone:DB$ ChangeZoneAll | ChangeType$ Creature.IsRemembered+hasNonManaActivatedAbility | Origin$ Graveyard,Exile | Destination$ Hand | SubAbility$ DBCleanup | SpellDescription$ Put all creature cards with activated abilities that aren't mana abilities from among the milled cards into your hand. SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -DeckHas:Ability$Mill AI:RemoveDeck:Random +DeckHas:Ability$Mill Oracle:Each creature you control has "{T}: Add one mana of any of this creature's colors. Spend this mana only to activate an ability of a creature. Activate only if this creature has another activated ability."\n{W}{U}{B}{R}{G}: Mill five cards. Put all creature cards with activated abilities that aren't mana abilities from among the milled cards into your hand. diff --git a/forge-gui/res/cardsfolder/t/tezzeret_master_of_metal.txt b/forge-gui/res/cardsfolder/t/tezzeret_master_of_metal.txt index 8626e855c30..d844cec7732 100644 --- a/forge-gui/res/cardsfolder/t/tezzeret_master_of_metal.txt +++ b/forge-gui/res/cardsfolder/t/tezzeret_master_of_metal.txt @@ -6,7 +6,7 @@ A:AB$ DigUntil | Cost$ AddCounter<1/LOYALTY> | Valid$ Card.Artifact | ValidDescr A:AB$ LoseLife | Cost$ SubCounter<3/LOYALTY> | Planeswalker$ True | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | LifeAmount$ X | SpellDescription$ Target opponent loses life equal to the number of artifacts you control. SVar:X:Count$Valid Artifact.YouCtrl A:AB$ GainControl | Cost$ SubCounter<8/LOYALTY> | Planeswalker$ True | Ultimate$ True | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | AllValid$ Artifact,Creature | ControlledByTarget$ True | NewController$ You | SpellDescription$ Gain control of all artifacts and creatures target opponent controls. -DeckNeeds:Type$Artifact AI:RemoveDeck:Random +DeckNeeds:Type$Artifact DeckHints:Name$Tezzeret's Betrayal Oracle:[+1]: Reveal cards from the top of your library until you reveal an artifact card. Put that card into your hand and the rest on the bottom of your library in a random order.\n[-3]: Target opponent loses life equal to the number of artifacts you control.\n[-8]: Gain control of all artifacts and creatures target opponent controls. diff --git a/forge-gui/res/cardsfolder/t/the_beamtown_bullies.txt b/forge-gui/res/cardsfolder/t/the_beamtown_bullies.txt index ba543329769..22dd9ae9b21 100644 --- a/forge-gui/res/cardsfolder/t/the_beamtown_bullies.txt +++ b/forge-gui/res/cardsfolder/t/the_beamtown_bullies.txt @@ -10,6 +10,6 @@ SVar:DBAnimate:DB$ Animate | Keywords$ Haste | Defined$ Targeted | Duration$ Per SVar:DBGoad:DB$ Goad | Defined$ Targeted | SubAbility$ DelTrig | SpellDescription$ Goad it. SVar:DelTrig:DB$ DelayedTrigger | RememberObjects$ Targeted.Creature | Mode$ Phase | Phase$ End of Turn | Execute$ TrigExile | TriggerDescription$ At the beginning of the next end step, exile it. | SpellDescription$ At the beginning of the next end step, exile it. (Until your next turn, that creature attacks each combat if able and attacks a player other than you if able.) SVar:TrigExile:DB$ ChangeZone | Origin$ Battlefield | Destination$ Exile | Defined$ DelayTriggerRememberedLKI -DeckHas:Ability$Graveyard AI:RemoveDeck:Random +DeckHas:Ability$Graveyard Oracle:Vigilance, haste\n{T}: Target opponent whose turn it is puts target nonlegendary creature card from your graveyard onto the battlefield under their control. It gains haste. Goad it. At the beginning of the next end step, exile it. (Until your next turn, that creature attacks each combat if able and attacks a player other than you if able.) diff --git a/forge-gui/res/cardsfolder/t/the_day_of_the_doctor.txt b/forge-gui/res/cardsfolder/t/the_day_of_the_doctor.txt index f2af6c78e97..343288aafe0 100644 --- a/forge-gui/res/cardsfolder/t/the_day_of_the_doctor.txt +++ b/forge-gui/res/cardsfolder/t/the_day_of_the_doctor.txt @@ -12,6 +12,6 @@ SVar:DBGenericChoice:DB$ GenericChoice | Choices$ DBExileAll,DBCleanupBis SVar:DBExileAll:DB$ ChangeZoneAll | ChangeType$ Creature.nonChosenCard | Origin$ Battlefield | Destination$ Exile | SubAbility$ DBDamage | SpellDescription$ Exile all other creatures. If you do, CARDNAME deals 13 damage to you. SVar:DBDamage:DB$ DealDamage | Defined$ You | NumDmg$ 13 | SubAbility$ DBCleanupBis SVar:DBCleanupBis:DB$ Cleanup | ClearChosenCard$ True | SpellDescription$ Don't exile all other creatures. -DeckNeeds:Type$Doctor|Legendary AI:RemoveDeck:Random +DeckNeeds:Type$Doctor|Legendary Oracle:I, II, III — Exile cards from the top of your library until you exile a legendary card. You may play that card for as long as The Day of the Doctor remains on the battlefield. Put the rest of those exiled cards on the bottom of your library in a random order.\nIV — Choose up to three Doctors. You may exile all other creatures. If you do, The Day of the Doctor deals 13 damage to you. diff --git a/forge-gui/res/cardsfolder/t/the_enigma_jewel_locus_of_enlightenment.txt b/forge-gui/res/cardsfolder/t/the_enigma_jewel_locus_of_enlightenment.txt index a134cfabdf6..fe3b262f370 100644 --- a/forge-gui/res/cardsfolder/t/the_enigma_jewel_locus_of_enlightenment.txt +++ b/forge-gui/res/cardsfolder/t/the_enigma_jewel_locus_of_enlightenment.txt @@ -6,9 +6,9 @@ SVar:ETBTapped:DB$ Tap | Defined$ Self | ETB$ True A:AB$ Mana | Cost$ T | Produced$ C | Amount$ 2 | RestrictValid$ Activated | SpellDescription$ Add {C}{C}. Spend this mana only to activate abilities. K:Craft:8 U XMin4 ExileCtrlOrGrave SVar:X:Count$xPaid +AI:RemoveDeck:All DeckHints:Ability$Discard|Mill|Sacrifice DeckHas:Ability$Graveyard -AI:RemoveDeck:All AlternateMode:DoubleFaced Oracle:The Enigma Jewel enters tapped.\n{T}: Add {C}{C}. Spend this mana only to activate abilities.\nCraft with four or more nonlands with activated abilities {8}{U} ({8}{U}, Exile this artifact, Exile the four or more from among other permanents you control and/or cards in your graveyard: Return this card transformed under its owner's control. Craft only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/t/the_prydwen_steel_flagship.txt b/forge-gui/res/cardsfolder/t/the_prydwen_steel_flagship.txt index 2c5e062dd55..35a47ca88e1 100644 --- a/forge-gui/res/cardsfolder/t/the_prydwen_steel_flagship.txt +++ b/forge-gui/res/cardsfolder/t/the_prydwen_steel_flagship.txt @@ -7,6 +7,6 @@ K:Crew:2 T:Mode$ ChangesZone | ValidCard$ Artifact.nonToken+Other+YouCtrl | Origin$ Any | Destination$ Battlefield | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Whenever another nontoken artifact you control enters, create a 2/2 white Human Knight creature token with "This creature gets +2/+2 as long as an artifact entered the battlefield under your control this turn." SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ w_2_2_human_knight_artifact_pump | TokenOwner$ You DeckHas:Ability$Token -DeckNeeds:Type$Artifact DeckHints:Type$Human|Knight +DeckNeeds:Type$Artifact Oracle:Flying\nWhenever another nontoken artifact you control enters, create a 2/2 white Human Knight creature token with "This creature gets +2/+2 as long as an artifact entered the battlefield under your control this turn."\nCrew 2 diff --git a/forge-gui/res/cardsfolder/t/the_trickster_gods_heist.txt b/forge-gui/res/cardsfolder/t/the_trickster_gods_heist.txt index 76862f4913d..f172e6d678d 100644 --- a/forge-gui/res/cardsfolder/t/the_trickster_gods_heist.txt +++ b/forge-gui/res/cardsfolder/t/the_trickster_gods_heist.txt @@ -6,6 +6,6 @@ SVar:DBCreature:DB$ ExchangeControl | ValidTgts$ Creature | TargetMin$ 2 | Targe SVar:DBNonCreature:DB$ ExchangeControl | ValidTgts$ Permanent.nonBasic+nonCreature | TargetMin$ 2 | TargetMax$ 2 | TgtPrompt$ Choose two target nonbasic, noncreature permanent | TargetsWithSameCardType$ True | Optional$ True | AILogic$ TrigTwoTargets | StackDescription$ SpellDescription | SpellDescription$ You may exchange control of two target nonbasic, noncreature permanents that share a card type. SVar:DBDrain:DB$ LoseLife | ValidTgts$ Player | TgtPrompt$ Select a player | LifeAmount$ 3 | SubAbility$ DBGainLife | SpellDescription$ Target player loses 3 life and you gain 3 life. SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ 3 -DeckHas:Ability$LifeGain AI:RemoveDeck:Random +DeckHas:Ability$LifeGain Oracle:(As this Saga enters and after your draw step, add a lore counter. Sacrifice after III.)\nI — You may exchange control of two target creatures.\nII — You may exchange control of two target nonbasic, noncreature permanents that share a card type.\nIII — Target player loses 3 life and you gain 3 life. diff --git a/forge-gui/res/cardsfolder/t/titania_voice_of_gaea_titania_gaea_incarnate.txt b/forge-gui/res/cardsfolder/t/titania_voice_of_gaea_titania_gaea_incarnate.txt index 3e8790411f2..cb600c849f9 100644 --- a/forge-gui/res/cardsfolder/t/titania_voice_of_gaea_titania_gaea_incarnate.txt +++ b/forge-gui/res/cardsfolder/t/titania_voice_of_gaea_titania_gaea_incarnate.txt @@ -9,8 +9,8 @@ T:Mode$ Phase | Phase$ Upkeep | CheckSVar$ X | SVarCompare$ GE4 | IsPresent$ Car SVar:Meld:DB$ Meld | Name$ Titania, Gaea Incarnate | Primary$ Titania, Voice of Gaea | Secondary$ Argoth, Sanctum of Nature | SecondaryType$ Land DeckHints:Name$Argoth, Sanctum of Nature SVar:X:Count$TypeInYourYard.Land +DeckHas:Ability$Graveyard|Counters|LifeGain DeckHints:Ability$Mill|Graveyard|Dredge & Name$Argoth, Sanctum of Nature -DeckHas:Ability$LifeGain MeldPair:Argoth, Sanctum of Nature AlternateMode:Meld Oracle:Reach\nWhenever one or more land cards are put into your graveyard from anywhere, you gain 2 life.\nAt the beginning of your upkeep, if there are four or more land cards in your graveyard and you both own and control Titania, Voice of Gaea and a land named Argoth, Sanctum of Nature, exile them, then meld them into Titania, Gaea Incarnate. @@ -32,6 +32,4 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigChangeZoneAll:DB$ ChangeZoneAll | ChangeType$ Land.YouCtrl | Origin$ Graveyard | Destination$ Battlefield | Tapped$ True A:AB$ PutCounter | Cost$ 3 G | ValidTgts$ Land.YouCtrl | TgtPrompt$ Select target land you control | CounterType$ P1P1 | CounterNum$ 4 | SubAbility$ DBAnimate | SpellDescription$ Put 4 +1/+1 counters on target land you control. That land becomes a 0/0 Elemental creature with haste. It's still a land. SVar:DBAnimate:DB$ Animate | Defined$ ParentTarget | Power$ 0 | Toughness$ 0 | Types$ Creature,Elemental | Keywords$ Haste | Duration$ Permanent -DeckHas:Ability$Graveyard -DeckHas:Ability$Counters Oracle:Vigilance, reach, trample, haste\nTitania, Gaea Incarnate's power and toughness are each equal to the number of lands you control.\nWhen Titania enters, return all land cards from your graveyard to the battlefield tapped.\n{3}{G}: Put four +1/+1 counters on target land you control. It becomes a 0/0 Elemental creature with haste. It's still a land. diff --git a/forge-gui/res/cardsfolder/t/tomb_robber.txt b/forge-gui/res/cardsfolder/t/tomb_robber.txt index 68d07c8b3a2..aecd3465eb5 100644 --- a/forge-gui/res/cardsfolder/t/tomb_robber.txt +++ b/forge-gui/res/cardsfolder/t/tomb_robber.txt @@ -4,6 +4,6 @@ Types:Creature Human Pirate PT:1/1 K:Menace A:AB$ Explore | Cost$ 1 Discard<1/Card> | SpellDescription$ CARDNAME explores. (Reveal the top card of your library. Put that card into your hand if it's a land. Otherwise, put a +1/+1 counter on this creature, then put the card back or put it into your graveyard.) -DeckHas:Ability$Counters AI:RemoveDeck:All +DeckHas:Ability$Counters Oracle:Menace\n{1}, Discard a card: Tomb Robber explores. (Reveal the top card of your library. Put that card into your hand if it's a land. Otherwise, put a +1/+1 counter on this creature, then put the card back or put it into your graveyard.) diff --git a/forge-gui/res/cardsfolder/t/tome_of_legends.txt b/forge-gui/res/cardsfolder/t/tome_of_legends.txt index dac6c4617cc..da67ae16227 100644 --- a/forge-gui/res/cardsfolder/t/tome_of_legends.txt +++ b/forge-gui/res/cardsfolder/t/tome_of_legends.txt @@ -6,7 +6,7 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | TriggerZones$ Bat T:Mode$ Attacks | ValidCard$ Card.IsCommander+YouOwn | TriggerZones$ Battlefield | Execute$ TrigPutCounter | Secondary$ True | TriggerDescription$ Whenever your commander enters or attacks, put a page counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ PAGE | CounterNum$ 1 SVar:HasAttackEffect:TRUE -DeckHas:Ability$Counters AI:RemoveDeck:NonCommander +DeckHas:Ability$Counters A:AB$ Draw | Cost$ 1 T SubCounter<1/PAGE> | NumCards$ 1 | SpellDescription$ Draw a card. Oracle:Tome of Legends enters with a page counter on it.\nWhenever your commander enters or attacks, put a page counter on Tome of Legends.\n{1}, {T}, Remove a page counter from Tome of Legends: Draw a card. diff --git a/forge-gui/res/cardsfolder/t/tournament_grounds.txt b/forge-gui/res/cardsfolder/t/tournament_grounds.txt index c25b366edf2..8747e1d8a2a 100644 --- a/forge-gui/res/cardsfolder/t/tournament_grounds.txt +++ b/forge-gui/res/cardsfolder/t/tournament_grounds.txt @@ -3,6 +3,6 @@ ManaCost:no cost Types:Land A:AB$ Mana | Cost$ T | Produced$ C | SpellDescription$ Add {C}. A:AB$ Mana | Cost$ T | Produced$ Combo R W B | RestrictValid$ Spell.Knight,Spell.Equipment | SpellDescription$ Add {R}, {W}, or {B}. Spend this mana only to cast a Knight or Equipment spell. -DeckNeeds:Type$Knight AI:RemoveDeck:Random +DeckNeeds:Type$Knight Oracle:{T}: Add {C}.\n{T}: Add {R}, {W}, or {B}. Spend this mana only to cast a Knight or Equipment spell. diff --git a/forge-gui/res/cardsfolder/t/tranquil_frillback.txt b/forge-gui/res/cardsfolder/t/tranquil_frillback.txt index 0932716ec7f..57bff7dde05 100644 --- a/forge-gui/res/cardsfolder/t/tranquil_frillback.txt +++ b/forge-gui/res/cardsfolder/t/tranquil_frillback.txt @@ -8,6 +8,6 @@ SVar:TrigCharm:DB$ Charm | MinCharmNum$ 0 | CharmNum$ Count$TriggerRememberAmoun SVar:DestroyAE:DB$ Destroy | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select target artifact or enchantment | SpellDescription$ Destroy target artifact or enchantment. SVar:ExileGrave:DB$ ChangeZoneAll | ValidTgts$ Player | Origin$ Graveyard | Destination$ Exile | ChangeType$ Card | SpellDescription$ Exile target player's graveyard. SVar:GainLife:DB$ GainLife | LifeAmount$ 4 | SpellDescription$ You gain 4 life. -DeckHas:Ability$LifeGain AI:RemoveDeck:All +DeckHas:Ability$LifeGain Oracle:When Tranquil Frillback enters, you may pay {G} up to three times. When you pay this cost one or more times, choose up to that many —\n• Destroy target artifact or enchantment.\n• Exile target player's graveyard.\n• You gain 4 life. diff --git a/forge-gui/res/cardsfolder/t/trash_bin.txt b/forge-gui/res/cardsfolder/t/trash_bin.txt index 0a327cea32e..2a03ede5eda 100644 --- a/forge-gui/res/cardsfolder/t/trash_bin.txt +++ b/forge-gui/res/cardsfolder/t/trash_bin.txt @@ -1,12 +1,15 @@ Name:Trash Bin ManaCost:no cost Types:Artifact Attraction -Variant:A:Lights:2 6 -Variant:B:Lights:3 6 -Variant:C:Lights:4 6 -Variant:D:Lights:5 6 K:Visit:TrigMill SVar:TrigMill:DB$ Mill | NumCards$ 2 | SubAbility$ DBReturn | SpellDescription$ Mill two cards, then return a creature card from your graveyard to your hand. SVar:DBReturn:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | ChangeType$ Card.YouOwn | AtRandom$ True | Hidden$ True DeckHas:Ability$Graveyard|Mill Oracle:Visit — Mill two cards, then return a card at random from your graveyard to your hand. (To mill a card, a player puts the top card of their library into their graveyard.) + +# --- VARIANTS --- + +Variant:A:Lights:2 6 +Variant:B:Lights:3 6 +Variant:C:Lights:4 6 +Variant:D:Lights:5 6 diff --git a/forge-gui/res/cardsfolder/t/tunnel_of_love.txt b/forge-gui/res/cardsfolder/t/tunnel_of_love.txt index a54c5d6f54e..e65b3816fd0 100644 --- a/forge-gui/res/cardsfolder/t/tunnel_of_love.txt +++ b/forge-gui/res/cardsfolder/t/tunnel_of_love.txt @@ -1,8 +1,6 @@ Name:Tunnel of Love ManaCost:no cost Types:Artifact Attraction -Variant:A:Lights:2 6 -Variant:B:Lights:3 6 K:Visit:TrigChoose SVar:TrigChoose:DB$ ChoosePlayer | Defined$ You | Choices$ Opponent | AILogic$ Curse | SubAbility$ DBChoose | SpellDescription$ Choose an opponent. They choose a creature they control, then you choose a creature you control. You may exile the chosen creatures. If you do, return them to the battlefield under their owners' control at the beginning of the next end step. Otherwise, the chosen creatures fight each other. SVar:DBChoose:DB$ ChooseCard | Defined$ ChosenPlayer | RememberChosen$ True | Choices$ Creature.ControlledBy ChosenPlayer | Amount$ 1 | SubAbility$ DBChooseYou @@ -14,3 +12,8 @@ SVar:TrigReturn:DB$ ChangeZone | Defined$ DelayTriggerRememberedLKI | Origin$ Ex SVar:DBFight:DB$ Fight | Defined$ Remembered | SubAbility$ DBCleanup | SpellDescription$ The chosen creatures fight each other. SVar:DBCleanup:DB$ Cleanup | ClearChosenCard$ True | ClearRemembered$ True Oracle:Visit — Choose an opponent. They choose a creature they control, then you choose a creature you control. You may exile the chosen creatures. If you do, return them to the battlefield under their owners' control at the beginning of the next end step. Otherwise, the chosen creatures fight each other. + +# --- VARIANTS --- + +Variant:A:Lights:2 6 +Variant:B:Lights:3 6 diff --git a/forge-gui/res/cardsfolder/t/turntimber_sower.txt b/forge-gui/res/cardsfolder/t/turntimber_sower.txt index 4115edc3a75..e9804b83a0e 100644 --- a/forge-gui/res/cardsfolder/t/turntimber_sower.txt +++ b/forge-gui/res/cardsfolder/t/turntimber_sower.txt @@ -5,6 +5,6 @@ PT:3/3 T:Mode$ ChangesZoneAll | ValidCards$ Land.YouOwn+nonToken | Origin$ Any | Destination$ Graveyard | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Whenever one or more land cards are put into your graveyard from anywhere, create a 0/1 green Plant creature token. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ g_0_1_plant | TokenOwner$ You A:AB$ ChangeZone | Cost$ G Sac<3/Creature> | TgtPrompt$ Choose target land card in your graveyard | ValidTgts$ Land.YouCtrl | Origin$ Graveyard | Destination$ Hand | SpellDescription$ Return target land card from your graveyard to your hand. -DeckHas:Ability$Token|Graveyard AI:RemoveDeck:Random +DeckHas:Ability$Token|Graveyard Oracle:Whenever one or more land cards are put into your graveyard from anywhere, create a 0/1 green Plant creature token.\n{G}, Sacrifice three creatures: Return target land card from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/t/tyranid_invasion.txt b/forge-gui/res/cardsfolder/t/tyranid_invasion.txt index 9fa9e65e61b..13dda578b42 100644 --- a/forge-gui/res/cardsfolder/t/tyranid_invasion.txt +++ b/forge-gui/res/cardsfolder/t/tyranid_invasion.txt @@ -3,6 +3,6 @@ ManaCost:3 G Types:Sorcery A:SP$ Token | TokenOwner$ You | TokenAmount$ X | TokenScript$ g_3_3_tyranid_warrior_trample SVar:X:PlayerCountOpponents$Amount -DeckHas:Ability$Token & Type$Tyranid|Warrior AI:RemoveDeck:Random +DeckHas:Ability$Token & Type$Tyranid|Warrior Oracle:Create a number of 3/3 green Tyranid Warrior creature tokens with trample equal to the number of opponents you have. diff --git a/forge-gui/res/cardsfolder/u/unmarked_grave.txt b/forge-gui/res/cardsfolder/u/unmarked_grave.txt index 9647547cd95..dab2d334e6b 100644 --- a/forge-gui/res/cardsfolder/u/unmarked_grave.txt +++ b/forge-gui/res/cardsfolder/u/unmarked_grave.txt @@ -2,6 +2,6 @@ Name:Unmarked Grave ManaCost:1 B Types:Sorcery A:SP$ ChangeZone | Origin$ Library | Destination$ Graveyard | ChangeType$ Card.nonLegendary | ChangeNum$ 1 | SpellDescription$ Search your library for a nonlegendary card, put that card into your graveyard, then shuffle. -DeckHas:Ability$Graveyard AI:RemoveDeck:Random +DeckHas:Ability$Graveyard Oracle:Search your library for a nonlegendary card, put that card into your graveyard, then shuffle. diff --git a/forge-gui/res/cardsfolder/u/urza_assembles_the_titans.txt b/forge-gui/res/cardsfolder/u/urza_assembles_the_titans.txt index a322f29013c..2331d68b2fd 100644 --- a/forge-gui/res/cardsfolder/u/urza_assembles_the_titans.txt +++ b/forge-gui/res/cardsfolder/u/urza_assembles_the_titans.txt @@ -9,6 +9,6 @@ SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:DBChangeZone:DB$ ChangeZone | Origin$ Hand | Destination$ Battlefield | ChangeType$ Planeswalker.cmcLE6 | ChangeNum$ 1 | SpellDescription$ You may put a planeswalker card with mana value 6 or less from your hand onto the battlefield. SVar:DBLoyalty:DB$ Effect | StaticAbilities$ PWTwice | SpellDescription$ You may activate the loyalty abilities of planeswalkers you control twice this turn rather than only once. SVar:PWTwice:Mode$ NumLoyaltyAct | ValidCard$ Planeswalker.YouCtrl | Twice$ True | Description$ You may activate the loyalty abilities of planeswalkers you control twice this turn rather than only once. -DeckNeeds:Type$Planeswalker AI:RemoveDeck:Random +DeckNeeds:Type$Planeswalker Oracle:Read ahead (Choose a chapter and start with that many lore counters. Add one after your draw step. Skipped chapters don't trigger. Sacrifice after III.)\nI — Scry 4, then you may reveal the top card of your library. If a planeswalker card is revealed this way, put it into your hand.\nII — You may put a planeswalker card with mana value 6 or less from your hand onto the battlefield.\nIII — You may activate the loyalty abilities of planeswalkers you control twice this turn rather than only once. diff --git a/forge-gui/res/cardsfolder/upcoming/vengeful_bloodwitch.txt b/forge-gui/res/cardsfolder/upcoming/vengeful_bloodwitch.txt index 72f4c19ce03..c9853412251 100644 --- a/forge-gui/res/cardsfolder/upcoming/vengeful_bloodwitch.txt +++ b/forge-gui/res/cardsfolder/upcoming/vengeful_bloodwitch.txt @@ -1,7 +1,7 @@ Name:Vengeful Bloodwitch ManaCost:1 B -PT:1/1 Types:Creature Vampire Warlock +PT:1/1 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self,Creature.Other+YouCtrl | TriggerZones$ Battlefield | Execute$ TrigLoseLife | TriggerDescription$ Whenever this creature or another creature you control dies, target opponent loses 1 life and you gain 1 life. SVar:TrigLoseLife:DB$ LoseLife | ValidTgts$ Opponent | LifeAmount$ 1 | SubAbility$ DBGainLife SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ 1 diff --git a/forge-gui/res/cardsfolder/v/vastwood_animist.txt b/forge-gui/res/cardsfolder/v/vastwood_animist.txt index 0e2bdc55d90..989cd7cd16e 100644 --- a/forge-gui/res/cardsfolder/v/vastwood_animist.txt +++ b/forge-gui/res/cardsfolder/v/vastwood_animist.txt @@ -4,6 +4,6 @@ Types:Creature Elf Shaman Ally PT:1/1 A:AB$ Animate | Cost$ T | ValidTgts$ Land.YouCtrl | TgtPrompt$ Select target land you control | Power$ X | Toughness$ X | Types$ Creature,Elemental | SpellDescription$ Target land you control becomes an X/X Elemental creature until end of turn, where X is the number of Allies you control. It's still a land. SVar:X:Count$Valid Ally.YouCtrl -DeckNeeds:Type$Ally AI:RemoveDeck:Random +DeckNeeds:Type$Ally Oracle:{T}: Target land you control becomes an X/X Elemental creature until end of turn, where X is the number of Allies you control. It's still a land. diff --git a/forge-gui/res/cardsfolder/v/vault_21_house_gambit.txt b/forge-gui/res/cardsfolder/v/vault_21_house_gambit.txt index b681e18313f..4636abcd174 100644 --- a/forge-gui/res/cardsfolder/v/vault_21_house_gambit.txt +++ b/forge-gui/res/cardsfolder/v/vault_21_house_gambit.txt @@ -11,6 +11,6 @@ SVar:DBTreasure:DB$ Token | TokenAmount$ TreasureNum | TokenScript$ c_a_treasure SVar:DBReset:DB$ StoreSVar | SVar$ TreasureNum | Type$ Number | Expression$ 0 | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:TreasureNum:Number$0 -DeckHas:Type$Artifact|Treasure & Ability$Sacrifice|Token|Discard AI:RemoveDeck:All +DeckHas:Type$Artifact|Treasure & Ability$Sacrifice|Token|Discard Oracle:(As this Saga enters and after your draw step, add a lore counter. Sacrifice after III.)\nI, II — Discard a card, then draw a card.\nIII — Reveal up to five nonland cards from your hand. For each of those cards that has the same mana value as another card revealed this way, create a Treasure token. diff --git a/forge-gui/res/cardsfolder/v/vazi_keen_negotiator.txt b/forge-gui/res/cardsfolder/v/vazi_keen_negotiator.txt index 73f355f1c5e..f0bffab0ee2 100644 --- a/forge-gui/res/cardsfolder/v/vazi_keen_negotiator.txt +++ b/forge-gui/res/cardsfolder/v/vazi_keen_negotiator.txt @@ -8,7 +8,7 @@ SVar:X:Count$ThisTurnEntered_Battlefield_Card.tokenCreated+Treasure+YouOwn T:Mode$ SpellAbilityCast | ValidCard$ Card | ValidActivatingPlayer$ Opponent | TriggerZones$ Battlefield | ValidSA$ SpellAbility.ManaFromTreasure | Execute$ TrigPutCounter | TriggerDescription$ Whenever an opponent casts a spell or activates an ability, if mana from a Treasure was spent to cast or activate it, put a +1/+1 counter on target creature, then draw a card. SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature | CounterType$ P1P1 | SubAbility$ DBDraw SVar:DBDraw:DB$ Draw +AI:RemoveDeck:Random DeckNeeds:Ability$Token & Type$Treasure DeckHas:Ability$Counters -AI:RemoveDeck:Random Oracle:Haste\n{T}: Target opponent creates X Treasure tokens, where X is the number of Treasure tokens you created this turn.\nWhenever an opponent casts a spell or activates an ability, if mana from a Treasure was spent to cast or activate it, put a +1/+1 counter on target creature, then draw a card. diff --git a/forge-gui/res/cardsfolder/v/veteran_soldier.txt b/forge-gui/res/cardsfolder/v/veteran_soldier.txt index cf0f65c9da3..e98fb11d51f 100644 --- a/forge-gui/res/cardsfolder/v/veteran_soldier.txt +++ b/forge-gui/res/cardsfolder/v/veteran_soldier.txt @@ -5,6 +5,6 @@ S:Mode$ Continuous | Affected$ Creature.IsCommander+YouOwn | AddTrigger$ Attacks SVar:AttacksPlayer:Mode$ Attacks | ValidCard$ Card.Self | Attacked$ Player | Condition$ NoOpponentHasMoreLifeThanAttacked | Execute$ TrigRepeat | TriggerDescription$ Whenever this creature attacks a player, if no opponent has more life than that player, for each opponent, create a 1/1 white Soldier creature token that's tapped and attacking that player. SVar:TrigRepeat:DB$ RepeatEach | RepeatPlayers$ Opponent | ChangeZoneTable$ True | RepeatSubAbility$ DBToken SVar:DBToken:DB$ Token | TokenScript$ w_1_1_soldier | TokenTapped$ True | TokenAttacking$ Remembered -DeckHas:Ability$Token & Type$Soldier AI:RemoveDeck:NonCommander +DeckHas:Ability$Token & Type$Soldier Oracle:Commander creatures you own have "Whenever this creature attacks a player, if no opponent has more life than that player, for each opponent, create a 1/1 white Soldier creature token that's tapped and attacking that player." diff --git a/forge-gui/res/cardsfolder/v/visions_of_ruin.txt b/forge-gui/res/cardsfolder/v/visions_of_ruin.txt index 059cd364e37..e5b8d159960 100644 --- a/forge-gui/res/cardsfolder/v/visions_of_ruin.txt +++ b/forge-gui/res/cardsfolder/v/visions_of_ruin.txt @@ -7,6 +7,6 @@ SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:Y:Count$RememberedSize K:Flashback:8 R R:ReduceCost$ X:This spell costs {X} less to cast this way, where X is the greatest mana value of a commander you own on the battlefield or in the command zone. SVar:X:Count$ValidBattlefield,Command Card.IsCommander+YouOwn$GreatestCMC -DeckHas:Ability$Token|Sacrifice AI:RemoveDeck:Random +DeckHas:Ability$Token|Sacrifice Oracle:Each opponent sacrifices an artifact. For each artifact sacrificed this way, you create a Treasure token.\nFlashback {8}{R}{R}. This spell costs {X} less to cast this way, where X is the greatest mana value of a commander you own on the battlefield or in the command zone. (You may cast this card from your graveyard for its flashback cost. Then exile it.) diff --git a/forge-gui/res/cardsfolder/v/vladimir_and_godfrey.txt b/forge-gui/res/cardsfolder/v/vladimir_and_godfrey.txt index 3acbc45d050..e13623c75d7 100644 --- a/forge-gui/res/cardsfolder/v/vladimir_and_godfrey.txt +++ b/forge-gui/res/cardsfolder/v/vladimir_and_godfrey.txt @@ -6,6 +6,6 @@ A:AB$ ChangeZone | Cost$ 2 W | Origin$ Graveyard | Destination$ Battlefield | De SVar:DBEffect:DB$ Pump | NumAtt$ 1 | NumDef$ 1 | Duration$ Perpetual | StackDescription$ It perpetually gets +1/+1. | SpellDescription$ It perpetually gets +1/+1. Activate only if you control a 1/1 creature. SVar:SacMe:3 SVar:DiscardMe:3 -DeckHas:Ability$Graveyard AI:RemoveDeck:Random +DeckHas:Ability$Graveyard Oracle:Rejuvenation — {2}{W}: Return Vladimir and Godfrey from your graveyard to the battlefield tapped. It perpetually gets +1/+1. Activate only if you control a 1/1 creature. diff --git a/forge-gui/res/cardsfolder/v/vona_butcher_of_magan.txt b/forge-gui/res/cardsfolder/v/vona_butcher_of_magan.txt index 2c0c40820ad..891f392d88c 100644 --- a/forge-gui/res/cardsfolder/v/vona_butcher_of_magan.txt +++ b/forge-gui/res/cardsfolder/v/vona_butcher_of_magan.txt @@ -5,6 +5,6 @@ PT:4/4 K:Vigilance K:Lifelink A:AB$ Destroy | Cost$ T PayLife<7> | PlayerTurn$ True | ValidTgts$ Permanent.nonLand | TgtPrompt$ Select target nonland permanent | AILogic$ AtEOTIfNotAttacking | SpellDescription$ Destroy target nonland permanent. Activate only during your turn. -DeckHas:Ability$LifeGain AI:RemoveDeck:Random +DeckHas:Ability$LifeGain Oracle:Vigilance, lifelink\n{T}, Pay 7 life: Destroy target nonland permanent. Activate only during your turn. From b9ac2aeaf8526bdcadb7384ed8396563fce0d01a Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 09:31:21 +0100 Subject: [PATCH 12/91] Edit pile cleanup: Line reordering, first pass: part 4, folders 'w' to 'z' --- forge-gui/res/cardsfolder/w/wake_to_slaughter.txt | 2 +- forge-gui/res/cardsfolder/w/war_barge.txt | 2 +- forge-gui/res/cardsfolder/w/warehouse_thief.txt | 2 +- forge-gui/res/cardsfolder/w/weapon_rack.txt | 2 +- forge-gui/res/cardsfolder/w/well_of_lost_dreams.txt | 2 +- forge-gui/res/cardsfolder/w/wild_magic_sorcerer.txt | 2 +- forge-gui/res/cardsfolder/w/windfall.txt | 2 +- forge-gui/res/cardsfolder/w/wings_of_hubris.txt | 2 +- forge-gui/res/cardsfolder/w/winter_moon.txt | 2 +- forge-gui/res/cardsfolder/w/winter_orb.txt | 2 +- forge-gui/res/cardsfolder/w/worms_of_the_earth.txt | 2 +- forge-gui/res/cardsfolder/w/wreck_hunter.txt | 2 +- forge-gui/res/cardsfolder/x/xorn.txt | 2 +- forge-gui/res/cardsfolder/y/youve_been_caught_stealing.txt | 2 +- forge-gui/res/cardsfolder/z/zaxara_the_exemplary.txt | 2 +- forge-gui/res/cardsfolder/z/zevlor_elturel_exile.txt | 2 +- 16 files changed, 16 insertions(+), 16 deletions(-) diff --git a/forge-gui/res/cardsfolder/w/wake_to_slaughter.txt b/forge-gui/res/cardsfolder/w/wake_to_slaughter.txt index 6bc72bb5c4e..d660a2dce30 100644 --- a/forge-gui/res/cardsfolder/w/wake_to_slaughter.txt +++ b/forge-gui/res/cardsfolder/w/wake_to_slaughter.txt @@ -9,6 +9,6 @@ SVar:DBChangeZone2:DB$ ChangeZone | Defined$ Remembered | Origin$ Graveyard | De SVar:DBAnimate:DB$ Animate | Keywords$ Haste | Defined$ Remembered | Duration$ Permanent | AtEOT$ Sacrifice | StackDescription$ None | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True | ClearChosenCard$ True | ClearChosenPlayer$ True K:Flashback:4 B R -DeckHas:Ability$Graveyard|Sacrifice AI:RemoveDeck:All +DeckHas:Ability$Graveyard|Sacrifice Oracle:Choose up to two target creature cards in your graveyard. An opponent chooses one of them. Return that card to your hand. Return the other to the battlefield under your control. It gains haste. Exile it at the beginning of the next end step.\nFlashback {4}{B}{R} (You may cast this card from your graveyard for its flashback cost. Then exile it.) diff --git a/forge-gui/res/cardsfolder/w/war_barge.txt b/forge-gui/res/cardsfolder/w/war_barge.txt index fbe0caf1bdf..4e9c392da03 100644 --- a/forge-gui/res/cardsfolder/w/war_barge.txt +++ b/forge-gui/res/cardsfolder/w/war_barge.txt @@ -4,7 +4,7 @@ Types:Artifact A:AB$ Pump | Cost$ 3 | ValidTgts$ Creature | TgtPrompt$ Select target creature | KW$ Landwalk:Island | SubAbility$ DelTrig | SpellDescription$ Target creature gains islandwalk until end of turn. When CARDNAME leaves the battlefield this turn, destroy that creature. A creature destroyed this way can't be regenerated. SVar:DelTrig:DB$ DelayedTrigger | Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Battlefield | Destination$ Any | Execute$ TrigDestroy | ThisTurn$ True | RememberObjects$ Targeted | TriggerDescription$ When CARDNAME leaves the battlefield this turn, destroy that creature. A creature destroyed this way can't be regenerated. SVar:TrigDestroy:DB$ Destroy | Defined$ DelayTriggerRememberedLKI | NoRegen$ True -DeckHas:Keyword$Islandwalk AI:RemoveDeck:All AI:RemoveDeck:Random +DeckHas:Keyword$Islandwalk Oracle:{3}: Target creature gains islandwalk until end of turn. When War Barge leaves the battlefield this turn, destroy that creature. A creature destroyed this way can't be regenerated. (A creature with islandwalk can't be blocked as long as defending player controls an Island.) diff --git a/forge-gui/res/cardsfolder/w/warehouse_thief.txt b/forge-gui/res/cardsfolder/w/warehouse_thief.txt index 9d7b26c0078..d621b12e253 100644 --- a/forge-gui/res/cardsfolder/w/warehouse_thief.txt +++ b/forge-gui/res/cardsfolder/w/warehouse_thief.txt @@ -6,7 +6,7 @@ A:AB$ Dig | Cost$ 2 T Sac<1/Artifact;Creature/artifact or creature> | Defined$ Y SVar:DBEffect:DB$ Effect | StaticAbilities$ StaticMayPlay | Duration$ UntilTheEndOfYourNextTurn | RememberObjects$ Remembered | ForgetOnMoved$ Exile | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:StaticMayPlay:Mode$ Continuous | Affected$ Card.IsRemembered | EffectZone$ Command | AffectedZone$ Exile | MayPlay$ True | Description$ Until the end of your next turn, you may play that card. +AI:RemoveDeck:Random DeckHas:Ability$Sacrifice DeckHints:Type$Artifact|Creature -AI:RemoveDeck:Random Oracle:{2}, {T}, Sacrifice an artifact or creature: Exile the top card of your library. Until the end of your next turn, you may play that card. diff --git a/forge-gui/res/cardsfolder/w/weapon_rack.txt b/forge-gui/res/cardsfolder/w/weapon_rack.txt index d6f810ba0ed..650003da895 100644 --- a/forge-gui/res/cardsfolder/w/weapon_rack.txt +++ b/forge-gui/res/cardsfolder/w/weapon_rack.txt @@ -3,6 +3,6 @@ ManaCost:4 Types:Artifact K:etbCounter:P1P1:3 A:AB$ MoveCounter | Cost$ T | Source$ Self | ValidTgts$ Creature | TgtPrompt$ Select target creature | CounterType$ P1P1 | CounterNum$ 1 | SorcerySpeed$ True | SpellDescription$ Move a +1/+1 counter from CARDNAME onto target creature. Activate only as a sorcery. -DeckHas:Ability$Counters AI:RemoveDeck:All +DeckHas:Ability$Counters Oracle:Weapon Rack enters with three +1/+1 counters on it.\n{T}: Move a +1/+1 counter from Weapon Rack onto target creature. Activate only as a sorcery. diff --git a/forge-gui/res/cardsfolder/w/well_of_lost_dreams.txt b/forge-gui/res/cardsfolder/w/well_of_lost_dreams.txt index 81411f49150..15d68754fd9 100644 --- a/forge-gui/res/cardsfolder/w/well_of_lost_dreams.txt +++ b/forge-gui/res/cardsfolder/w/well_of_lost_dreams.txt @@ -6,6 +6,6 @@ SVar:TrigStore:DB$ ChooseNumber | Defined$ You | Min$ 0 | Max$ Y | ListTitle$ am SVar:DBDraw:DB$ Draw | Defined$ You | NumCards$ X | UnlessCost$ X | UnlessPayer$ You | UnlessSwitched$ True SVar:Y:TriggerCount$LifeAmount SVar:X:Count$ChosenNumber -DeckNeeds:Ability$LifeGain AI:RemoveDeck:Random +DeckNeeds:Ability$LifeGain Oracle:Whenever you gain life, you may pay {X}, where X is less than or equal to the amount of life you gained. If you do, draw X cards. diff --git a/forge-gui/res/cardsfolder/w/wild_magic_sorcerer.txt b/forge-gui/res/cardsfolder/w/wild_magic_sorcerer.txt index f32340bfedb..d1f60f7cf74 100644 --- a/forge-gui/res/cardsfolder/w/wild_magic_sorcerer.txt +++ b/forge-gui/res/cardsfolder/w/wild_magic_sorcerer.txt @@ -4,6 +4,6 @@ Types:Creature Orc Shaman PT:4/3 S:Mode$ Continuous | Affected$ Card.YouCtrl+wasCastFromExile | AffectedZone$ Stack | AddKeyword$ Cascade | CheckSVar$ Y | SVarCompare$ EQ0 | Description$ The first spell you cast from exile each turn has cascade. SVar:Y:Count$ThisTurnCast_Card.YouCtrl+wasCastFromExile -DeckNeeds:Keyword$Cascade AI:RemoveDeck:Random +DeckNeeds:Keyword$Cascade Oracle:The first spell you cast from exile each turn has cascade. (When you cast your first spell from exile, exile cards from the top of your library until you exile a nonland card that costs less. You may cast it without paying its mana cost. Put the exiled cards on the bottom of your library in a random order.) diff --git a/forge-gui/res/cardsfolder/w/windfall.txt b/forge-gui/res/cardsfolder/w/windfall.txt index fb34b3ef0f7..0603ef7a5fa 100644 --- a/forge-gui/res/cardsfolder/w/windfall.txt +++ b/forge-gui/res/cardsfolder/w/windfall.txt @@ -6,6 +6,6 @@ SVar:WindfallDraw:DB$ Draw | Defined$ Player | NumCards$ X | SubAbility$ Windfal SVar:WindfallCleanup:DB$ Cleanup | ClearRemembered$ True # Some cards may allow you to discard to other zones SVar:X:PlayerCountPlayers$HighestValidGraveyard,Library,Exile Card.IsRemembered+YouOwn -DeckHas:Ability$Discard AI:RemoveDeck:All +DeckHas:Ability$Discard Oracle:Each player discards their hand, then draws cards equal to the greatest number of cards a player discarded this way. diff --git a/forge-gui/res/cardsfolder/w/wings_of_hubris.txt b/forge-gui/res/cardsfolder/w/wings_of_hubris.txt index 9fb8de26a09..d4f5f10ced8 100644 --- a/forge-gui/res/cardsfolder/w/wings_of_hubris.txt +++ b/forge-gui/res/cardsfolder/w/wings_of_hubris.txt @@ -7,6 +7,6 @@ SVar:Unblockable:Mode$ CantBlockBy | ValidAttacker$ Card.IsRemembered | Descript SVar:Sacrifice:Mode$ Phase | Phase$ End of Turn | Execute$ TrigSac | TriggerDescription$ Sacrifice it at the beginning of the next end step. SVar:TrigSac:DB$ SacrificeAll | ValidCards$ Card.IsRemembered K:Equip:1 -DeckHas:Ability$Sacrifice AI:RemoveDeck:All +DeckHas:Ability$Sacrifice Oracle:Equipped creature has flying.\nSacrifice Wings of Hubris: Equipped creature can't be blocked this turn. Sacrifice it at the beginning of the next end step.\nEquip {1} ({1}: Attach to target creature you control. Equip only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/w/winter_moon.txt b/forge-gui/res/cardsfolder/w/winter_moon.txt index 34e3e83d607..38fe642ca8d 100644 --- a/forge-gui/res/cardsfolder/w/winter_moon.txt +++ b/forge-gui/res/cardsfolder/w/winter_moon.txt @@ -3,6 +3,6 @@ ManaCost:2 Types:Artifact S:Mode$ Continuous | Affected$ Player | AddKeyword$ UntapAdjust:Land.nonBasic:1 | Description$ Players can't untap more than one nonbasic land during their untap steps. SVar:NonStackingEffect:True -DeckHints:Type$Artifact AI:RemoveDeck:Random +DeckHints:Type$Artifact Oracle:Players can't untap more than one nonbasic land during their untap steps. diff --git a/forge-gui/res/cardsfolder/w/winter_orb.txt b/forge-gui/res/cardsfolder/w/winter_orb.txt index 3ff4599c567..7b2f43c91b8 100644 --- a/forge-gui/res/cardsfolder/w/winter_orb.txt +++ b/forge-gui/res/cardsfolder/w/winter_orb.txt @@ -3,6 +3,6 @@ ManaCost:2 Types:Artifact S:Mode$ Continuous | Affected$ Player | AddKeyword$ UntapAdjust:Land:1 | IsPresent$ Card.Self+untapped | Description$ As long as CARDNAME is untapped, players can't untap more than one land during their untap steps. SVar:NonStackingEffect:True -DeckHints:Type$Artifact AI:RemoveDeck:Random +DeckHints:Type$Artifact Oracle:As long as Winter Orb is untapped, players can't untap more than one land during their untap steps. diff --git a/forge-gui/res/cardsfolder/w/worms_of_the_earth.txt b/forge-gui/res/cardsfolder/w/worms_of_the_earth.txt index 84613b07f24..347e86d2216 100644 --- a/forge-gui/res/cardsfolder/w/worms_of_the_earth.txt +++ b/forge-gui/res/cardsfolder/w/worms_of_the_earth.txt @@ -8,7 +8,7 @@ SVar:TrigChoose:DB$ GenericChoice | Defined$ Player | TempRemember$ Chooser | Ch SVar:DealDmg:DB$ Destroy | Defined$ Self | UnlessCost$ DamageYou<5> | UnlessPayer$ Remembered | UnlessSwitched$ True | SpellDescription$ Have CARDNAME deal 5 damage to you and destroy CARDNAME. SVar:SacTwoLands:DB$ Destroy | Defined$ Self | UnlessCost$ Sac<2/Permanent.Land/two lands> | UnlessPayer$ Remembered | UnlessSwitched$ True | SpellDescription$ Sacrifice two lands to destroy CARDNAME. SVar:AIPreference:SacCost$Land.Basic,Land -DeckHas:Ability$Sacrifice AI:RemoveDeck:Random AI:RemoveDeck:All +DeckHas:Ability$Sacrifice Oracle:Players can't play lands.\nLands can't enter the battlefield.\nAt the beginning of each upkeep, any player may sacrifice two lands or have Worms of the Earth deal 5 damage to that player. If a player does either, destroy Worms of the Earth. diff --git a/forge-gui/res/cardsfolder/w/wreck_hunter.txt b/forge-gui/res/cardsfolder/w/wreck_hunter.txt index 8f7db4ae270..2a73de3f0b6 100644 --- a/forge-gui/res/cardsfolder/w/wreck_hunter.txt +++ b/forge-gui/res/cardsfolder/w/wreck_hunter.txt @@ -6,6 +6,6 @@ K:Flash T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME enters, choose target player. You create a tapped Powerstone token for each nonland card in that player's graveyard that was put there from the battlefield this turn. (It's an artifact with "{T}: Add {C}. This mana can't be spent to cast a nonartifact spell.") SVar:TrigToken:DB$ Token | ValidTgts$ Player | TokenOwner$ You | TokenAmount$ X | TokenTapped$ True | TokenScript$ c_a_powerstone SVar:X:Count$ValidGraveyard Card.nonLand+ThisTurnEnteredFrom_Battlefield+OwnedBy TargetedPlayer -DeckHas:Ability$Token & Type$Artifact AI:RemoveDeck:Random +DeckHas:Ability$Token & Type$Artifact Oracle:Flash\nWhen Wreck Hunter enters, choose target player. You create a tapped Powerstone token for each nonland card in that player's graveyard that was put there from the battlefield this turn. (It's an artifact with "{T}: Add {C}. This mana can't be spent to cast a nonartifact spell.") diff --git a/forge-gui/res/cardsfolder/x/xorn.txt b/forge-gui/res/cardsfolder/x/xorn.txt index d91b399d95b..e6238ba08f6 100644 --- a/forge-gui/res/cardsfolder/x/xorn.txt +++ b/forge-gui/res/cardsfolder/x/xorn.txt @@ -4,6 +4,6 @@ Types:Creature Elemental PT:3/2 R:Event$ CreateToken | ActiveZones$ Battlefield | ValidPlayer$ You | ValidToken$ Treasure | ReplaceWith$ DBReplace | Description$ If you would create one or more Treasure tokens, instead create those tokens plus an additional Treasure token. SVar:DBReplace:DB$ ReplaceToken | Type$ AddToken | Amount$ 1 | ValidCard$ Treasure | TokenScript$ c_a_treasure_sac -DeckNeeds:Ability$Token & Type$Treasure AI:RemoveDeck:Random +DeckNeeds:Ability$Token & Type$Treasure Oracle:If you would create one or more Treasure tokens, instead create those tokens plus an additional Treasure token. diff --git a/forge-gui/res/cardsfolder/y/youve_been_caught_stealing.txt b/forge-gui/res/cardsfolder/y/youve_been_caught_stealing.txt index df7a6153931..2050e0b10df 100644 --- a/forge-gui/res/cardsfolder/y/youve_been_caught_stealing.txt +++ b/forge-gui/res/cardsfolder/y/youve_been_caught_stealing.txt @@ -6,6 +6,6 @@ SVar:DBBlock:DB$ Effect | StaticAbilities$ STBlock | SpellDescription$ Threaten SVar:STBlock:Mode$ MustBlock | ValidCreature$ Creature | Description$ Each creature blocks this turn if able. SVar:DBToken:DB$ Token | TokenAmount$ X | TokenScript$ c_a_treasure_sac | SpellDescription$ Bribe the Guards — You create a Treasure token for each opponent who was dealt damage this turn. (It's an artifact with "{T}, Sacrifice this artifact: Add one mana of any color.") SVar:X:PlayerCountOpponents$HasPropertywasDealtDamageThisTurn -DeckHas:Ability$Token|Sacrifice & Type$Treasure|Artifact AI:RemoveDeck:Random +DeckHas:Ability$Token|Sacrifice & Type$Treasure|Artifact Oracle:Choose one —\n• Threaten the Merchant — Each creature blocks this turn if able.\n• Bribe the Guards — You create a Treasure token for each opponent who was dealt damage this turn. (It's an artifact with "{T}, Sacrifice this artifact: Add one mana of any color.") diff --git a/forge-gui/res/cardsfolder/z/zaxara_the_exemplary.txt b/forge-gui/res/cardsfolder/z/zaxara_the_exemplary.txt index f6a871b3c51..54d7c337c4b 100644 --- a/forge-gui/res/cardsfolder/z/zaxara_the_exemplary.txt +++ b/forge-gui/res/cardsfolder/z/zaxara_the_exemplary.txt @@ -9,6 +9,6 @@ SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ g_0_0_hydra | TokenOwne SVar:DBPutCounter:DB$ PutCounter | Defined$ Remembered | CounterType$ P1P1 | CounterNum$ X | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Count$xPaid -DeckHas:Ability$Token AI:RemoveDeck:Random +DeckHas:Ability$Token Oracle:Deathtouch\n{T}: Add two mana of any one color.\nWhenever you cast a spell with {X} in its mana cost, create a 0/0 green Hydra creature token, then put X +1/+1 counters on it. diff --git a/forge-gui/res/cardsfolder/z/zevlor_elturel_exile.txt b/forge-gui/res/cardsfolder/z/zevlor_elturel_exile.txt index ff66bb3bd1f..f21c737e76c 100644 --- a/forge-gui/res/cardsfolder/z/zevlor_elturel_exile.txt +++ b/forge-gui/res/cardsfolder/z/zevlor_elturel_exile.txt @@ -6,6 +6,6 @@ K:Haste A:AB$ Effect | Cost$ 2 T | Triggers$ SpellCast | SpellDescription$ When you next cast an instant or sorcery spell that targets only a single opponent or a single permanent an opponent controls this turn, for each other opponent, choose that player or a permanent they control, copy that spell, and the copy targets the chosen player or permanent. SVar:SpellCast:Mode$ SpellCast | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | IsSingleTarget$ True | TargetsValid$ Opponent,Permanent.OppCtrl+inZoneBattlefield | Execute$ TrigCopy | OneOff$ True | TriggerZones$ Battlefield | TriggerDescription$ When you next cast an instant or sorcery spell that targets only a single opponent or a single permanent an opponent controls this turn, for each other opponent, choose that player or a permanent they control, copy that spell, and the copy targets the chosen player or permanent. SVar:TrigCopy:DB$ CopySpellAbility | Defined$ TriggeredSpellAbility | Controller$ You | DefinedTarget$ OppNonTriggeredSpellAbilityTargetsOrController -DeckNeeds:Type$Instant|Sorcery AI:RemoveDeck:Random +DeckNeeds:Type$Instant|Sorcery Oracle:Haste\n{2}, {T}: When you next cast an instant or sorcery spell that targets only a single opponent or a single permanent an opponent controls this turn, for each other opponent, choose that player or a permanent they control, copy that spell, and the copy targets the chosen player or permanent. From 2ef75ac2a389cf0a0979602e9896cb9e68b644bb Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 09:32:17 +0100 Subject: [PATCH 13/91] Edit pile cleanup: Line reordering, first pass: part 5, folder 'tokenscripts', part 1 --- forge-gui/res/tokenscripts/ajanis_pridemate.txt | 2 +- forge-gui/res/tokenscripts/ashaya_the_awoken_world.txt | 2 +- forge-gui/res/tokenscripts/avacyn.txt | 2 +- forge-gui/res/tokenscripts/b_0_0_orc_army.txt | 2 +- forge-gui/res/tokenscripts/b_0_0_phyrexian_germ.txt | 2 +- forge-gui/res/tokenscripts/b_0_0_sliver_army.txt | 2 +- forge-gui/res/tokenscripts/b_0_0_zombie_army.txt | 2 +- forge-gui/res/tokenscripts/b_0_1_cleric.txt | 2 +- forge-gui/res/tokenscripts/b_0_1_insect.txt | 2 +- forge-gui/res/tokenscripts/b_0_1_serf.txt | 2 +- forge-gui/res/tokenscripts/b_0_1_thrull.txt | 2 +- .../res/tokenscripts/b_1_1_assassin_deathtouch_haste.txt | 2 +- .../res/tokenscripts/b_1_1_assassin_deathtouch_pwdestroy.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_assassin_lose_con.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_assassin_menace.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_bat_flying.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_bird_flying_noblock.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_cat.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_faerie_rogue_flying.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_fungus_noblock.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_goblin_rogue.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_harpy_flying.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_horror.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_insect.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_insect_flying.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_minion.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_nightmare_exile_counter.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_rat.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_rat_deathtouch.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_rat_lifelink.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_rat_noblock.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_rat_relentless.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_rat_rogue.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_skeleton.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_skeleton_opp_life.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_slug.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_snail.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_snake_deathtouch.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_thrull.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_vampire.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_vampire_knight_lifelink.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_vampire_lifelink.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_vampire_rogue_lifelink.txt | 2 +- forge-gui/res/tokenscripts/b_1_1_wolf_deathtouch.txt | 2 +- forge-gui/res/tokenscripts/b_1_2_bat_flying_nosferatu.txt | 2 +- forge-gui/res/tokenscripts/b_2_1_bat_flying.txt | 2 +- forge-gui/res/tokenscripts/b_2_1_cat.txt | 2 +- forge-gui/res/tokenscripts/b_2_1_skeleton.txt | 2 +- forge-gui/res/tokenscripts/b_2_1_spider_menace_reach.txt | 2 +- forge-gui/res/tokenscripts/b_2_1_warrior.txt | 2 +- forge-gui/res/tokenscripts/b_2_2_a_necron_warrior.txt | 2 +- forge-gui/res/tokenscripts/b_2_2_astartes_warrior_menace.txt | 2 +- forge-gui/res/tokenscripts/b_2_2_e_zombie.txt | 2 +- forge-gui/res/tokenscripts/b_2_2_human_rogue.txt | 2 +- .../tokenscripts/b_2_2_knight_flanking_pro_white_haste.txt | 2 +- forge-gui/res/tokenscripts/b_2_2_phyrexian.txt | 2 +- forge-gui/res/tokenscripts/b_2_2_phyrexian_zombie.txt | 2 +- forge-gui/res/tokenscripts/b_2_2_pirate_menace.txt | 2 +- forge-gui/res/tokenscripts/b_2_2_rogue.txt | 2 +- forge-gui/res/tokenscripts/b_2_2_rogue_hexproof.txt | 2 +- forge-gui/res/tokenscripts/b_2_2_rogue_menace.txt | 2 +- forge-gui/res/tokenscripts/b_2_2_skeleton_pirate.txt | 2 +- forge-gui/res/tokenscripts/b_2_2_vampire_flying.txt | 2 +- forge-gui/res/tokenscripts/b_2_2_zombie.txt | 2 +- forge-gui/res/tokenscripts/b_2_2_zombie_berserker.txt | 2 +- forge-gui/res/tokenscripts/b_2_2_zombie_decayed.txt | 2 +- forge-gui/res/tokenscripts/b_2_2_zombie_knight_menace.txt | 2 +- forge-gui/res/tokenscripts/b_2_2_zombie_mutant.txt | 2 +- forge-gui/res/tokenscripts/b_2_3_vampire_flying_lifelink.txt | 2 +- forge-gui/res/tokenscripts/b_2_4_spider_reach.txt | 2 +- forge-gui/res/tokenscripts/b_3_3_a_dalek_menace.txt | 2 +- forge-gui/res/tokenscripts/b_3_3_angel_flying.txt | 2 +- forge-gui/res/tokenscripts/b_3_3_beast_deathtouch.txt | 2 +- forge-gui/res/tokenscripts/b_3_3_demon.txt | 2 +- forge-gui/res/tokenscripts/b_3_3_horror.txt | 2 +- forge-gui/res/tokenscripts/b_3_3_kavu.txt | 2 +- forge-gui/res/tokenscripts/b_3_3_wraith_menace.txt | 2 +- forge-gui/res/tokenscripts/b_4_1_skeleton_menace.txt | 2 +- forge-gui/res/tokenscripts/b_4_3_ogre_warrior.txt | 2 +- forge-gui/res/tokenscripts/b_4_4_horror.txt | 2 +- forge-gui/res/tokenscripts/b_4_4_zombie_warrior_vigilance.txt | 2 +- forge-gui/res/tokenscripts/b_5_5_demon_flying.txt | 2 +- forge-gui/res/tokenscripts/b_5_5_zombie_giant.txt | 2 +- .../tokenscripts/b_6_6_demon_flying_trample_aristocrat.txt | 2 +- forge-gui/res/tokenscripts/b_6_6_wurm_trample.txt | 2 +- forge-gui/res/tokenscripts/b_aura_curse_life.txt | 2 +- forge-gui/res/tokenscripts/b_x_x_phyrexian_minion.txt | 2 +- forge-gui/res/tokenscripts/beau.txt | 2 +- forge-gui/res/tokenscripts/bg_1_1_e_snake_deathtouch.txt | 2 +- forge-gui/res/tokenscripts/bg_1_1_insect.txt | 2 +- forge-gui/res/tokenscripts/bg_1_1_pest_lifegain.txt | 2 +- forge-gui/res/tokenscripts/bg_1_1_worm.txt | 2 +- forge-gui/res/tokenscripts/bg_2_1_spider_menace_reach.txt | 2 +- forge-gui/res/tokenscripts/bg_2_2_wolf_garruk.txt | 2 +- forge-gui/res/tokenscripts/boo.txt | 2 +- forge-gui/res/tokenscripts/br_3_1_graveborn_haste.txt | 4 ++-- .../tokenscripts/br_3_1_vampire_trample_lifelink_haste.txt | 2 +- forge-gui/res/tokenscripts/br_3_6_avatar_haste_bolt.txt | 4 ++-- forge-gui/res/tokenscripts/br_5_5_elemental.txt | 2 +- .../res/tokenscripts/br_6_6_dragon_flying_menace_steal.txt | 2 +- 100 files changed, 102 insertions(+), 102 deletions(-) diff --git a/forge-gui/res/tokenscripts/ajanis_pridemate.txt b/forge-gui/res/tokenscripts/ajanis_pridemate.txt index 2a547fb83da..b56dc5b06bb 100644 --- a/forge-gui/res/tokenscripts/ajanis_pridemate.txt +++ b/forge-gui/res/tokenscripts/ajanis_pridemate.txt @@ -1,8 +1,8 @@ Name:Ajani's Pridemate ManaCost:no cost +Colors:white Types:Creature Cat Soldier PT:2/2 -Colors:white T:Mode$ LifeGained | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever you gain life, put a +1/+1 counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 Oracle:Whenever you gain life, put a +1/+1 counter on Ajani's Pridemate. diff --git a/forge-gui/res/tokenscripts/ashaya_the_awoken_world.txt b/forge-gui/res/tokenscripts/ashaya_the_awoken_world.txt index 0a84208fe18..564db38f671 100644 --- a/forge-gui/res/tokenscripts/ashaya_the_awoken_world.txt +++ b/forge-gui/res/tokenscripts/ashaya_the_awoken_world.txt @@ -1,6 +1,6 @@ Name:Ashaya, the Awoken World ManaCost:no cost -Types:Legendary Creature Elemental Colors:green +Types:Legendary Creature Elemental PT:4/4 Oracle: diff --git a/forge-gui/res/tokenscripts/avacyn.txt b/forge-gui/res/tokenscripts/avacyn.txt index 53155987f8a..2c7e8eec8cf 100644 --- a/forge-gui/res/tokenscripts/avacyn.txt +++ b/forge-gui/res/tokenscripts/avacyn.txt @@ -1,8 +1,8 @@ Name:Avacyn ManaCost:no cost +Colors:white Types:Legendary Creature Angel PT:8/8 -Colors:white K:Flying K:Vigilance K:Indestructible diff --git a/forge-gui/res/tokenscripts/b_0_0_orc_army.txt b/forge-gui/res/tokenscripts/b_0_0_orc_army.txt index 12d0ff10a03..987d845a2d9 100644 --- a/forge-gui/res/tokenscripts/b_0_0_orc_army.txt +++ b/forge-gui/res/tokenscripts/b_0_0_orc_army.txt @@ -1,6 +1,6 @@ Name:Orc Army Token ManaCost:no cost -Types:Creature Orc Army Colors:black +Types:Creature Orc Army PT:0/0 Oracle: diff --git a/forge-gui/res/tokenscripts/b_0_0_phyrexian_germ.txt b/forge-gui/res/tokenscripts/b_0_0_phyrexian_germ.txt index 700f4fa02fb..aa24aec1ba5 100644 --- a/forge-gui/res/tokenscripts/b_0_0_phyrexian_germ.txt +++ b/forge-gui/res/tokenscripts/b_0_0_phyrexian_germ.txt @@ -1,6 +1,6 @@ Name:Phyrexian Germ Token ManaCost:no cost -Types:Creature Phyrexian Germ Colors:black +Types:Creature Phyrexian Germ PT:0/0 Oracle: diff --git a/forge-gui/res/tokenscripts/b_0_0_sliver_army.txt b/forge-gui/res/tokenscripts/b_0_0_sliver_army.txt index 63dcce57f3b..157540add21 100644 --- a/forge-gui/res/tokenscripts/b_0_0_sliver_army.txt +++ b/forge-gui/res/tokenscripts/b_0_0_sliver_army.txt @@ -1,6 +1,6 @@ Name:Sliver Army Token ManaCost:no cost -Types:Creature Sliver Army Colors:black +Types:Creature Sliver Army PT:0/0 Oracle: diff --git a/forge-gui/res/tokenscripts/b_0_0_zombie_army.txt b/forge-gui/res/tokenscripts/b_0_0_zombie_army.txt index c696ec74ab8..d3cba62010e 100644 --- a/forge-gui/res/tokenscripts/b_0_0_zombie_army.txt +++ b/forge-gui/res/tokenscripts/b_0_0_zombie_army.txt @@ -1,6 +1,6 @@ Name:Zombie Army Token ManaCost:no cost -Types:Creature Zombie Army Colors:black +Types:Creature Zombie Army PT:0/0 Oracle: diff --git a/forge-gui/res/tokenscripts/b_0_1_cleric.txt b/forge-gui/res/tokenscripts/b_0_1_cleric.txt index 56efc9ba613..0e11d9c9f82 100644 --- a/forge-gui/res/tokenscripts/b_0_1_cleric.txt +++ b/forge-gui/res/tokenscripts/b_0_1_cleric.txt @@ -1,6 +1,6 @@ Name:Cleric Token ManaCost:no cost -Types:Creature Cleric Colors:black +Types:Creature Cleric PT:0/1 Oracle: diff --git a/forge-gui/res/tokenscripts/b_0_1_insect.txt b/forge-gui/res/tokenscripts/b_0_1_insect.txt index d8086570f2b..c4c1dc4d59d 100644 --- a/forge-gui/res/tokenscripts/b_0_1_insect.txt +++ b/forge-gui/res/tokenscripts/b_0_1_insect.txt @@ -1,6 +1,6 @@ Name:Insect Token ManaCost:no cost -Types:Creature Insect Colors:black +Types:Creature Insect PT:0/1 Oracle: diff --git a/forge-gui/res/tokenscripts/b_0_1_serf.txt b/forge-gui/res/tokenscripts/b_0_1_serf.txt index 5b34b08b7b5..a897e851e91 100644 --- a/forge-gui/res/tokenscripts/b_0_1_serf.txt +++ b/forge-gui/res/tokenscripts/b_0_1_serf.txt @@ -1,6 +1,6 @@ Name:Serf Token ManaCost:no cost -Types:Creature Serf Colors:black +Types:Creature Serf PT:0/1 Oracle: diff --git a/forge-gui/res/tokenscripts/b_0_1_thrull.txt b/forge-gui/res/tokenscripts/b_0_1_thrull.txt index 1b29abedd0d..f2074060842 100644 --- a/forge-gui/res/tokenscripts/b_0_1_thrull.txt +++ b/forge-gui/res/tokenscripts/b_0_1_thrull.txt @@ -1,6 +1,6 @@ Name:Thrull Token ManaCost:no cost -Types:Creature Thrull Colors:black +Types:Creature Thrull PT:0/1 Oracle: diff --git a/forge-gui/res/tokenscripts/b_1_1_assassin_deathtouch_haste.txt b/forge-gui/res/tokenscripts/b_1_1_assassin_deathtouch_haste.txt index bc703bd77fa..7d5fa338e47 100644 --- a/forge-gui/res/tokenscripts/b_1_1_assassin_deathtouch_haste.txt +++ b/forge-gui/res/tokenscripts/b_1_1_assassin_deathtouch_haste.txt @@ -1,7 +1,7 @@ Name:Assassin Token ManaCost:no cost -Types:Creature Assassin Colors:black +Types:Creature Assassin PT:1/1 K:Deathtouch K:Haste diff --git a/forge-gui/res/tokenscripts/b_1_1_assassin_deathtouch_pwdestroy.txt b/forge-gui/res/tokenscripts/b_1_1_assassin_deathtouch_pwdestroy.txt index df220c2a174..812913480b9 100644 --- a/forge-gui/res/tokenscripts/b_1_1_assassin_deathtouch_pwdestroy.txt +++ b/forge-gui/res/tokenscripts/b_1_1_assassin_deathtouch_pwdestroy.txt @@ -1,7 +1,7 @@ Name:Assassin Token ManaCost:no cost -Types:Creature Assassin Colors:black +Types:Creature Assassin PT:1/1 K:Deathtouch T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Planeswalker | TriggerZones$ Battlefield | Execute$ TrigDestroyPW | TriggerDescription$ Whenever this creature deals damage to a planeswalker, destroy that planeswalker. diff --git a/forge-gui/res/tokenscripts/b_1_1_assassin_lose_con.txt b/forge-gui/res/tokenscripts/b_1_1_assassin_lose_con.txt index 33395dfca6f..2df8a06986f 100644 --- a/forge-gui/res/tokenscripts/b_1_1_assassin_lose_con.txt +++ b/forge-gui/res/tokenscripts/b_1_1_assassin_lose_con.txt @@ -1,7 +1,7 @@ Name:Assassin Token ManaCost:no cost -Types:Creature Assassin Colors:black +Types:Creature Assassin PT:1/1 T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | Execute$ Assassination | TriggerDescription$ Whenever this creature deals combat damage to a player, that player loses the game. SVar:Assassination:DB$ LosesGame | Defined$ TriggeredTarget diff --git a/forge-gui/res/tokenscripts/b_1_1_assassin_menace.txt b/forge-gui/res/tokenscripts/b_1_1_assassin_menace.txt index d82db1c9b8c..5c2ab936ec2 100644 --- a/forge-gui/res/tokenscripts/b_1_1_assassin_menace.txt +++ b/forge-gui/res/tokenscripts/b_1_1_assassin_menace.txt @@ -1,7 +1,7 @@ Name:Assassin Token ManaCost:no cost -Types:Creature Assassin Colors:black +Types:Creature Assassin PT:1/1 K:Menace Oracle:Menace diff --git a/forge-gui/res/tokenscripts/b_1_1_bat_flying.txt b/forge-gui/res/tokenscripts/b_1_1_bat_flying.txt index 8ce9c92fe5a..1f1e973c7a1 100644 --- a/forge-gui/res/tokenscripts/b_1_1_bat_flying.txt +++ b/forge-gui/res/tokenscripts/b_1_1_bat_flying.txt @@ -1,7 +1,7 @@ Name:Bat Token ManaCost:no cost -Types:Creature Bat Colors:black +Types:Creature Bat PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/b_1_1_bird_flying_noblock.txt b/forge-gui/res/tokenscripts/b_1_1_bird_flying_noblock.txt index f49bffd1af5..2cf664c6f4b 100644 --- a/forge-gui/res/tokenscripts/b_1_1_bird_flying_noblock.txt +++ b/forge-gui/res/tokenscripts/b_1_1_bird_flying_noblock.txt @@ -1,7 +1,7 @@ Name:Bird Token ManaCost:no cost -Types:Creature Bird Colors:black +Types:Creature Bird PT:1/1 K:Flying S:Mode$ CantBlockBy | ValidBlocker$ Creature.Self | Description$ CARDNAME can't block. diff --git a/forge-gui/res/tokenscripts/b_1_1_cat.txt b/forge-gui/res/tokenscripts/b_1_1_cat.txt index 963c09790d7..96dff533fa4 100644 --- a/forge-gui/res/tokenscripts/b_1_1_cat.txt +++ b/forge-gui/res/tokenscripts/b_1_1_cat.txt @@ -1,6 +1,6 @@ Name:Cat Token ManaCost:no cost -Types:Creature Cat Colors:black +Types:Creature Cat PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/b_1_1_faerie_rogue_flying.txt b/forge-gui/res/tokenscripts/b_1_1_faerie_rogue_flying.txt index 12d7bc6db1d..cdb2359659d 100644 --- a/forge-gui/res/tokenscripts/b_1_1_faerie_rogue_flying.txt +++ b/forge-gui/res/tokenscripts/b_1_1_faerie_rogue_flying.txt @@ -1,7 +1,7 @@ Name:Faerie Rogue Token ManaCost:no cost -Types:Creature Faerie Rogue Colors:black +Types:Creature Faerie Rogue PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/b_1_1_fungus_noblock.txt b/forge-gui/res/tokenscripts/b_1_1_fungus_noblock.txt index 8a67b71a864..cdfe6e63757 100644 --- a/forge-gui/res/tokenscripts/b_1_1_fungus_noblock.txt +++ b/forge-gui/res/tokenscripts/b_1_1_fungus_noblock.txt @@ -1,7 +1,7 @@ Name:Fungus Token ManaCost:no cost -Types:Creature Fungus Colors:black +Types:Creature Fungus PT:1/1 S:Mode$ CantBlockBy | ValidBlocker$ Creature.Self | Description$ This creature can't block. Oracle:This creature can't block. diff --git a/forge-gui/res/tokenscripts/b_1_1_goblin_rogue.txt b/forge-gui/res/tokenscripts/b_1_1_goblin_rogue.txt index c719ba3c61b..ac73730ffe9 100644 --- a/forge-gui/res/tokenscripts/b_1_1_goblin_rogue.txt +++ b/forge-gui/res/tokenscripts/b_1_1_goblin_rogue.txt @@ -1,6 +1,6 @@ Name:Goblin Rogue Token ManaCost:no cost -Types:Creature Goblin Rogue Colors:black +Types:Creature Goblin Rogue PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/b_1_1_harpy_flying.txt b/forge-gui/res/tokenscripts/b_1_1_harpy_flying.txt index ed694bee8cc..c4a30980946 100644 --- a/forge-gui/res/tokenscripts/b_1_1_harpy_flying.txt +++ b/forge-gui/res/tokenscripts/b_1_1_harpy_flying.txt @@ -1,7 +1,7 @@ Name:Harpy Token ManaCost:no cost -Types:Creature Harpy Colors:black +Types:Creature Harpy PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/b_1_1_horror.txt b/forge-gui/res/tokenscripts/b_1_1_horror.txt index 69e43551eb5..6fd567cd421 100644 --- a/forge-gui/res/tokenscripts/b_1_1_horror.txt +++ b/forge-gui/res/tokenscripts/b_1_1_horror.txt @@ -1,6 +1,6 @@ Name:Horror Token ManaCost:no cost -Types:Creature Horror Colors:black +Types:Creature Horror PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/b_1_1_insect.txt b/forge-gui/res/tokenscripts/b_1_1_insect.txt index 388da4b351b..55102bf5a7d 100644 --- a/forge-gui/res/tokenscripts/b_1_1_insect.txt +++ b/forge-gui/res/tokenscripts/b_1_1_insect.txt @@ -1,6 +1,6 @@ Name:Insect Token ManaCost:no cost -Types:Creature Insect Colors:black +Types:Creature Insect PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/b_1_1_insect_flying.txt b/forge-gui/res/tokenscripts/b_1_1_insect_flying.txt index b5bc86c41d6..d0bacfa9bc4 100644 --- a/forge-gui/res/tokenscripts/b_1_1_insect_flying.txt +++ b/forge-gui/res/tokenscripts/b_1_1_insect_flying.txt @@ -1,7 +1,7 @@ Name:Insect Token ManaCost:no cost -Types:Creature Insect Colors:black +Types:Creature Insect PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/b_1_1_minion.txt b/forge-gui/res/tokenscripts/b_1_1_minion.txt index e99b9760217..2b19e325b31 100644 --- a/forge-gui/res/tokenscripts/b_1_1_minion.txt +++ b/forge-gui/res/tokenscripts/b_1_1_minion.txt @@ -1,6 +1,6 @@ Name:Minion Token ManaCost:no cost -Types:Creature Minion Colors:black +Types:Creature Minion PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/b_1_1_nightmare_exile_counter.txt b/forge-gui/res/tokenscripts/b_1_1_nightmare_exile_counter.txt index 5d712414d35..a98afa8276a 100644 --- a/forge-gui/res/tokenscripts/b_1_1_nightmare_exile_counter.txt +++ b/forge-gui/res/tokenscripts/b_1_1_nightmare_exile_counter.txt @@ -1,7 +1,7 @@ Name:Nightmare Token ManaCost:no cost -Types:Creature Nightmare Colors:black +Types:Creature Nightmare PT:1/1 T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Battlefield | CheckSVar$ X | SVarCompare$ GE1 | Execute$ TrigPutCounter | TriggerDescription$ At the beginning of combat on your turn, if a card was put into exile this turn, put a +1/+1 counter on this creature. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 diff --git a/forge-gui/res/tokenscripts/b_1_1_rat.txt b/forge-gui/res/tokenscripts/b_1_1_rat.txt index 387550ea478..e8a9d315ce2 100644 --- a/forge-gui/res/tokenscripts/b_1_1_rat.txt +++ b/forge-gui/res/tokenscripts/b_1_1_rat.txt @@ -1,6 +1,6 @@ Name:Rat Token ManaCost:no cost -Types:Creature Rat Colors:black +Types:Creature Rat PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/b_1_1_rat_deathtouch.txt b/forge-gui/res/tokenscripts/b_1_1_rat_deathtouch.txt index 24257716343..52731d11479 100644 --- a/forge-gui/res/tokenscripts/b_1_1_rat_deathtouch.txt +++ b/forge-gui/res/tokenscripts/b_1_1_rat_deathtouch.txt @@ -1,7 +1,7 @@ Name:Rat Token ManaCost:no cost -Types:Creature Rat Colors:black +Types:Creature Rat PT:1/1 K:Deathtouch Oracle:Deathtouch diff --git a/forge-gui/res/tokenscripts/b_1_1_rat_lifelink.txt b/forge-gui/res/tokenscripts/b_1_1_rat_lifelink.txt index a07ece84913..35f2a7a7d27 100644 --- a/forge-gui/res/tokenscripts/b_1_1_rat_lifelink.txt +++ b/forge-gui/res/tokenscripts/b_1_1_rat_lifelink.txt @@ -1,7 +1,7 @@ Name:Rat Token ManaCost:no cost -Types:Creature Rat Colors:black +Types:Creature Rat PT:1/1 K:Lifelink Oracle:Lifelink diff --git a/forge-gui/res/tokenscripts/b_1_1_rat_noblock.txt b/forge-gui/res/tokenscripts/b_1_1_rat_noblock.txt index 7e8ee2e87cd..1501775229b 100644 --- a/forge-gui/res/tokenscripts/b_1_1_rat_noblock.txt +++ b/forge-gui/res/tokenscripts/b_1_1_rat_noblock.txt @@ -1,7 +1,7 @@ Name:Rat Token ManaCost:no cost -Types:Creature Rat Colors:black +Types:Creature Rat PT:1/1 S:Mode$ CantBlockBy | ValidBlocker$ Creature.Self | Description$ CARDNAME can't block. Oracle:This creature can't block. diff --git a/forge-gui/res/tokenscripts/b_1_1_rat_relentless.txt b/forge-gui/res/tokenscripts/b_1_1_rat_relentless.txt index f9feb2fad28..685c70589d8 100644 --- a/forge-gui/res/tokenscripts/b_1_1_rat_relentless.txt +++ b/forge-gui/res/tokenscripts/b_1_1_rat_relentless.txt @@ -1,8 +1,8 @@ Name:Rat Token ManaCost:no cost +Colors:black Types:Creature Rat PT:1/1 -Colors:black S:Mode$ Continuous | Affected$ Card.Self | AddPower$ X | AddToughness$ X | Description$ This creature gets +1/+1 for each other Rat you control. SVar:X:Count$Valid Rat.Other+YouCtrl Oracle:This creature gets +1/+1 for each other Rat you control. diff --git a/forge-gui/res/tokenscripts/b_1_1_rat_rogue.txt b/forge-gui/res/tokenscripts/b_1_1_rat_rogue.txt index 48734af9ad8..c0094979534 100644 --- a/forge-gui/res/tokenscripts/b_1_1_rat_rogue.txt +++ b/forge-gui/res/tokenscripts/b_1_1_rat_rogue.txt @@ -1,6 +1,6 @@ Name:Rat Rogue Token ManaCost:no cost -Types:Creature Rat Rogue Colors:black +Types:Creature Rat Rogue PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/b_1_1_skeleton.txt b/forge-gui/res/tokenscripts/b_1_1_skeleton.txt index 54d342633f9..f18c24937bf 100644 --- a/forge-gui/res/tokenscripts/b_1_1_skeleton.txt +++ b/forge-gui/res/tokenscripts/b_1_1_skeleton.txt @@ -1,6 +1,6 @@ Name:Skeleton Token ManaCost:no cost -Types:Creature Skeleton Colors:black +Types:Creature Skeleton PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/b_1_1_skeleton_opp_life.txt b/forge-gui/res/tokenscripts/b_1_1_skeleton_opp_life.txt index 32b611e4367..2b987649ad1 100644 --- a/forge-gui/res/tokenscripts/b_1_1_skeleton_opp_life.txt +++ b/forge-gui/res/tokenscripts/b_1_1_skeleton_opp_life.txt @@ -1,7 +1,7 @@ Name:Skeleton Token ManaCost:no cost -Types:Creature Minion Colors:black +Types:Creature Minion PT:1/1 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigGainLife | TriggerDescription$ When CARDNAME dies, each opponent gains 2 life. SVar:TrigGainLife:DB$ GainLife | Defined$ Player.Opponent | LifeAmount$ 2 diff --git a/forge-gui/res/tokenscripts/b_1_1_slug.txt b/forge-gui/res/tokenscripts/b_1_1_slug.txt index dbf6b0705f5..988564e0175 100644 --- a/forge-gui/res/tokenscripts/b_1_1_slug.txt +++ b/forge-gui/res/tokenscripts/b_1_1_slug.txt @@ -1,6 +1,6 @@ Name:Slug Token ManaCost:no cost -Types:Creature Slug Colors:black +Types:Creature Slug PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/b_1_1_snail.txt b/forge-gui/res/tokenscripts/b_1_1_snail.txt index 6894a8c7450..7927eb05a84 100644 --- a/forge-gui/res/tokenscripts/b_1_1_snail.txt +++ b/forge-gui/res/tokenscripts/b_1_1_snail.txt @@ -1,6 +1,6 @@ Name:Snail Token ManaCost:no cost +Colors:black Types:Creature Snail PT:1/1 -Colors:black Oracle: diff --git a/forge-gui/res/tokenscripts/b_1_1_snake_deathtouch.txt b/forge-gui/res/tokenscripts/b_1_1_snake_deathtouch.txt index 9c886a66816..d3b495014aa 100644 --- a/forge-gui/res/tokenscripts/b_1_1_snake_deathtouch.txt +++ b/forge-gui/res/tokenscripts/b_1_1_snake_deathtouch.txt @@ -1,7 +1,7 @@ Name:Snake Token ManaCost:no cost -Types:Creature Snake Colors:black +Types:Creature Snake PT:1/1 K:Deathtouch Oracle:Deathtouch diff --git a/forge-gui/res/tokenscripts/b_1_1_thrull.txt b/forge-gui/res/tokenscripts/b_1_1_thrull.txt index 2c9bdf610d1..aca4ec18f9e 100644 --- a/forge-gui/res/tokenscripts/b_1_1_thrull.txt +++ b/forge-gui/res/tokenscripts/b_1_1_thrull.txt @@ -1,6 +1,6 @@ Name:Thrull Token ManaCost:no cost -Types:Creature Thrull Colors:black +Types:Creature Thrull PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/b_1_1_vampire.txt b/forge-gui/res/tokenscripts/b_1_1_vampire.txt index f5ef95a26c1..d7c0a8a3625 100644 --- a/forge-gui/res/tokenscripts/b_1_1_vampire.txt +++ b/forge-gui/res/tokenscripts/b_1_1_vampire.txt @@ -1,6 +1,6 @@ Name:Vampire Token ManaCost:no cost -Types:Creature Vampire Colors:black +Types:Creature Vampire PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/b_1_1_vampire_knight_lifelink.txt b/forge-gui/res/tokenscripts/b_1_1_vampire_knight_lifelink.txt index 4da021eeffb..7bea738564d 100644 --- a/forge-gui/res/tokenscripts/b_1_1_vampire_knight_lifelink.txt +++ b/forge-gui/res/tokenscripts/b_1_1_vampire_knight_lifelink.txt @@ -1,7 +1,7 @@ Name:Vampire Knight Token ManaCost:no cost -Types:Creature Vampire Knight Colors:black +Types:Creature Vampire Knight PT:1/1 K:Lifelink Oracle:Lifelink diff --git a/forge-gui/res/tokenscripts/b_1_1_vampire_lifelink.txt b/forge-gui/res/tokenscripts/b_1_1_vampire_lifelink.txt index 5ea01970e47..5193261cadd 100644 --- a/forge-gui/res/tokenscripts/b_1_1_vampire_lifelink.txt +++ b/forge-gui/res/tokenscripts/b_1_1_vampire_lifelink.txt @@ -1,7 +1,7 @@ Name:Vampire Token ManaCost:no cost -Types:Creature Vampire Colors:black +Types:Creature Vampire PT:1/1 K:Lifelink Oracle:Lifelink diff --git a/forge-gui/res/tokenscripts/b_1_1_vampire_rogue_lifelink.txt b/forge-gui/res/tokenscripts/b_1_1_vampire_rogue_lifelink.txt index 246cb162c3d..8d0db389f40 100644 --- a/forge-gui/res/tokenscripts/b_1_1_vampire_rogue_lifelink.txt +++ b/forge-gui/res/tokenscripts/b_1_1_vampire_rogue_lifelink.txt @@ -1,7 +1,7 @@ Name:Vampire Rogue Token ManaCost:no cost -Types:Creature Vampire Rogue Colors:black +Types:Creature Vampire Rogue PT:1/1 K:Lifelink Oracle:Lifelink diff --git a/forge-gui/res/tokenscripts/b_1_1_wolf_deathtouch.txt b/forge-gui/res/tokenscripts/b_1_1_wolf_deathtouch.txt index c9b44a7fc5b..a9408a3b578 100644 --- a/forge-gui/res/tokenscripts/b_1_1_wolf_deathtouch.txt +++ b/forge-gui/res/tokenscripts/b_1_1_wolf_deathtouch.txt @@ -1,7 +1,7 @@ Name:Wolf Token ManaCost:no cost -Types:Creature Wolf Colors:black +Types:Creature Wolf PT:1/1 K:Deathtouch Oracle:Deathtouch diff --git a/forge-gui/res/tokenscripts/b_1_2_bat_flying_nosferatu.txt b/forge-gui/res/tokenscripts/b_1_2_bat_flying_nosferatu.txt index 89061f2dfed..d041d0d6ace 100644 --- a/forge-gui/res/tokenscripts/b_1_2_bat_flying_nosferatu.txt +++ b/forge-gui/res/tokenscripts/b_1_2_bat_flying_nosferatu.txt @@ -1,7 +1,7 @@ Name:Bat Token ManaCost:no cost -Types:Creature Bat Colors:black +Types:Creature Bat PT:1/2 K:Flying A:AB$ ChangeZone | Cost$ 1 B Sac<1/CARDNAME> | ChangeType$ Card.namedSengir Nosferatu | ChangeNum$ 1 | Origin$ Exile | Destination$ Battlefield | Hidden$ True | SpellDescription$ Return an exiled card named Sengir Nosferatu to the battlefield under its owner's control. diff --git a/forge-gui/res/tokenscripts/b_2_1_bat_flying.txt b/forge-gui/res/tokenscripts/b_2_1_bat_flying.txt index 333ae3887ab..92e0e3bbcbd 100644 --- a/forge-gui/res/tokenscripts/b_2_1_bat_flying.txt +++ b/forge-gui/res/tokenscripts/b_2_1_bat_flying.txt @@ -1,7 +1,7 @@ Name:Bat Token ManaCost:no cost -Types:Creature Bat Colors:black +Types:Creature Bat PT:2/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/b_2_1_cat.txt b/forge-gui/res/tokenscripts/b_2_1_cat.txt index 2a1672e3c0c..57147cbc25e 100644 --- a/forge-gui/res/tokenscripts/b_2_1_cat.txt +++ b/forge-gui/res/tokenscripts/b_2_1_cat.txt @@ -1,6 +1,6 @@ Name:Cat Token ManaCost:no cost -Types:Creature Cat Colors:black +Types:Creature Cat PT:2/1 Oracle: diff --git a/forge-gui/res/tokenscripts/b_2_1_skeleton.txt b/forge-gui/res/tokenscripts/b_2_1_skeleton.txt index 7f0d85b2784..f47a9c4ebb3 100644 --- a/forge-gui/res/tokenscripts/b_2_1_skeleton.txt +++ b/forge-gui/res/tokenscripts/b_2_1_skeleton.txt @@ -1,6 +1,6 @@ Name:Skeleton Token ManaCost:no cost -Types:Creature Skeleton Colors:black +Types:Creature Skeleton PT:2/1 Oracle: diff --git a/forge-gui/res/tokenscripts/b_2_1_spider_menace_reach.txt b/forge-gui/res/tokenscripts/b_2_1_spider_menace_reach.txt index 58ee9448c6b..27da244be0f 100644 --- a/forge-gui/res/tokenscripts/b_2_1_spider_menace_reach.txt +++ b/forge-gui/res/tokenscripts/b_2_1_spider_menace_reach.txt @@ -1,7 +1,7 @@ Name:Spider Token ManaCost:no cost -Types:Creature Spider Colors:black +Types:Creature Spider PT:2/1 K:Menace K:Reach diff --git a/forge-gui/res/tokenscripts/b_2_1_warrior.txt b/forge-gui/res/tokenscripts/b_2_1_warrior.txt index d3080fd6bea..f7a09f53d27 100644 --- a/forge-gui/res/tokenscripts/b_2_1_warrior.txt +++ b/forge-gui/res/tokenscripts/b_2_1_warrior.txt @@ -1,6 +1,6 @@ Name:Warrior Token ManaCost:no cost -Types:Creature Warrior Colors:black +Types:Creature Warrior PT:2/1 Oracle: diff --git a/forge-gui/res/tokenscripts/b_2_2_a_necron_warrior.txt b/forge-gui/res/tokenscripts/b_2_2_a_necron_warrior.txt index de558ab0189..f8e9568599b 100644 --- a/forge-gui/res/tokenscripts/b_2_2_a_necron_warrior.txt +++ b/forge-gui/res/tokenscripts/b_2_2_a_necron_warrior.txt @@ -1,6 +1,6 @@ Name:Necron Warrior Token ManaCost:no cost -Types:Artifact Creature Necron Warrior Colors:black +Types:Artifact Creature Necron Warrior PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/b_2_2_astartes_warrior_menace.txt b/forge-gui/res/tokenscripts/b_2_2_astartes_warrior_menace.txt index 185e86dd4b2..e264778ed68 100644 --- a/forge-gui/res/tokenscripts/b_2_2_astartes_warrior_menace.txt +++ b/forge-gui/res/tokenscripts/b_2_2_astartes_warrior_menace.txt @@ -1,7 +1,7 @@ Name:Astartes Warrior Token ManaCost:no cost -Types:Creature Astartes Warrior Colors:black +Types:Creature Astartes Warrior PT:2/2 K:Menace Oracle:Menace diff --git a/forge-gui/res/tokenscripts/b_2_2_e_zombie.txt b/forge-gui/res/tokenscripts/b_2_2_e_zombie.txt index 34ed124c315..a7433c258bf 100644 --- a/forge-gui/res/tokenscripts/b_2_2_e_zombie.txt +++ b/forge-gui/res/tokenscripts/b_2_2_e_zombie.txt @@ -1,6 +1,6 @@ Name:Zombie Token ManaCost:no cost -Types:Enchantment Creature Zombie Colors:black +Types:Enchantment Creature Zombie PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/b_2_2_human_rogue.txt b/forge-gui/res/tokenscripts/b_2_2_human_rogue.txt index 15665ec9d98..5c8ec539459 100644 --- a/forge-gui/res/tokenscripts/b_2_2_human_rogue.txt +++ b/forge-gui/res/tokenscripts/b_2_2_human_rogue.txt @@ -1,6 +1,6 @@ Name:Human Rogue Token ManaCost:no cost -Types:Creature Human Rogue Colors:black +Types:Creature Human Rogue PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/b_2_2_knight_flanking_pro_white_haste.txt b/forge-gui/res/tokenscripts/b_2_2_knight_flanking_pro_white_haste.txt index edc3748e46a..4372f3496e9 100644 --- a/forge-gui/res/tokenscripts/b_2_2_knight_flanking_pro_white_haste.txt +++ b/forge-gui/res/tokenscripts/b_2_2_knight_flanking_pro_white_haste.txt @@ -1,7 +1,7 @@ Name:Knight Token ManaCost:no cost -Types:Creature Knight Colors:black +Types:Creature Knight PT:2/2 K:Flanking K:Protection from white diff --git a/forge-gui/res/tokenscripts/b_2_2_phyrexian.txt b/forge-gui/res/tokenscripts/b_2_2_phyrexian.txt index a179bb0dc23..3d19f1555d1 100644 --- a/forge-gui/res/tokenscripts/b_2_2_phyrexian.txt +++ b/forge-gui/res/tokenscripts/b_2_2_phyrexian.txt @@ -1,6 +1,6 @@ Name:Phyrexian Token ManaCost:no cost -Types:Creature Phyrexian Colors:black +Types:Creature Phyrexian PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/b_2_2_phyrexian_zombie.txt b/forge-gui/res/tokenscripts/b_2_2_phyrexian_zombie.txt index 29781c4fd0f..95fbe49188d 100644 --- a/forge-gui/res/tokenscripts/b_2_2_phyrexian_zombie.txt +++ b/forge-gui/res/tokenscripts/b_2_2_phyrexian_zombie.txt @@ -1,6 +1,6 @@ Name:Phyrexian Zombie Token ManaCost:no cost -Types:Creature Phyrexian Zombie Colors:black +Types:Creature Phyrexian Zombie PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/b_2_2_pirate_menace.txt b/forge-gui/res/tokenscripts/b_2_2_pirate_menace.txt index 05a63ece5a5..d1a828a9b3c 100644 --- a/forge-gui/res/tokenscripts/b_2_2_pirate_menace.txt +++ b/forge-gui/res/tokenscripts/b_2_2_pirate_menace.txt @@ -1,7 +1,7 @@ Name:Pirate Token ManaCost:no cost -Types:Creature Pirate Colors:black +Types:Creature Pirate PT:2/2 K:Menace Oracle:Menace diff --git a/forge-gui/res/tokenscripts/b_2_2_rogue.txt b/forge-gui/res/tokenscripts/b_2_2_rogue.txt index 6f970d995c0..10be445d6f6 100644 --- a/forge-gui/res/tokenscripts/b_2_2_rogue.txt +++ b/forge-gui/res/tokenscripts/b_2_2_rogue.txt @@ -1,6 +1,6 @@ Name:Rogue Token ManaCost:no cost -Types:Creature Rogue Colors:black +Types:Creature Rogue PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/b_2_2_rogue_hexproof.txt b/forge-gui/res/tokenscripts/b_2_2_rogue_hexproof.txt index 132ba0a0e8b..a56d28be4a8 100644 --- a/forge-gui/res/tokenscripts/b_2_2_rogue_hexproof.txt +++ b/forge-gui/res/tokenscripts/b_2_2_rogue_hexproof.txt @@ -1,7 +1,7 @@ Name:Rogue Token ManaCost:no cost -Types:Creature Rogue Colors:black +Types:Creature Rogue PT:2/2 K:Hexproof Oracle:Hexproof (This creature can't be the target of spells or abilities your opponents control.) diff --git a/forge-gui/res/tokenscripts/b_2_2_rogue_menace.txt b/forge-gui/res/tokenscripts/b_2_2_rogue_menace.txt index 6492fd8a214..a4a670fde0b 100644 --- a/forge-gui/res/tokenscripts/b_2_2_rogue_menace.txt +++ b/forge-gui/res/tokenscripts/b_2_2_rogue_menace.txt @@ -1,7 +1,7 @@ Name:Rogue Token ManaCost:no cost -Types:Creature Rogue Colors:black +Types:Creature Rogue PT:2/2 K:Menace Oracle:Menace diff --git a/forge-gui/res/tokenscripts/b_2_2_skeleton_pirate.txt b/forge-gui/res/tokenscripts/b_2_2_skeleton_pirate.txt index 8d64c45bf74..5841b5e41d1 100644 --- a/forge-gui/res/tokenscripts/b_2_2_skeleton_pirate.txt +++ b/forge-gui/res/tokenscripts/b_2_2_skeleton_pirate.txt @@ -1,6 +1,6 @@ Name:Skeleton Pirate Token ManaCost:no cost -Types:Creature Skeleton Pirate Colors:black +Types:Creature Skeleton Pirate PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/b_2_2_vampire_flying.txt b/forge-gui/res/tokenscripts/b_2_2_vampire_flying.txt index 5fe2b07f3c5..500d2436213 100644 --- a/forge-gui/res/tokenscripts/b_2_2_vampire_flying.txt +++ b/forge-gui/res/tokenscripts/b_2_2_vampire_flying.txt @@ -1,7 +1,7 @@ Name:Vampire Token ManaCost:no cost -Types:Creature Vampire Colors:black +Types:Creature Vampire PT:2/2 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/b_2_2_zombie.txt b/forge-gui/res/tokenscripts/b_2_2_zombie.txt index 4f4d483728a..57668fd3526 100644 --- a/forge-gui/res/tokenscripts/b_2_2_zombie.txt +++ b/forge-gui/res/tokenscripts/b_2_2_zombie.txt @@ -1,6 +1,6 @@ Name:Zombie Token ManaCost:no cost -Types:Creature Zombie Colors:black +Types:Creature Zombie PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/b_2_2_zombie_berserker.txt b/forge-gui/res/tokenscripts/b_2_2_zombie_berserker.txt index 02b90bce740..5c2ff61ec54 100644 --- a/forge-gui/res/tokenscripts/b_2_2_zombie_berserker.txt +++ b/forge-gui/res/tokenscripts/b_2_2_zombie_berserker.txt @@ -1,6 +1,6 @@ Name:Zombie Berserker Token ManaCost:no cost -Types:Creature Zombie Berserker Colors:black +Types:Creature Zombie Berserker PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/b_2_2_zombie_decayed.txt b/forge-gui/res/tokenscripts/b_2_2_zombie_decayed.txt index 33a1b7e03e6..6612d208447 100644 --- a/forge-gui/res/tokenscripts/b_2_2_zombie_decayed.txt +++ b/forge-gui/res/tokenscripts/b_2_2_zombie_decayed.txt @@ -1,7 +1,7 @@ Name:Zombie Token ManaCost:no cost -Types:Creature Zombie Colors:black +Types:Creature Zombie PT:2/2 K:Decayed Oracle:Decayed diff --git a/forge-gui/res/tokenscripts/b_2_2_zombie_knight_menace.txt b/forge-gui/res/tokenscripts/b_2_2_zombie_knight_menace.txt index fcbd7a0b844..445fab1f99f 100644 --- a/forge-gui/res/tokenscripts/b_2_2_zombie_knight_menace.txt +++ b/forge-gui/res/tokenscripts/b_2_2_zombie_knight_menace.txt @@ -1,7 +1,7 @@ Name:Zombie Knight Token ManaCost:no cost -Types:Creature Zombie Knight Colors:black +Types:Creature Zombie Knight PT:2/2 K:Menace Oracle:Menace diff --git a/forge-gui/res/tokenscripts/b_2_2_zombie_mutant.txt b/forge-gui/res/tokenscripts/b_2_2_zombie_mutant.txt index ddde99ad214..ebe80c339a6 100644 --- a/forge-gui/res/tokenscripts/b_2_2_zombie_mutant.txt +++ b/forge-gui/res/tokenscripts/b_2_2_zombie_mutant.txt @@ -1,6 +1,6 @@ Name:Zombie Mutant Token ManaCost:no cost -Types:Creature Zombie Mutant Colors:black +Types:Creature Zombie Mutant PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/b_2_3_vampire_flying_lifelink.txt b/forge-gui/res/tokenscripts/b_2_3_vampire_flying_lifelink.txt index cc9f5915c42..8eae6f6de07 100644 --- a/forge-gui/res/tokenscripts/b_2_3_vampire_flying_lifelink.txt +++ b/forge-gui/res/tokenscripts/b_2_3_vampire_flying_lifelink.txt @@ -1,7 +1,7 @@ Name:Vampire Token ManaCost:no cost -Types:Creature Vampire Colors:black +Types:Creature Vampire PT:2/3 K:Flying K:Lifelink diff --git a/forge-gui/res/tokenscripts/b_2_4_spider_reach.txt b/forge-gui/res/tokenscripts/b_2_4_spider_reach.txt index 95958401cfe..47024fea547 100644 --- a/forge-gui/res/tokenscripts/b_2_4_spider_reach.txt +++ b/forge-gui/res/tokenscripts/b_2_4_spider_reach.txt @@ -1,7 +1,7 @@ Name:Spider Token ManaCost:no cost -Types:Creature Spider Colors:black +Types:Creature Spider PT:2/4 K:Reach Oracle:Reach diff --git a/forge-gui/res/tokenscripts/b_3_3_a_dalek_menace.txt b/forge-gui/res/tokenscripts/b_3_3_a_dalek_menace.txt index 9940118e98a..be9a6b18bc9 100644 --- a/forge-gui/res/tokenscripts/b_3_3_a_dalek_menace.txt +++ b/forge-gui/res/tokenscripts/b_3_3_a_dalek_menace.txt @@ -1,7 +1,7 @@ Name:Dalek Token ManaCost:no cost -Types:Artifact Creature Dalek Colors:black +Types:Artifact Creature Dalek PT:3/3 K:Menace Oracle:Menace diff --git a/forge-gui/res/tokenscripts/b_3_3_angel_flying.txt b/forge-gui/res/tokenscripts/b_3_3_angel_flying.txt index 2d809f9a30a..d8b280d7848 100644 --- a/forge-gui/res/tokenscripts/b_3_3_angel_flying.txt +++ b/forge-gui/res/tokenscripts/b_3_3_angel_flying.txt @@ -1,7 +1,7 @@ Name:Angel Token ManaCost:no cost -Types:Creature Angel Colors:black +Types:Creature Angel PT:3/3 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/b_3_3_beast_deathtouch.txt b/forge-gui/res/tokenscripts/b_3_3_beast_deathtouch.txt index 1ca12c0f5b1..6dbbb8b03bf 100644 --- a/forge-gui/res/tokenscripts/b_3_3_beast_deathtouch.txt +++ b/forge-gui/res/tokenscripts/b_3_3_beast_deathtouch.txt @@ -1,7 +1,7 @@ Name:Beast Token ManaCost:no cost -Types:Creature Beast Colors:black +Types:Creature Beast PT:3/3 K:Deathtouch Oracle:Deathtouch diff --git a/forge-gui/res/tokenscripts/b_3_3_demon.txt b/forge-gui/res/tokenscripts/b_3_3_demon.txt index 7fcea575022..bebb83823c8 100644 --- a/forge-gui/res/tokenscripts/b_3_3_demon.txt +++ b/forge-gui/res/tokenscripts/b_3_3_demon.txt @@ -1,6 +1,6 @@ Name:Demon Token ManaCost:no cost -Types:Creature Demon Colors:black +Types:Creature Demon PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/b_3_3_horror.txt b/forge-gui/res/tokenscripts/b_3_3_horror.txt index 6c00b1315c5..113b8acef1a 100644 --- a/forge-gui/res/tokenscripts/b_3_3_horror.txt +++ b/forge-gui/res/tokenscripts/b_3_3_horror.txt @@ -1,6 +1,6 @@ Name:Horror Token ManaCost:no cost -Types:Creature Horror Colors:black +Types:Creature Horror PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/b_3_3_kavu.txt b/forge-gui/res/tokenscripts/b_3_3_kavu.txt index 0d69bc1b3e9..5a81147b87e 100644 --- a/forge-gui/res/tokenscripts/b_3_3_kavu.txt +++ b/forge-gui/res/tokenscripts/b_3_3_kavu.txt @@ -1,6 +1,6 @@ Name:Kavu Token ManaCost:no cost -Types:Creature Kavu Colors:black +Types:Creature Kavu PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/b_3_3_wraith_menace.txt b/forge-gui/res/tokenscripts/b_3_3_wraith_menace.txt index 2c3eae44304..a841710e54e 100644 --- a/forge-gui/res/tokenscripts/b_3_3_wraith_menace.txt +++ b/forge-gui/res/tokenscripts/b_3_3_wraith_menace.txt @@ -1,7 +1,7 @@ Name:Wraith Token ManaCost:no cost -Types:Creature Wraith Colors:black +Types:Creature Wraith PT:3/3 K:Menace Oracle:Menace diff --git a/forge-gui/res/tokenscripts/b_4_1_skeleton_menace.txt b/forge-gui/res/tokenscripts/b_4_1_skeleton_menace.txt index 7301b373540..617609ac5af 100644 --- a/forge-gui/res/tokenscripts/b_4_1_skeleton_menace.txt +++ b/forge-gui/res/tokenscripts/b_4_1_skeleton_menace.txt @@ -1,7 +1,7 @@ Name:Skeleton Token ManaCost:no cost -Types:Creature Skeleton Colors:black +Types:Creature Skeleton PT:4/1 K:Menace Oracle:Menace diff --git a/forge-gui/res/tokenscripts/b_4_3_ogre_warrior.txt b/forge-gui/res/tokenscripts/b_4_3_ogre_warrior.txt index e3246bc1e12..bf40432063c 100644 --- a/forge-gui/res/tokenscripts/b_4_3_ogre_warrior.txt +++ b/forge-gui/res/tokenscripts/b_4_3_ogre_warrior.txt @@ -1,6 +1,6 @@ Name:Ogre Warrior Token ManaCost:no cost -Types:Creature Ogre Warrior Colors:black +Types:Creature Ogre Warrior PT:4/3 Oracle: diff --git a/forge-gui/res/tokenscripts/b_4_4_horror.txt b/forge-gui/res/tokenscripts/b_4_4_horror.txt index e44c8a44cc9..dfac5a35cbb 100644 --- a/forge-gui/res/tokenscripts/b_4_4_horror.txt +++ b/forge-gui/res/tokenscripts/b_4_4_horror.txt @@ -1,6 +1,6 @@ Name:Horror Token ManaCost:no cost -Types:Creature Horror Colors:black +Types:Creature Horror PT:4/4 Oracle: diff --git a/forge-gui/res/tokenscripts/b_4_4_zombie_warrior_vigilance.txt b/forge-gui/res/tokenscripts/b_4_4_zombie_warrior_vigilance.txt index 8e04af9871e..70ddc78e9fa 100644 --- a/forge-gui/res/tokenscripts/b_4_4_zombie_warrior_vigilance.txt +++ b/forge-gui/res/tokenscripts/b_4_4_zombie_warrior_vigilance.txt @@ -1,7 +1,7 @@ Name:Zombie Warrior Token ManaCost:no cost -Types:Creature Zombie Warrior Colors:black +Types:Creature Zombie Warrior PT:4/4 K:Vigilance Oracle:Vigilance diff --git a/forge-gui/res/tokenscripts/b_5_5_demon_flying.txt b/forge-gui/res/tokenscripts/b_5_5_demon_flying.txt index 68f6fa690a6..2c76a6c6a15 100644 --- a/forge-gui/res/tokenscripts/b_5_5_demon_flying.txt +++ b/forge-gui/res/tokenscripts/b_5_5_demon_flying.txt @@ -1,7 +1,7 @@ Name:Demon Token ManaCost:no cost -Types:Creature Demon Colors:black +Types:Creature Demon PT:5/5 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/b_5_5_zombie_giant.txt b/forge-gui/res/tokenscripts/b_5_5_zombie_giant.txt index 862bc832f6f..441760acc65 100644 --- a/forge-gui/res/tokenscripts/b_5_5_zombie_giant.txt +++ b/forge-gui/res/tokenscripts/b_5_5_zombie_giant.txt @@ -1,6 +1,6 @@ Name:Zombie Giant Token ManaCost:no cost -Types:Creature Zombie Giant Colors:black +Types:Creature Zombie Giant PT:5/5 Oracle: diff --git a/forge-gui/res/tokenscripts/b_6_6_demon_flying_trample_aristocrat.txt b/forge-gui/res/tokenscripts/b_6_6_demon_flying_trample_aristocrat.txt index 19c4d0314f6..c29fdbafee2 100644 --- a/forge-gui/res/tokenscripts/b_6_6_demon_flying_trample_aristocrat.txt +++ b/forge-gui/res/tokenscripts/b_6_6_demon_flying_trample_aristocrat.txt @@ -1,7 +1,7 @@ Name:Demon Token ManaCost:no cost -Types:Creature Demon Colors:black +Types:Creature Demon PT:6/6 K:Flying K:Trample diff --git a/forge-gui/res/tokenscripts/b_6_6_wurm_trample.txt b/forge-gui/res/tokenscripts/b_6_6_wurm_trample.txt index e6e4172c6eb..adb093b2d90 100644 --- a/forge-gui/res/tokenscripts/b_6_6_wurm_trample.txt +++ b/forge-gui/res/tokenscripts/b_6_6_wurm_trample.txt @@ -1,7 +1,7 @@ Name:Wurm Token ManaCost:no cost -Types:Creature Wurm Colors:black +Types:Creature Wurm PT:6/6 K:Trample Oracle:Trample diff --git a/forge-gui/res/tokenscripts/b_aura_curse_life.txt b/forge-gui/res/tokenscripts/b_aura_curse_life.txt index 789f41ad31e..e661d6158c3 100644 --- a/forge-gui/res/tokenscripts/b_aura_curse_life.txt +++ b/forge-gui/res/tokenscripts/b_aura_curse_life.txt @@ -1,7 +1,7 @@ Name:Aura Curse Token ManaCost:no cost -Types:Enchantment Aura Curse Colors:black +Types:Enchantment Aura Curse K:Enchant player T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedBy | TriggerZones$ Battlefield | Execute$ TrigLife | TriggerDescription$ At the beginning of enchanted player's upkeep, that player loses 1 life. SVar:TrigLife:DB$ LoseLife | Defined$ TriggeredPlayer | LifeAmount$ 1 diff --git a/forge-gui/res/tokenscripts/b_x_x_phyrexian_minion.txt b/forge-gui/res/tokenscripts/b_x_x_phyrexian_minion.txt index ac0b3850960..d63240fde25 100644 --- a/forge-gui/res/tokenscripts/b_x_x_phyrexian_minion.txt +++ b/forge-gui/res/tokenscripts/b_x_x_phyrexian_minion.txt @@ -1,6 +1,6 @@ Name:Phyrexian Minion Token ManaCost:no cost +Colors:black Types:Creature Phyrexian Minion PT:*/* -Colors:black Oracle: diff --git a/forge-gui/res/tokenscripts/beau.txt b/forge-gui/res/tokenscripts/beau.txt index 080144c982c..47836026070 100644 --- a/forge-gui/res/tokenscripts/beau.txt +++ b/forge-gui/res/tokenscripts/beau.txt @@ -1,7 +1,7 @@ Name:Beau ManaCost:no cost -Types:Legendary Creature Ox Colors:blue +Types:Legendary Creature Ox PT:*/* S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | SetPower$ X | SetToughness$ X | Description$ This creature's power and toughness are each equal to the number of lands you control. SVar:X:Count$Valid Land.YouCtrl diff --git a/forge-gui/res/tokenscripts/bg_1_1_e_snake_deathtouch.txt b/forge-gui/res/tokenscripts/bg_1_1_e_snake_deathtouch.txt index 1a0e49e2295..e860fc52c63 100644 --- a/forge-gui/res/tokenscripts/bg_1_1_e_snake_deathtouch.txt +++ b/forge-gui/res/tokenscripts/bg_1_1_e_snake_deathtouch.txt @@ -1,7 +1,7 @@ Name:Snake Token ManaCost:no cost -Types:Enchantment Creature Snake Colors:black,green +Types:Enchantment Creature Snake PT:1/1 K:Deathtouch Oracle:Deathtouch diff --git a/forge-gui/res/tokenscripts/bg_1_1_insect.txt b/forge-gui/res/tokenscripts/bg_1_1_insect.txt index 7a340dfa07d..d71492386b7 100644 --- a/forge-gui/res/tokenscripts/bg_1_1_insect.txt +++ b/forge-gui/res/tokenscripts/bg_1_1_insect.txt @@ -1,6 +1,6 @@ Name:Insect Token ManaCost:no cost -Types:Creature Insect Colors:black,green +Types:Creature Insect PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/bg_1_1_pest_lifegain.txt b/forge-gui/res/tokenscripts/bg_1_1_pest_lifegain.txt index a0d7d5323b7..2174b765339 100644 --- a/forge-gui/res/tokenscripts/bg_1_1_pest_lifegain.txt +++ b/forge-gui/res/tokenscripts/bg_1_1_pest_lifegain.txt @@ -1,7 +1,7 @@ Name:Pest Token ManaCost:no cost -Types:Creature Pest Colors:black,green +Types:Creature Pest PT:1/1 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigGrave | TriggerDescription$ When this creature dies, you gain 1 life. SVar:TrigGrave:DB$ GainLife | Defined$ TriggeredCardController | LifeAmount$ 1 diff --git a/forge-gui/res/tokenscripts/bg_1_1_worm.txt b/forge-gui/res/tokenscripts/bg_1_1_worm.txt index 8cb707b5ba2..edf3371d925 100644 --- a/forge-gui/res/tokenscripts/bg_1_1_worm.txt +++ b/forge-gui/res/tokenscripts/bg_1_1_worm.txt @@ -1,6 +1,6 @@ Name:Worm Token ManaCost:no cost -Types:Creature Worm Colors:black,green +Types:Creature Worm PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/bg_2_1_spider_menace_reach.txt b/forge-gui/res/tokenscripts/bg_2_1_spider_menace_reach.txt index 7d96f570b81..33f397eb7e7 100644 --- a/forge-gui/res/tokenscripts/bg_2_1_spider_menace_reach.txt +++ b/forge-gui/res/tokenscripts/bg_2_1_spider_menace_reach.txt @@ -1,7 +1,7 @@ Name:Spider Token ManaCost:no cost -Types:Creature Spider Colors:black,green +Types:Creature Spider PT:2/1 K:Menace K:Reach diff --git a/forge-gui/res/tokenscripts/bg_2_2_wolf_garruk.txt b/forge-gui/res/tokenscripts/bg_2_2_wolf_garruk.txt index 4a1d19407b7..6ec866374f6 100644 --- a/forge-gui/res/tokenscripts/bg_2_2_wolf_garruk.txt +++ b/forge-gui/res/tokenscripts/bg_2_2_wolf_garruk.txt @@ -1,7 +1,7 @@ Name:Wolf Token ManaCost:no cost -Types:Creature Wolf Colors:black,green +Types:Creature Wolf PT:2/2 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Creature.Self | Execute$ TrigPutCounter | TriggerDescription$ When this creature dies, put a loyalty counter on each Garruk you control. SVar:TrigPutCounter:DB$ PutCounterAll | ValidCards$ Garruk.YouCtrl | CounterType$ LOYALTY | CounterNum$ 1 diff --git a/forge-gui/res/tokenscripts/boo.txt b/forge-gui/res/tokenscripts/boo.txt index 5ef811610b7..adb208e3e16 100644 --- a/forge-gui/res/tokenscripts/boo.txt +++ b/forge-gui/res/tokenscripts/boo.txt @@ -1,7 +1,7 @@ Name:Boo ManaCost:no cost -Types:Legendary Creature Hamster Colors:red +Types:Legendary Creature Hamster PT:1/1 K:Trample K:Haste diff --git a/forge-gui/res/tokenscripts/br_3_1_graveborn_haste.txt b/forge-gui/res/tokenscripts/br_3_1_graveborn_haste.txt index e9fad999dd4..b3b407d894b 100644 --- a/forge-gui/res/tokenscripts/br_3_1_graveborn_haste.txt +++ b/forge-gui/res/tokenscripts/br_3_1_graveborn_haste.txt @@ -1,7 +1,7 @@ Name:Graveborn Token ManaCost:no cost -Types:Creature Graveborn Colors:black,red -K:Haste +Types:Creature Graveborn PT:3/1 +K:Haste Oracle:Haste diff --git a/forge-gui/res/tokenscripts/br_3_1_vampire_trample_lifelink_haste.txt b/forge-gui/res/tokenscripts/br_3_1_vampire_trample_lifelink_haste.txt index c4902ff1295..518fc276019 100644 --- a/forge-gui/res/tokenscripts/br_3_1_vampire_trample_lifelink_haste.txt +++ b/forge-gui/res/tokenscripts/br_3_1_vampire_trample_lifelink_haste.txt @@ -1,7 +1,7 @@ Name:Vampire Token ManaCost:no cost -Types:Creature Vampire Colors:black,red +Types:Creature Vampire PT:3/1 K:Trample K:Lifelink diff --git a/forge-gui/res/tokenscripts/br_3_6_avatar_haste_bolt.txt b/forge-gui/res/tokenscripts/br_3_6_avatar_haste_bolt.txt index 8205004f8bd..8f738e05e17 100644 --- a/forge-gui/res/tokenscripts/br_3_6_avatar_haste_bolt.txt +++ b/forge-gui/res/tokenscripts/br_3_6_avatar_haste_bolt.txt @@ -1,9 +1,9 @@ Name:Avatar Token ManaCost:no cost -Types:Creature Avatar Colors:black,red -K:Haste +Types:Creature Avatar PT:3/6 +K:Haste T:Mode$ Attacks | ValidCard$ Creature.Self | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ Whenever this creature attacks, it deals 3 damage to each opponent. SVar:TrigDamage:DB$ DealDamage | Defined$ Player.Opponent | NumDmg$ 3 SVar:HasAttackEffect:TRUE diff --git a/forge-gui/res/tokenscripts/br_5_5_elemental.txt b/forge-gui/res/tokenscripts/br_5_5_elemental.txt index bd7217429dc..fa9d88f1eb6 100644 --- a/forge-gui/res/tokenscripts/br_5_5_elemental.txt +++ b/forge-gui/res/tokenscripts/br_5_5_elemental.txt @@ -1,6 +1,6 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:black,red +Types:Creature Elemental PT:5/5 Oracle: diff --git a/forge-gui/res/tokenscripts/br_6_6_dragon_flying_menace_steal.txt b/forge-gui/res/tokenscripts/br_6_6_dragon_flying_menace_steal.txt index 0adb0cf2c32..99852dd3002 100644 --- a/forge-gui/res/tokenscripts/br_6_6_dragon_flying_menace_steal.txt +++ b/forge-gui/res/tokenscripts/br_6_6_dragon_flying_menace_steal.txt @@ -1,7 +1,7 @@ Name:Dragon Token ManaCost:no cost -Types:Creature Dragon Colors:red,black +Types:Creature Dragon PT:6/6 K:Flying K:Menace From e826c976c7cd75f8c022dc7664535698ffe910ec Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 09:33:00 +0100 Subject: [PATCH 14/91] Edit pile cleanup: Line reordering, first pass: part 6, folder 'tokenscripts', part 2 --- forge-gui/res/tokenscripts/br_7_7_demon.txt | 2 +- forge-gui/res/tokenscripts/brg_3_3_cat_dragon_flying.txt | 2 +- forge-gui/res/tokenscripts/butterfly.txt | 2 +- .../res/tokenscripts/c_0_0_a_construct_total_artifacts.txt | 2 +- forge-gui/res/tokenscripts/c_0_0_a_thopter_flying.txt | 2 +- forge-gui/res/tokenscripts/c_0_1_a_egg.txt | 2 +- .../res/tokenscripts/c_0_1_a_goblin_construct_noblock_ping.txt | 2 +- forge-gui/res/tokenscripts/c_0_1_a_pest.txt | 2 +- forge-gui/res/tokenscripts/c_0_1_a_prism.txt | 2 +- forge-gui/res/tokenscripts/c_0_1_eldrazi_spawn_sac.txt | 2 +- forge-gui/res/tokenscripts/c_0_2_a_wall_defender.txt | 2 +- forge-gui/res/tokenscripts/c_10_10_eldrazi.txt | 2 +- forge-gui/res/tokenscripts/c_1_1_a_construct.txt | 2 +- forge-gui/res/tokenscripts/c_1_1_a_construct_defender.txt | 2 +- forge-gui/res/tokenscripts/c_1_1_a_gnome.txt | 2 +- forge-gui/res/tokenscripts/c_1_1_a_myr.txt | 2 +- forge-gui/res/tokenscripts/c_1_1_a_phyrexian_myr.txt | 2 +- forge-gui/res/tokenscripts/c_1_1_a_soldier.txt | 2 +- forge-gui/res/tokenscripts/c_1_1_a_thopter_flying.txt | 2 +- forge-gui/res/tokenscripts/c_1_1_a_triskelavite_flying_ammo.txt | 2 +- forge-gui/res/tokenscripts/c_1_1_e_shrine.txt | 2 +- forge-gui/res/tokenscripts/c_1_1_eldrazi_scion_sac.txt | 2 +- forge-gui/res/tokenscripts/c_1_1_eldrazi_sliver_sac.txt | 2 +- forge-gui/res/tokenscripts/c_2_2_a_assembly_worker.txt | 2 +- forge-gui/res/tokenscripts/c_2_2_a_construct.txt | 2 +- forge-gui/res/tokenscripts/c_2_2_a_spawn.txt | 2 +- forge-gui/res/tokenscripts/c_2_2_homunculus.txt | 2 +- forge-gui/res/tokenscripts/c_2_2_pincher.txt | 2 +- forge-gui/res/tokenscripts/c_3_2_eldrazi_horror.txt | 2 +- forge-gui/res/tokenscripts/c_3_3_a_golem.txt | 2 +- forge-gui/res/tokenscripts/c_3_3_a_golem_flying.txt | 2 +- forge-gui/res/tokenscripts/c_3_3_a_golem_trample.txt | 2 +- forge-gui/res/tokenscripts/c_3_3_a_golem_vigilance.txt | 2 +- forge-gui/res/tokenscripts/c_3_3_a_phyrexian_golem.txt | 2 +- forge-gui/res/tokenscripts/c_3_3_a_robot.txt | 2 +- forge-gui/res/tokenscripts/c_3_3_a_zombie.txt | 2 +- forge-gui/res/tokenscripts/c_3_3_e_a_golem.txt | 2 +- forge-gui/res/tokenscripts/c_4_4_a_construct.txt | 2 +- forge-gui/res/tokenscripts/c_4_4_a_golem.txt | 2 +- forge-gui/res/tokenscripts/c_4_4_a_scarecrow_vigilance.txt | 2 +- forge-gui/res/tokenscripts/c_4_4_dragon_flying.txt | 2 +- forge-gui/res/tokenscripts/c_4_6_a_golem.txt | 2 +- forge-gui/res/tokenscripts/c_6_12_a_construct_trample.txt | 2 +- forge-gui/res/tokenscripts/c_6_6_a_beast.txt | 2 +- forge-gui/res/tokenscripts/c_9_9_a_golem.txt | 2 +- forge-gui/res/tokenscripts/c_a_powerstone.txt | 2 +- forge-gui/res/tokenscripts/carnivore.txt | 2 +- forge-gui/res/tokenscripts/cherubael.txt | 2 +- forge-gui/res/tokenscripts/colossal_dreadmaw.txt | 2 +- forge-gui/res/tokenscripts/feather.txt | 2 +- forge-gui/res/tokenscripts/first_mate_ragavan.txt | 2 +- forge-gui/res/tokenscripts/g_0_0_ooze_trample.txt | 2 +- forge-gui/res/tokenscripts/g_0_1_dinosaur_egg.txt | 2 +- forge-gui/res/tokenscripts/g_0_1_egg_defender.txt | 2 +- forge-gui/res/tokenscripts/g_0_1_plant.txt | 2 +- forge-gui/res/tokenscripts/g_0_1_sheep.txt | 2 +- forge-gui/res/tokenscripts/g_0_2_plant_defender.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_ape.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_boar_food.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_cat.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_dog.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_elf_druid_g.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_elf_g.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_elf_warrior.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_forest_dryad.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_hippo.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_human_monk_g.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_insect.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_insect_flying_deathtouch.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_ooze.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_phyrexian_insect_infect.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_phyrexian_saproling.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_plant.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_saproling.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_snake.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_snake_deathtouch.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_spike.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_squirrel.txt | 2 +- forge-gui/res/tokenscripts/g_1_1_tyranid.txt | 2 +- forge-gui/res/tokenscripts/g_1_2_spider_reach.txt | 2 +- forge-gui/res/tokenscripts/g_1_3_e_spider_reach.txt | 2 +- forge-gui/res/tokenscripts/g_2_1_varmint.txt | 2 +- .../res/tokenscripts/g_2_2_alien_salamander_islandwalk.txt | 2 +- forge-gui/res/tokenscripts/g_2_2_bear.txt | 2 +- forge-gui/res/tokenscripts/g_2_2_beast.txt | 2 +- forge-gui/res/tokenscripts/g_2_2_boar.txt | 2 +- forge-gui/res/tokenscripts/g_2_2_cat_warrior_forestwalk.txt | 2 +- forge-gui/res/tokenscripts/g_2_2_gorilla.txt | 2 +- forge-gui/res/tokenscripts/g_2_2_lizard.txt | 2 +- forge-gui/res/tokenscripts/g_2_2_monkey.txt | 2 +- forge-gui/res/tokenscripts/g_2_2_ooze.txt | 2 +- forge-gui/res/tokenscripts/g_2_2_ooze_mitotic.txt | 2 +- forge-gui/res/tokenscripts/g_2_2_spider_reach.txt | 2 +- forge-gui/res/tokenscripts/g_2_2_wolf.txt | 2 +- forge-gui/res/tokenscripts/g_2_3_antelope_forestwalk.txt | 2 +- forge-gui/res/tokenscripts/g_2_5_treefolk_shaman.txt | 2 +- forge-gui/res/tokenscripts/g_3_2_cat_shroud.txt | 2 +- forge-gui/res/tokenscripts/g_3_3_badger.txt | 2 +- forge-gui/res/tokenscripts/g_3_3_centaur.txt | 2 +- forge-gui/res/tokenscripts/g_3_3_centaur_pro_black.txt | 2 +- 100 files changed, 100 insertions(+), 100 deletions(-) diff --git a/forge-gui/res/tokenscripts/br_7_7_demon.txt b/forge-gui/res/tokenscripts/br_7_7_demon.txt index 9c1bf6b6fe4..602e617ee1c 100644 --- a/forge-gui/res/tokenscripts/br_7_7_demon.txt +++ b/forge-gui/res/tokenscripts/br_7_7_demon.txt @@ -1,6 +1,6 @@ Name:Demon Token ManaCost:no cost -Types:Creature Demon Colors:black,red +Types:Creature Demon PT:7/7 Oracle: diff --git a/forge-gui/res/tokenscripts/brg_3_3_cat_dragon_flying.txt b/forge-gui/res/tokenscripts/brg_3_3_cat_dragon_flying.txt index c8d9f81aca0..fff520f80ab 100644 --- a/forge-gui/res/tokenscripts/brg_3_3_cat_dragon_flying.txt +++ b/forge-gui/res/tokenscripts/brg_3_3_cat_dragon_flying.txt @@ -1,7 +1,7 @@ Name:Cat Dragon Token ManaCost:no cost -Types:Creature Cat Dragon Colors:black,red,green +Types:Creature Cat Dragon PT:3/3 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/butterfly.txt b/forge-gui/res/tokenscripts/butterfly.txt index 64c048c3068..5cdf9929aa3 100644 --- a/forge-gui/res/tokenscripts/butterfly.txt +++ b/forge-gui/res/tokenscripts/butterfly.txt @@ -1,7 +1,7 @@ Name:Butterfly ManaCost:no cost -PT:1/1 Colors:green Types:Creature Insect +PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/c_0_0_a_construct_total_artifacts.txt b/forge-gui/res/tokenscripts/c_0_0_a_construct_total_artifacts.txt index ba7959637e5..082b939caff 100644 --- a/forge-gui/res/tokenscripts/c_0_0_a_construct_total_artifacts.txt +++ b/forge-gui/res/tokenscripts/c_0_0_a_construct_total_artifacts.txt @@ -1,7 +1,7 @@ Name:Construct Token ManaCost:no cost -PT:0/0 Types:Artifact Creature Construct +PT:0/0 S:Mode$ Continuous | Affected$ Card.Self | AddPower$ X | AddToughness$ X | Description$ This creature gets +1/+1 for each artifact you control. SVar:X:Count$Valid Artifact.YouCtrl Oracle:This creature gets +1/+1 for each artifact you control. diff --git a/forge-gui/res/tokenscripts/c_0_0_a_thopter_flying.txt b/forge-gui/res/tokenscripts/c_0_0_a_thopter_flying.txt index 993a580a7a6..2c92eda46b3 100644 --- a/forge-gui/res/tokenscripts/c_0_0_a_thopter_flying.txt +++ b/forge-gui/res/tokenscripts/c_0_0_a_thopter_flying.txt @@ -1,7 +1,7 @@ Name:Thopter Token ManaCost:no cost -Types:Artifact Creature Thopter Colors:colorless +Types:Artifact Creature Thopter PT:0/0 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/c_0_1_a_egg.txt b/forge-gui/res/tokenscripts/c_0_1_a_egg.txt index f30b59fe618..2b1aa47dfee 100644 --- a/forge-gui/res/tokenscripts/c_0_1_a_egg.txt +++ b/forge-gui/res/tokenscripts/c_0_1_a_egg.txt @@ -1,5 +1,5 @@ Name:Egg Token ManaCost:no cost -PT:0/1 Types:Artifact Creature Egg +PT:0/1 Oracle: diff --git a/forge-gui/res/tokenscripts/c_0_1_a_goblin_construct_noblock_ping.txt b/forge-gui/res/tokenscripts/c_0_1_a_goblin_construct_noblock_ping.txt index d30a50564b8..47be6ab632f 100644 --- a/forge-gui/res/tokenscripts/c_0_1_a_goblin_construct_noblock_ping.txt +++ b/forge-gui/res/tokenscripts/c_0_1_a_goblin_construct_noblock_ping.txt @@ -1,7 +1,7 @@ Name:Goblin Construct Token ManaCost:no cost -PT:0/1 Types:Artifact Creature Goblin Construct +PT:0/1 S:Mode$ CantBlockBy | ValidBlocker$ Creature.Self | Description$ CARDNAME can't block. T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ TrigDealDamage | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of your upkeep, CARDNAME deals 1 damage to you. SVar:TrigDealDamage:DB$ DealDamage | Defined$ You | NumDmg$ 1 diff --git a/forge-gui/res/tokenscripts/c_0_1_a_pest.txt b/forge-gui/res/tokenscripts/c_0_1_a_pest.txt index 9625eef8b10..0af36916a54 100644 --- a/forge-gui/res/tokenscripts/c_0_1_a_pest.txt +++ b/forge-gui/res/tokenscripts/c_0_1_a_pest.txt @@ -1,5 +1,5 @@ Name:Pest Token ManaCost:no cost -PT:0/1 Types:Artifact Creature Pest +PT:0/1 Oracle: diff --git a/forge-gui/res/tokenscripts/c_0_1_a_prism.txt b/forge-gui/res/tokenscripts/c_0_1_a_prism.txt index db82f662200..f5b876483b5 100644 --- a/forge-gui/res/tokenscripts/c_0_1_a_prism.txt +++ b/forge-gui/res/tokenscripts/c_0_1_a_prism.txt @@ -1,5 +1,5 @@ Name:Prism Token ManaCost:no cost -PT:0/1 Types:Artifact Creature Prism +PT:0/1 Oracle: diff --git a/forge-gui/res/tokenscripts/c_0_1_eldrazi_spawn_sac.txt b/forge-gui/res/tokenscripts/c_0_1_eldrazi_spawn_sac.txt index 8f8ec8354e0..fbcd967d1a5 100644 --- a/forge-gui/res/tokenscripts/c_0_1_eldrazi_spawn_sac.txt +++ b/forge-gui/res/tokenscripts/c_0_1_eldrazi_spawn_sac.txt @@ -1,6 +1,6 @@ Name:Eldrazi Spawn Token ManaCost:no cost -PT:0/1 Types:Creature Eldrazi Spawn +PT:0/1 A:AB$ Mana | Cost$ Sac<1/CARDNAME> | Produced$ C | Amount$ 1 | SpellDescription$ Add {C}. Oracle:Sacrifice this creature: Add {C}. diff --git a/forge-gui/res/tokenscripts/c_0_2_a_wall_defender.txt b/forge-gui/res/tokenscripts/c_0_2_a_wall_defender.txt index a946bebc5f0..7cb338390f0 100644 --- a/forge-gui/res/tokenscripts/c_0_2_a_wall_defender.txt +++ b/forge-gui/res/tokenscripts/c_0_2_a_wall_defender.txt @@ -1,6 +1,6 @@ Name:Wall Token ManaCost:no cost -PT:0/2 Types:Artifact Creature Wall +PT:0/2 K:Defender Oracle:Defender diff --git a/forge-gui/res/tokenscripts/c_10_10_eldrazi.txt b/forge-gui/res/tokenscripts/c_10_10_eldrazi.txt index 72c7cffe385..2740705e836 100644 --- a/forge-gui/res/tokenscripts/c_10_10_eldrazi.txt +++ b/forge-gui/res/tokenscripts/c_10_10_eldrazi.txt @@ -1,5 +1,5 @@ Name:Eldrazi Token ManaCost:no cost -PT:10/10 Types:Creature Eldrazi +PT:10/10 Oracle: diff --git a/forge-gui/res/tokenscripts/c_1_1_a_construct.txt b/forge-gui/res/tokenscripts/c_1_1_a_construct.txt index ac9c60040bb..6ab61ce87fa 100644 --- a/forge-gui/res/tokenscripts/c_1_1_a_construct.txt +++ b/forge-gui/res/tokenscripts/c_1_1_a_construct.txt @@ -1,5 +1,5 @@ Name:Construct Token ManaCost:no cost -PT:1/1 Types:Artifact Creature Construct +PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/c_1_1_a_construct_defender.txt b/forge-gui/res/tokenscripts/c_1_1_a_construct_defender.txt index 5e1fa23b513..c5f248e27bb 100644 --- a/forge-gui/res/tokenscripts/c_1_1_a_construct_defender.txt +++ b/forge-gui/res/tokenscripts/c_1_1_a_construct_defender.txt @@ -1,6 +1,6 @@ Name:Construct Token ManaCost:no cost -PT:1/1 Types:Artifact Creature Construct +PT:1/1 K:Defender Oracle:Defender diff --git a/forge-gui/res/tokenscripts/c_1_1_a_gnome.txt b/forge-gui/res/tokenscripts/c_1_1_a_gnome.txt index d9b087fb497..a928ce8627f 100644 --- a/forge-gui/res/tokenscripts/c_1_1_a_gnome.txt +++ b/forge-gui/res/tokenscripts/c_1_1_a_gnome.txt @@ -1,5 +1,5 @@ Name:Gnome Token ManaCost:no cost -PT:1/1 Types:Artifact Creature Gnome +PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/c_1_1_a_myr.txt b/forge-gui/res/tokenscripts/c_1_1_a_myr.txt index 48c0fc748f2..255955f4009 100644 --- a/forge-gui/res/tokenscripts/c_1_1_a_myr.txt +++ b/forge-gui/res/tokenscripts/c_1_1_a_myr.txt @@ -1,5 +1,5 @@ Name:Myr Token ManaCost:no cost -PT:1/1 Types:Artifact Creature Myr +PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/c_1_1_a_phyrexian_myr.txt b/forge-gui/res/tokenscripts/c_1_1_a_phyrexian_myr.txt index 23a59cf480c..8bf331c20bc 100644 --- a/forge-gui/res/tokenscripts/c_1_1_a_phyrexian_myr.txt +++ b/forge-gui/res/tokenscripts/c_1_1_a_phyrexian_myr.txt @@ -1,5 +1,5 @@ Name:Phyrexian Myr Token ManaCost:no cost -PT:1/1 Types:Artifact Creature Phyrexian Myr +PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/c_1_1_a_soldier.txt b/forge-gui/res/tokenscripts/c_1_1_a_soldier.txt index 6ff3e737030..b61db17f6ab 100644 --- a/forge-gui/res/tokenscripts/c_1_1_a_soldier.txt +++ b/forge-gui/res/tokenscripts/c_1_1_a_soldier.txt @@ -1,5 +1,5 @@ Name:Soldier Token ManaCost:no cost -PT:1/1 Types:Artifact Creature Soldier +PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/c_1_1_a_thopter_flying.txt b/forge-gui/res/tokenscripts/c_1_1_a_thopter_flying.txt index 719482701b2..65272c63ca8 100644 --- a/forge-gui/res/tokenscripts/c_1_1_a_thopter_flying.txt +++ b/forge-gui/res/tokenscripts/c_1_1_a_thopter_flying.txt @@ -1,7 +1,7 @@ Name:Thopter Token ManaCost:no cost -Types:Artifact Creature Thopter Colors:colorless +Types:Artifact Creature Thopter PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/c_1_1_a_triskelavite_flying_ammo.txt b/forge-gui/res/tokenscripts/c_1_1_a_triskelavite_flying_ammo.txt index f3e64b77b98..519054bec9f 100644 --- a/forge-gui/res/tokenscripts/c_1_1_a_triskelavite_flying_ammo.txt +++ b/forge-gui/res/tokenscripts/c_1_1_a_triskelavite_flying_ammo.txt @@ -1,7 +1,7 @@ Name:Triskelavite Token ManaCost:no cost Types:Artifact Creature Triskelavite -K:Flying PT:1/1 +K:Flying A:AB$ DealDamage | Cost$ Sac<1/CARDNAME> | ValidTgts$ Any | NumDmg$ 1 | SpellDescription$ It deals 1 damage to any target. Oracle:Flying\nSacrifice this creature: It deals 1 damage to any target. diff --git a/forge-gui/res/tokenscripts/c_1_1_e_shrine.txt b/forge-gui/res/tokenscripts/c_1_1_e_shrine.txt index 272f0e53601..f0eaebdf19d 100644 --- a/forge-gui/res/tokenscripts/c_1_1_e_shrine.txt +++ b/forge-gui/res/tokenscripts/c_1_1_e_shrine.txt @@ -1,6 +1,6 @@ Name:Shrine Token ManaCost:no cost -Types:Enchantment Creature Shrine Colors:colorless +Types:Enchantment Creature Shrine PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/c_1_1_eldrazi_scion_sac.txt b/forge-gui/res/tokenscripts/c_1_1_eldrazi_scion_sac.txt index f7e61a3f3a7..f813702512b 100644 --- a/forge-gui/res/tokenscripts/c_1_1_eldrazi_scion_sac.txt +++ b/forge-gui/res/tokenscripts/c_1_1_eldrazi_scion_sac.txt @@ -1,6 +1,6 @@ Name:Eldrazi Scion Token ManaCost:no cost -PT:1/1 Types:Creature Eldrazi Scion +PT:1/1 A:AB$ Mana | Cost$ Sac<1/CARDNAME> | Produced$ C | Amount$ 1 | SpellDescription$ Add {C}. Oracle:Sacrifice this creature: Add {C}. diff --git a/forge-gui/res/tokenscripts/c_1_1_eldrazi_sliver_sac.txt b/forge-gui/res/tokenscripts/c_1_1_eldrazi_sliver_sac.txt index 5c29fa4d756..81510da567c 100644 --- a/forge-gui/res/tokenscripts/c_1_1_eldrazi_sliver_sac.txt +++ b/forge-gui/res/tokenscripts/c_1_1_eldrazi_sliver_sac.txt @@ -1,6 +1,6 @@ Name:Eldrazi Sliver Token ManaCost:no cost -PT:1/1 Types:Creature Eldrazi Sliver +PT:1/1 A:AB$ Mana | Cost$ Sac<1/CARDNAME> | Produced$ C | Amount$ 1 | SpellDescription$ Add {C}. Oracle:Sacrifice this creature: Add {C}. diff --git a/forge-gui/res/tokenscripts/c_2_2_a_assembly_worker.txt b/forge-gui/res/tokenscripts/c_2_2_a_assembly_worker.txt index ac35d897be6..6f92eb2b2f9 100644 --- a/forge-gui/res/tokenscripts/c_2_2_a_assembly_worker.txt +++ b/forge-gui/res/tokenscripts/c_2_2_a_assembly_worker.txt @@ -1,5 +1,5 @@ Name:Assembly-Worker Token ManaCost:no cost -PT:2/2 Types:Artifact Creature Assembly-Worker +PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/c_2_2_a_construct.txt b/forge-gui/res/tokenscripts/c_2_2_a_construct.txt index 91c3e92ab89..e4d5b1a6700 100644 --- a/forge-gui/res/tokenscripts/c_2_2_a_construct.txt +++ b/forge-gui/res/tokenscripts/c_2_2_a_construct.txt @@ -1,5 +1,5 @@ Name:Construct Token ManaCost:no cost -PT:2/2 Types:Artifact Creature Construct +PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/c_2_2_a_spawn.txt b/forge-gui/res/tokenscripts/c_2_2_a_spawn.txt index d8bcb6d9bf8..20acb8f4f9b 100644 --- a/forge-gui/res/tokenscripts/c_2_2_a_spawn.txt +++ b/forge-gui/res/tokenscripts/c_2_2_a_spawn.txt @@ -1,5 +1,5 @@ Name:Spawn Token ManaCost:no cost -PT:2/2 Types:Artifact Creature Spawn +PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/c_2_2_homunculus.txt b/forge-gui/res/tokenscripts/c_2_2_homunculus.txt index d1f22966344..482827cbf06 100644 --- a/forge-gui/res/tokenscripts/c_2_2_homunculus.txt +++ b/forge-gui/res/tokenscripts/c_2_2_homunculus.txt @@ -1,5 +1,5 @@ Name:Homunculus Token ManaCost:no cost -PT:2/2 Types:Creature Homunculus +PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/c_2_2_pincher.txt b/forge-gui/res/tokenscripts/c_2_2_pincher.txt index d3db77c290a..5d34cd05497 100644 --- a/forge-gui/res/tokenscripts/c_2_2_pincher.txt +++ b/forge-gui/res/tokenscripts/c_2_2_pincher.txt @@ -1,5 +1,5 @@ Name:Pincher Token ManaCost:no cost -PT:2/2 Types:Creature Pincher +PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/c_3_2_eldrazi_horror.txt b/forge-gui/res/tokenscripts/c_3_2_eldrazi_horror.txt index aac7ffe0789..c1a46883502 100644 --- a/forge-gui/res/tokenscripts/c_3_2_eldrazi_horror.txt +++ b/forge-gui/res/tokenscripts/c_3_2_eldrazi_horror.txt @@ -1,5 +1,5 @@ Name:Eldrazi Horror Token ManaCost:no cost -PT:3/2 Types:Creature Eldrazi Horror +PT:3/2 Oracle: diff --git a/forge-gui/res/tokenscripts/c_3_3_a_golem.txt b/forge-gui/res/tokenscripts/c_3_3_a_golem.txt index f7cc1967961..1f79b681b46 100644 --- a/forge-gui/res/tokenscripts/c_3_3_a_golem.txt +++ b/forge-gui/res/tokenscripts/c_3_3_a_golem.txt @@ -1,5 +1,5 @@ Name:Golem Token ManaCost:no cost -PT:3/3 Types:Artifact Creature Golem +PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/c_3_3_a_golem_flying.txt b/forge-gui/res/tokenscripts/c_3_3_a_golem_flying.txt index ddf827aae1f..e5055df4ecc 100644 --- a/forge-gui/res/tokenscripts/c_3_3_a_golem_flying.txt +++ b/forge-gui/res/tokenscripts/c_3_3_a_golem_flying.txt @@ -1,6 +1,6 @@ Name:Golem Token ManaCost:no cost -PT:3/3 Types:Artifact Creature Golem +PT:3/3 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/c_3_3_a_golem_trample.txt b/forge-gui/res/tokenscripts/c_3_3_a_golem_trample.txt index 7384342b1b2..be3d49a3052 100644 --- a/forge-gui/res/tokenscripts/c_3_3_a_golem_trample.txt +++ b/forge-gui/res/tokenscripts/c_3_3_a_golem_trample.txt @@ -1,6 +1,6 @@ Name:Golem Token ManaCost:no cost -PT:3/3 Types:Artifact Creature Golem +PT:3/3 K:Trample Oracle:Trample diff --git a/forge-gui/res/tokenscripts/c_3_3_a_golem_vigilance.txt b/forge-gui/res/tokenscripts/c_3_3_a_golem_vigilance.txt index 9ed254f8ca0..7ddfb5ba467 100644 --- a/forge-gui/res/tokenscripts/c_3_3_a_golem_vigilance.txt +++ b/forge-gui/res/tokenscripts/c_3_3_a_golem_vigilance.txt @@ -1,6 +1,6 @@ Name:Golem Token ManaCost:no cost -PT:3/3 Types:Artifact Creature Golem +PT:3/3 K:Vigilance Oracle:Vigilance diff --git a/forge-gui/res/tokenscripts/c_3_3_a_phyrexian_golem.txt b/forge-gui/res/tokenscripts/c_3_3_a_phyrexian_golem.txt index 3c866824b7d..727c4fe009e 100644 --- a/forge-gui/res/tokenscripts/c_3_3_a_phyrexian_golem.txt +++ b/forge-gui/res/tokenscripts/c_3_3_a_phyrexian_golem.txt @@ -1,5 +1,5 @@ Name:Phyrexian Golem Token ManaCost:no cost -PT:3/3 Types:Artifact Creature Phyrexian Golem +PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/c_3_3_a_robot.txt b/forge-gui/res/tokenscripts/c_3_3_a_robot.txt index 0387683dad1..0b91121b54f 100644 --- a/forge-gui/res/tokenscripts/c_3_3_a_robot.txt +++ b/forge-gui/res/tokenscripts/c_3_3_a_robot.txt @@ -1,5 +1,5 @@ Name:Robot Token ManaCost:no cost -PT:3/3 Types:Artifact Creature Robot +PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/c_3_3_a_zombie.txt b/forge-gui/res/tokenscripts/c_3_3_a_zombie.txt index 4da3da60b8b..d51384d9b87 100644 --- a/forge-gui/res/tokenscripts/c_3_3_a_zombie.txt +++ b/forge-gui/res/tokenscripts/c_3_3_a_zombie.txt @@ -1,5 +1,5 @@ Name:Zombie Token ManaCost:no cost -PT:3/3 Types:Artifact Creature Zombie +PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/c_3_3_e_a_golem.txt b/forge-gui/res/tokenscripts/c_3_3_e_a_golem.txt index b45c2573eb9..d159725dd58 100644 --- a/forge-gui/res/tokenscripts/c_3_3_e_a_golem.txt +++ b/forge-gui/res/tokenscripts/c_3_3_e_a_golem.txt @@ -1,5 +1,5 @@ Name:Golem Token ManaCost:no cost -PT:3/3 Types:Enchantment Artifact Creature Golem +PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/c_4_4_a_construct.txt b/forge-gui/res/tokenscripts/c_4_4_a_construct.txt index 37e1729344c..0f0544785b7 100644 --- a/forge-gui/res/tokenscripts/c_4_4_a_construct.txt +++ b/forge-gui/res/tokenscripts/c_4_4_a_construct.txt @@ -1,5 +1,5 @@ Name:Construct Token ManaCost:no cost -PT:4/4 Types:Artifact Creature Construct +PT:4/4 Oracle: diff --git a/forge-gui/res/tokenscripts/c_4_4_a_golem.txt b/forge-gui/res/tokenscripts/c_4_4_a_golem.txt index e6b004a7787..b4053e33dec 100644 --- a/forge-gui/res/tokenscripts/c_4_4_a_golem.txt +++ b/forge-gui/res/tokenscripts/c_4_4_a_golem.txt @@ -1,5 +1,5 @@ Name:Golem Token ManaCost:no cost -PT:4/4 Types:Artifact Creature Golem +PT:4/4 Oracle: diff --git a/forge-gui/res/tokenscripts/c_4_4_a_scarecrow_vigilance.txt b/forge-gui/res/tokenscripts/c_4_4_a_scarecrow_vigilance.txt index e8f70620ce5..07a5529413b 100644 --- a/forge-gui/res/tokenscripts/c_4_4_a_scarecrow_vigilance.txt +++ b/forge-gui/res/tokenscripts/c_4_4_a_scarecrow_vigilance.txt @@ -1,6 +1,6 @@ Name:Scarecrow Token ManaCost:no cost -PT:4/4 Types:Artifact Creature Scarecrow +PT:4/4 K:Vigilance Oracle:Vigilance diff --git a/forge-gui/res/tokenscripts/c_4_4_dragon_flying.txt b/forge-gui/res/tokenscripts/c_4_4_dragon_flying.txt index ed1f0fec137..41459fcffc0 100644 --- a/forge-gui/res/tokenscripts/c_4_4_dragon_flying.txt +++ b/forge-gui/res/tokenscripts/c_4_4_dragon_flying.txt @@ -1,6 +1,6 @@ Name:Dragon Token ManaCost:no cost Types:Creature Dragon -K:Flying PT:4/4 +K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/c_4_6_a_golem.txt b/forge-gui/res/tokenscripts/c_4_6_a_golem.txt index c695331e66f..870c5428d41 100644 --- a/forge-gui/res/tokenscripts/c_4_6_a_golem.txt +++ b/forge-gui/res/tokenscripts/c_4_6_a_golem.txt @@ -1,5 +1,5 @@ Name:Golem Token ManaCost:no cost -PT:4/6 Types:Artifact Creature Golem +PT:4/6 Oracle: diff --git a/forge-gui/res/tokenscripts/c_6_12_a_construct_trample.txt b/forge-gui/res/tokenscripts/c_6_12_a_construct_trample.txt index 8b178ae896e..0d3ee99a247 100644 --- a/forge-gui/res/tokenscripts/c_6_12_a_construct_trample.txt +++ b/forge-gui/res/tokenscripts/c_6_12_a_construct_trample.txt @@ -1,6 +1,6 @@ Name:Construct Token ManaCost:no cost Types:Artifact Creature Construct -K:Trample PT:6/12 +K:Trample Oracle:Trample diff --git a/forge-gui/res/tokenscripts/c_6_6_a_beast.txt b/forge-gui/res/tokenscripts/c_6_6_a_beast.txt index 6481fb594d5..c7a7c4a4027 100644 --- a/forge-gui/res/tokenscripts/c_6_6_a_beast.txt +++ b/forge-gui/res/tokenscripts/c_6_6_a_beast.txt @@ -1,5 +1,5 @@ Name:Beast Token ManaCost:no cost -PT:6/6 Types:Artifact Creature Beast +PT:6/6 Oracle: diff --git a/forge-gui/res/tokenscripts/c_9_9_a_golem.txt b/forge-gui/res/tokenscripts/c_9_9_a_golem.txt index fdd27bf3484..22bd9a3c373 100644 --- a/forge-gui/res/tokenscripts/c_9_9_a_golem.txt +++ b/forge-gui/res/tokenscripts/c_9_9_a_golem.txt @@ -1,5 +1,5 @@ Name:Golem Token ManaCost:no cost -PT:9/9 Types:Artifact Creature Golem +PT:9/9 Oracle: diff --git a/forge-gui/res/tokenscripts/c_a_powerstone.txt b/forge-gui/res/tokenscripts/c_a_powerstone.txt index 9aa3d0cdf8e..69df785598e 100644 --- a/forge-gui/res/tokenscripts/c_a_powerstone.txt +++ b/forge-gui/res/tokenscripts/c_a_powerstone.txt @@ -1,6 +1,6 @@ Name:Powerstone Token ManaCost:no cost -Types:Artifact Powerstone Colors:colorless +Types:Artifact Powerstone A:AB$ Mana | Cost$ T | Produced$ C | RestrictValid$ CantCastNonArtifactSpells | SpellDescription$ Add {C}. This mana can't be spent to cast a nonartifact spell. Oracle:{T}: Add {C}. This mana can't be spent to cast a nonartifact spell. diff --git a/forge-gui/res/tokenscripts/carnivore.txt b/forge-gui/res/tokenscripts/carnivore.txt index e22db3d3258..eadd19e5d71 100644 --- a/forge-gui/res/tokenscripts/carnivore.txt +++ b/forge-gui/res/tokenscripts/carnivore.txt @@ -1,6 +1,6 @@ Name:Carnivore ManaCost:no cost -PT:3/1 Colors:red Types:Creature Beast +PT:3/1 Oracle: diff --git a/forge-gui/res/tokenscripts/cherubael.txt b/forge-gui/res/tokenscripts/cherubael.txt index 9209ba5bf0f..205e01efd55 100644 --- a/forge-gui/res/tokenscripts/cherubael.txt +++ b/forge-gui/res/tokenscripts/cherubael.txt @@ -1,7 +1,7 @@ Name:Cherubael ManaCost:no cost -Types:Legendary Creature Demon Colors:black +Types:Legendary Creature Demon PT:4/4 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/colossal_dreadmaw.txt b/forge-gui/res/tokenscripts/colossal_dreadmaw.txt index f3eb7200cca..f3b12085a60 100644 --- a/forge-gui/res/tokenscripts/colossal_dreadmaw.txt +++ b/forge-gui/res/tokenscripts/colossal_dreadmaw.txt @@ -1,7 +1,7 @@ Name:Colossal Dreadmaw ManaCost:no cost -Types:Creature Dinosaur Colors:green +Types:Creature Dinosaur PT:6/6 K:Trample Oracle:Trample (This creature can deal excess combat damage to the player or planeswalker it's attacking.) diff --git a/forge-gui/res/tokenscripts/feather.txt b/forge-gui/res/tokenscripts/feather.txt index beadc105649..8a27ad5c651 100644 --- a/forge-gui/res/tokenscripts/feather.txt +++ b/forge-gui/res/tokenscripts/feather.txt @@ -1,6 +1,6 @@ Name:Feather ManaCost:no cost -Types:Artifact Colors:red +Types:Artifact A:AB$ ChangeZone | Cost$ 1 T Sac<1/CARDNAME> | TgtPrompt$ Choose target Phoenix card in your graveyard | ValidTgts$ Phoenix.YouOwn | Origin$ Graveyard | Destination$ Battlefield | Tapped$ True | SpellDescription$ Return target Phoenix card from your graveyard to the battlefield tapped. Oracle:{1}, {T}, Sacrifice this artifact: Return target Phoenix card from your graveyard to the battlefield tapped. diff --git a/forge-gui/res/tokenscripts/first_mate_ragavan.txt b/forge-gui/res/tokenscripts/first_mate_ragavan.txt index 0751873432e..4429d0e7050 100644 --- a/forge-gui/res/tokenscripts/first_mate_ragavan.txt +++ b/forge-gui/res/tokenscripts/first_mate_ragavan.txt @@ -1,6 +1,6 @@ Name:First Mate Ragavan ManaCost:no cost -Types:Legendary Creature Monkey Colors:red +Types:Legendary Creature Monkey PT:2/1 Oracle: diff --git a/forge-gui/res/tokenscripts/g_0_0_ooze_trample.txt b/forge-gui/res/tokenscripts/g_0_0_ooze_trample.txt index c4e96053a0f..acc58a30600 100644 --- a/forge-gui/res/tokenscripts/g_0_0_ooze_trample.txt +++ b/forge-gui/res/tokenscripts/g_0_0_ooze_trample.txt @@ -1,7 +1,7 @@ Name:Ooze Token ManaCost:no cost -Types:Creature Ooze Colors:green +Types:Creature Ooze PT:0/0 K:Trample Oracle:Trample diff --git a/forge-gui/res/tokenscripts/g_0_1_dinosaur_egg.txt b/forge-gui/res/tokenscripts/g_0_1_dinosaur_egg.txt index f6c225ed866..234f5b781d3 100644 --- a/forge-gui/res/tokenscripts/g_0_1_dinosaur_egg.txt +++ b/forge-gui/res/tokenscripts/g_0_1_dinosaur_egg.txt @@ -1,6 +1,6 @@ Name:Dinosaur Egg Token ManaCost:no cost -Types:Creature Dinosaur Egg Colors:green +Types:Creature Dinosaur Egg PT:0/1 Oracle: diff --git a/forge-gui/res/tokenscripts/g_0_1_egg_defender.txt b/forge-gui/res/tokenscripts/g_0_1_egg_defender.txt index 40163bfca0c..9d39746d750 100644 --- a/forge-gui/res/tokenscripts/g_0_1_egg_defender.txt +++ b/forge-gui/res/tokenscripts/g_0_1_egg_defender.txt @@ -1,7 +1,7 @@ Name:Egg Token ManaCost:no cost -Types:Creature Egg Colors:green +Types:Creature Egg PT:0/1 K:Defender Oracle:Defender diff --git a/forge-gui/res/tokenscripts/g_0_1_plant.txt b/forge-gui/res/tokenscripts/g_0_1_plant.txt index 10e5b900179..a5a3d8afdf5 100644 --- a/forge-gui/res/tokenscripts/g_0_1_plant.txt +++ b/forge-gui/res/tokenscripts/g_0_1_plant.txt @@ -1,6 +1,6 @@ Name:Plant Token ManaCost:no cost -Types:Creature Plant Colors:green +Types:Creature Plant PT:0/1 Oracle: diff --git a/forge-gui/res/tokenscripts/g_0_1_sheep.txt b/forge-gui/res/tokenscripts/g_0_1_sheep.txt index 081beb2f17d..18a65dd8223 100644 --- a/forge-gui/res/tokenscripts/g_0_1_sheep.txt +++ b/forge-gui/res/tokenscripts/g_0_1_sheep.txt @@ -1,6 +1,6 @@ Name:Sheep Token ManaCost:no cost -PT:0/1 Colors:green Types:Creature Sheep +PT:0/1 Oracle: diff --git a/forge-gui/res/tokenscripts/g_0_2_plant_defender.txt b/forge-gui/res/tokenscripts/g_0_2_plant_defender.txt index f491f922e24..c3b428ab72c 100644 --- a/forge-gui/res/tokenscripts/g_0_2_plant_defender.txt +++ b/forge-gui/res/tokenscripts/g_0_2_plant_defender.txt @@ -1,7 +1,7 @@ Name:Plant Token ManaCost:no cost -Types:Creature Plant Colors:green +Types:Creature Plant PT:0/2 K:Defender Oracle:Defender diff --git a/forge-gui/res/tokenscripts/g_1_1_ape.txt b/forge-gui/res/tokenscripts/g_1_1_ape.txt index ceea718887e..98bece5818e 100644 --- a/forge-gui/res/tokenscripts/g_1_1_ape.txt +++ b/forge-gui/res/tokenscripts/g_1_1_ape.txt @@ -1,6 +1,6 @@ Name:Ape Token ManaCost:no cost -Types:Creature Ape Colors:green +Types:Creature Ape PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/g_1_1_boar_food.txt b/forge-gui/res/tokenscripts/g_1_1_boar_food.txt index 410865c6a06..6b92e94e415 100644 --- a/forge-gui/res/tokenscripts/g_1_1_boar_food.txt +++ b/forge-gui/res/tokenscripts/g_1_1_boar_food.txt @@ -1,7 +1,7 @@ Name:Boar Token ManaCost:no cost -Types:Creature Boar Colors:green +Types:Creature Boar PT:1/1 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When this creature dies, create a Food token. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_food_sac | TokenOwner$ You diff --git a/forge-gui/res/tokenscripts/g_1_1_cat.txt b/forge-gui/res/tokenscripts/g_1_1_cat.txt index 23a5b76ddb6..a85d29dcf35 100644 --- a/forge-gui/res/tokenscripts/g_1_1_cat.txt +++ b/forge-gui/res/tokenscripts/g_1_1_cat.txt @@ -1,6 +1,6 @@ Name:Cat Token ManaCost:no cost -Types:Creature Cat Colors:green +Types:Creature Cat PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/g_1_1_dog.txt b/forge-gui/res/tokenscripts/g_1_1_dog.txt index 85b7979f92c..ee17b4a9abf 100644 --- a/forge-gui/res/tokenscripts/g_1_1_dog.txt +++ b/forge-gui/res/tokenscripts/g_1_1_dog.txt @@ -1,6 +1,6 @@ Name:Dog Token ManaCost:no cost -PT:1/1 Colors:green Types:Creature Dog +PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/g_1_1_elf_druid_g.txt b/forge-gui/res/tokenscripts/g_1_1_elf_druid_g.txt index 1866507c108..7c896966968 100644 --- a/forge-gui/res/tokenscripts/g_1_1_elf_druid_g.txt +++ b/forge-gui/res/tokenscripts/g_1_1_elf_druid_g.txt @@ -1,7 +1,7 @@ Name:Elf Druid Token ManaCost:no cost -Types:Creature Elf Druid Colors:green +Types:Creature Elf Druid PT:1/1 A:AB$ Mana | Cost$ T | Produced$ G | SpellDescription$ Add {G}. Oracle:{T}: Add {G}. diff --git a/forge-gui/res/tokenscripts/g_1_1_elf_g.txt b/forge-gui/res/tokenscripts/g_1_1_elf_g.txt index ce33e030e5b..efe025df11c 100644 --- a/forge-gui/res/tokenscripts/g_1_1_elf_g.txt +++ b/forge-gui/res/tokenscripts/g_1_1_elf_g.txt @@ -1,7 +1,7 @@ Name:Elf Token ManaCost:no cost -Types:Creature Elf Colors:green +Types:Creature Elf PT:1/1 A:AB$ Mana | Cost$ T | Produced$ G | SpellDescription$ Add {G}. Oracle:{T}: Add {G}. diff --git a/forge-gui/res/tokenscripts/g_1_1_elf_warrior.txt b/forge-gui/res/tokenscripts/g_1_1_elf_warrior.txt index ab3204ab73b..1b23ecba9bf 100644 --- a/forge-gui/res/tokenscripts/g_1_1_elf_warrior.txt +++ b/forge-gui/res/tokenscripts/g_1_1_elf_warrior.txt @@ -1,6 +1,6 @@ Name:Elf Warrior Token ManaCost:no cost -Types:Creature Elf Warrior Colors:green +Types:Creature Elf Warrior PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/g_1_1_forest_dryad.txt b/forge-gui/res/tokenscripts/g_1_1_forest_dryad.txt index af13d310f93..896c5d4bbd1 100644 --- a/forge-gui/res/tokenscripts/g_1_1_forest_dryad.txt +++ b/forge-gui/res/tokenscripts/g_1_1_forest_dryad.txt @@ -1,6 +1,6 @@ Name:Forest Dryad Token ManaCost:no cost -Types:Land Creature Forest Dryad Colors:green +Types:Land Creature Forest Dryad PT:1/1 Oracle:({T}: Add {G}.) diff --git a/forge-gui/res/tokenscripts/g_1_1_hippo.txt b/forge-gui/res/tokenscripts/g_1_1_hippo.txt index 794d0712d26..007dd4d7666 100644 --- a/forge-gui/res/tokenscripts/g_1_1_hippo.txt +++ b/forge-gui/res/tokenscripts/g_1_1_hippo.txt @@ -1,6 +1,6 @@ Name:Hippo Token ManaCost:no cost -Types:Creature Hippo Colors:green +Types:Creature Hippo PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/g_1_1_human_monk_g.txt b/forge-gui/res/tokenscripts/g_1_1_human_monk_g.txt index 67530c2da14..b2096f0742e 100644 --- a/forge-gui/res/tokenscripts/g_1_1_human_monk_g.txt +++ b/forge-gui/res/tokenscripts/g_1_1_human_monk_g.txt @@ -1,7 +1,7 @@ Name:Human Monk Token ManaCost:no cost -Types:Creature Human Monk Colors:green +Types:Creature Human Monk PT:1/1 A:AB$ Mana | Cost$ T | Produced$ G | SpellDescription$ Add {G}. Oracle:{T}: Add {G}. diff --git a/forge-gui/res/tokenscripts/g_1_1_insect.txt b/forge-gui/res/tokenscripts/g_1_1_insect.txt index 907a511fa6e..7a488c72282 100644 --- a/forge-gui/res/tokenscripts/g_1_1_insect.txt +++ b/forge-gui/res/tokenscripts/g_1_1_insect.txt @@ -1,6 +1,6 @@ Name:Insect Token ManaCost:no cost -PT:1/1 Colors:green Types:Creature Insect +PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/g_1_1_insect_flying_deathtouch.txt b/forge-gui/res/tokenscripts/g_1_1_insect_flying_deathtouch.txt index a6448a305e6..706ecb486ec 100644 --- a/forge-gui/res/tokenscripts/g_1_1_insect_flying_deathtouch.txt +++ b/forge-gui/res/tokenscripts/g_1_1_insect_flying_deathtouch.txt @@ -1,8 +1,8 @@ Name:Insect Token ManaCost:no cost -PT:1/1 Colors:green Types:Creature Insect +PT:1/1 K:Flying K:Deathtouch Oracle:Flying, deathtouch diff --git a/forge-gui/res/tokenscripts/g_1_1_ooze.txt b/forge-gui/res/tokenscripts/g_1_1_ooze.txt index 95a68b9c8a3..e1b15eb2cb2 100644 --- a/forge-gui/res/tokenscripts/g_1_1_ooze.txt +++ b/forge-gui/res/tokenscripts/g_1_1_ooze.txt @@ -1,6 +1,6 @@ Name:Ooze Token ManaCost:no cost -Types:Creature Ooze Colors:green +Types:Creature Ooze PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/g_1_1_phyrexian_insect_infect.txt b/forge-gui/res/tokenscripts/g_1_1_phyrexian_insect_infect.txt index c7b2e2ac5f8..af85adcf6dc 100644 --- a/forge-gui/res/tokenscripts/g_1_1_phyrexian_insect_infect.txt +++ b/forge-gui/res/tokenscripts/g_1_1_phyrexian_insect_infect.txt @@ -1,7 +1,7 @@ Name:Phyrexian Insect Token ManaCost:no cost -PT:1/1 Colors:green Types:Creature Phyrexian Insect +PT:1/1 K:Infect Oracle:Infect (This creature deals damage to creatures in the form of -1/-1 counters and to players in the form of poison counters.) diff --git a/forge-gui/res/tokenscripts/g_1_1_phyrexian_saproling.txt b/forge-gui/res/tokenscripts/g_1_1_phyrexian_saproling.txt index c0a4afab27a..8821e46bc3a 100644 --- a/forge-gui/res/tokenscripts/g_1_1_phyrexian_saproling.txt +++ b/forge-gui/res/tokenscripts/g_1_1_phyrexian_saproling.txt @@ -1,6 +1,6 @@ Name:Phyrexian Saproling Token ManaCost:no cost -Types:Creature Phyrexian Saproling Colors:green +Types:Creature Phyrexian Saproling PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/g_1_1_plant.txt b/forge-gui/res/tokenscripts/g_1_1_plant.txt index 39b141dd1e1..a180e938987 100644 --- a/forge-gui/res/tokenscripts/g_1_1_plant.txt +++ b/forge-gui/res/tokenscripts/g_1_1_plant.txt @@ -1,6 +1,6 @@ Name:Plant Token ManaCost:no cost -Types:Creature Plant Colors:green +Types:Creature Plant PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/g_1_1_saproling.txt b/forge-gui/res/tokenscripts/g_1_1_saproling.txt index f721ca4b7b0..20d354bf170 100644 --- a/forge-gui/res/tokenscripts/g_1_1_saproling.txt +++ b/forge-gui/res/tokenscripts/g_1_1_saproling.txt @@ -1,6 +1,6 @@ Name:Saproling Token ManaCost:no cost -Types:Creature Saproling Colors:green +Types:Creature Saproling PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/g_1_1_snake.txt b/forge-gui/res/tokenscripts/g_1_1_snake.txt index 85efd1a2606..717b0877a37 100644 --- a/forge-gui/res/tokenscripts/g_1_1_snake.txt +++ b/forge-gui/res/tokenscripts/g_1_1_snake.txt @@ -1,6 +1,6 @@ Name:Snake Token ManaCost:no cost -Types:Creature Snake Colors:green +Types:Creature Snake PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/g_1_1_snake_deathtouch.txt b/forge-gui/res/tokenscripts/g_1_1_snake_deathtouch.txt index e743a77c835..a1b3bc5f6c5 100644 --- a/forge-gui/res/tokenscripts/g_1_1_snake_deathtouch.txt +++ b/forge-gui/res/tokenscripts/g_1_1_snake_deathtouch.txt @@ -1,7 +1,7 @@ Name:Snake Token ManaCost:no cost -Types:Creature Snake Colors:green +Types:Creature Snake PT:1/1 K:Deathtouch Oracle:Deathtouch diff --git a/forge-gui/res/tokenscripts/g_1_1_spike.txt b/forge-gui/res/tokenscripts/g_1_1_spike.txt index 5444cda69d2..cadfa6c4638 100644 --- a/forge-gui/res/tokenscripts/g_1_1_spike.txt +++ b/forge-gui/res/tokenscripts/g_1_1_spike.txt @@ -1,6 +1,6 @@ Name:Spike Token ManaCost:no cost -Types:Creature Spike Colors:green +Types:Creature Spike PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/g_1_1_squirrel.txt b/forge-gui/res/tokenscripts/g_1_1_squirrel.txt index b092e423e19..2b1f57ea6b4 100644 --- a/forge-gui/res/tokenscripts/g_1_1_squirrel.txt +++ b/forge-gui/res/tokenscripts/g_1_1_squirrel.txt @@ -1,6 +1,6 @@ Name:Squirrel Token ManaCost:no cost +Colors:green Types:Creature Squirrel PT:1/1 -Colors:green Oracle: diff --git a/forge-gui/res/tokenscripts/g_1_1_tyranid.txt b/forge-gui/res/tokenscripts/g_1_1_tyranid.txt index b8c4a6a73be..6bc2312fcb4 100644 --- a/forge-gui/res/tokenscripts/g_1_1_tyranid.txt +++ b/forge-gui/res/tokenscripts/g_1_1_tyranid.txt @@ -1,6 +1,6 @@ Name:Tyranid Token ManaCost:no cost +Colors:green Types:Creature Tyranid PT:1/1 -Colors:green Oracle: diff --git a/forge-gui/res/tokenscripts/g_1_2_spider_reach.txt b/forge-gui/res/tokenscripts/g_1_2_spider_reach.txt index ae4131fba2c..8ccd6f50d8f 100644 --- a/forge-gui/res/tokenscripts/g_1_2_spider_reach.txt +++ b/forge-gui/res/tokenscripts/g_1_2_spider_reach.txt @@ -1,7 +1,7 @@ Name:Spider Token ManaCost:no cost +Colors:green Types:Creature Spider PT:1/2 -Colors:green K:Reach Oracle:Reach diff --git a/forge-gui/res/tokenscripts/g_1_3_e_spider_reach.txt b/forge-gui/res/tokenscripts/g_1_3_e_spider_reach.txt index ad0d5dda10e..26f35dfa606 100644 --- a/forge-gui/res/tokenscripts/g_1_3_e_spider_reach.txt +++ b/forge-gui/res/tokenscripts/g_1_3_e_spider_reach.txt @@ -1,7 +1,7 @@ Name:Spider Token ManaCost:no cost +Colors:green Types:Enchantment Creature Spider PT:1/3 -Colors:green K:Reach Oracle:Reach (This creature can block creatures with flying.) diff --git a/forge-gui/res/tokenscripts/g_2_1_varmint.txt b/forge-gui/res/tokenscripts/g_2_1_varmint.txt index 6a75a0c89fc..b41a04132b7 100644 --- a/forge-gui/res/tokenscripts/g_2_1_varmint.txt +++ b/forge-gui/res/tokenscripts/g_2_1_varmint.txt @@ -1,6 +1,6 @@ Name:Varmint Token ManaCost:no cost +Colors:green Types:Creature Varmint PT:2/1 -Colors:green Oracle: diff --git a/forge-gui/res/tokenscripts/g_2_2_alien_salamander_islandwalk.txt b/forge-gui/res/tokenscripts/g_2_2_alien_salamander_islandwalk.txt index f736128c909..143ff99103a 100644 --- a/forge-gui/res/tokenscripts/g_2_2_alien_salamander_islandwalk.txt +++ b/forge-gui/res/tokenscripts/g_2_2_alien_salamander_islandwalk.txt @@ -1,7 +1,7 @@ Name:Alien Salamander Token ManaCost:no cost -Types:Creature Alien Salamander Colors:green +Types:Creature Alien Salamander PT:2/2 K:Landwalk:Island Oracle:Islandwalk diff --git a/forge-gui/res/tokenscripts/g_2_2_bear.txt b/forge-gui/res/tokenscripts/g_2_2_bear.txt index 905e64122bf..777946ef170 100644 --- a/forge-gui/res/tokenscripts/g_2_2_bear.txt +++ b/forge-gui/res/tokenscripts/g_2_2_bear.txt @@ -1,6 +1,6 @@ Name:Bear Token ManaCost:no cost -PT:2/2 Colors:green Types:Creature Bear +PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/g_2_2_beast.txt b/forge-gui/res/tokenscripts/g_2_2_beast.txt index a0357a9d9f6..f57b0527535 100644 --- a/forge-gui/res/tokenscripts/g_2_2_beast.txt +++ b/forge-gui/res/tokenscripts/g_2_2_beast.txt @@ -1,6 +1,6 @@ Name:Beast Token ManaCost:no cost -PT:2/2 Colors:green Types:Creature Beast +PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/g_2_2_boar.txt b/forge-gui/res/tokenscripts/g_2_2_boar.txt index 7beac13f444..e3dcecbae91 100644 --- a/forge-gui/res/tokenscripts/g_2_2_boar.txt +++ b/forge-gui/res/tokenscripts/g_2_2_boar.txt @@ -1,6 +1,6 @@ Name:Boar Token ManaCost:no cost -PT:2/2 Colors:green Types:Creature Boar +PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/g_2_2_cat_warrior_forestwalk.txt b/forge-gui/res/tokenscripts/g_2_2_cat_warrior_forestwalk.txt index 4b99c17db0e..e46a733191b 100644 --- a/forge-gui/res/tokenscripts/g_2_2_cat_warrior_forestwalk.txt +++ b/forge-gui/res/tokenscripts/g_2_2_cat_warrior_forestwalk.txt @@ -1,7 +1,7 @@ Name:Cat Warrior Token ManaCost:no cost -Types:Creature Cat Warrior Colors:green +Types:Creature Cat Warrior PT:2/2 K:Landwalk:Forest Oracle:Forestwalk diff --git a/forge-gui/res/tokenscripts/g_2_2_gorilla.txt b/forge-gui/res/tokenscripts/g_2_2_gorilla.txt index 26ba71b12b7..769d139dac6 100644 --- a/forge-gui/res/tokenscripts/g_2_2_gorilla.txt +++ b/forge-gui/res/tokenscripts/g_2_2_gorilla.txt @@ -1,6 +1,6 @@ Name:Gorilla Token ManaCost:no cost -PT:2/2 Colors:green Types:Creature Gorilla +PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/g_2_2_lizard.txt b/forge-gui/res/tokenscripts/g_2_2_lizard.txt index 251dbfebba6..b0ff3b3cc79 100644 --- a/forge-gui/res/tokenscripts/g_2_2_lizard.txt +++ b/forge-gui/res/tokenscripts/g_2_2_lizard.txt @@ -1,6 +1,6 @@ Name:Lizard Token ManaCost:no cost -PT:2/2 Colors:green Types:Creature Lizard +PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/g_2_2_monkey.txt b/forge-gui/res/tokenscripts/g_2_2_monkey.txt index a363cf5df65..8e3ebc01034 100644 --- a/forge-gui/res/tokenscripts/g_2_2_monkey.txt +++ b/forge-gui/res/tokenscripts/g_2_2_monkey.txt @@ -1,6 +1,6 @@ Name:Monkey Token ManaCost:no cost -PT:2/2 Colors:green Types:Creature Monkey +PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/g_2_2_ooze.txt b/forge-gui/res/tokenscripts/g_2_2_ooze.txt index 89a5cb3d6c1..e2753144492 100644 --- a/forge-gui/res/tokenscripts/g_2_2_ooze.txt +++ b/forge-gui/res/tokenscripts/g_2_2_ooze.txt @@ -1,6 +1,6 @@ Name:Ooze Token ManaCost:no cost -Types:Creature Ooze Colors:green +Types:Creature Ooze PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/g_2_2_ooze_mitotic.txt b/forge-gui/res/tokenscripts/g_2_2_ooze_mitotic.txt index 3b8bc8f0021..b4262b940ef 100644 --- a/forge-gui/res/tokenscripts/g_2_2_ooze_mitotic.txt +++ b/forge-gui/res/tokenscripts/g_2_2_ooze_mitotic.txt @@ -1,7 +1,7 @@ Name:Ooze Token ManaCost:no cost -Types:Creature Ooze Colors:green +Types:Creature Ooze PT:2/2 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigTokenJunior | TriggerDescription$ When this creature dies, create two 1/1 green Ooze creature tokens. SVar:TrigTokenJunior:DB$ Token | TokenScript$ g_1_1_ooze | TokenOwner$ You | TokenAmount$ 2 diff --git a/forge-gui/res/tokenscripts/g_2_2_spider_reach.txt b/forge-gui/res/tokenscripts/g_2_2_spider_reach.txt index 1f0ddf4cda3..c2a146a6f66 100644 --- a/forge-gui/res/tokenscripts/g_2_2_spider_reach.txt +++ b/forge-gui/res/tokenscripts/g_2_2_spider_reach.txt @@ -1,7 +1,7 @@ Name:Spider Token ManaCost:no cost +Colors:green Types:Creature Spider PT:2/2 -Colors:green K:Reach Oracle:Reach diff --git a/forge-gui/res/tokenscripts/g_2_2_wolf.txt b/forge-gui/res/tokenscripts/g_2_2_wolf.txt index e7c16a1d768..e8cfda2491e 100644 --- a/forge-gui/res/tokenscripts/g_2_2_wolf.txt +++ b/forge-gui/res/tokenscripts/g_2_2_wolf.txt @@ -1,6 +1,6 @@ Name:Wolf Token ManaCost:no cost -PT:2/2 Colors:green Types:Creature Wolf +PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/g_2_3_antelope_forestwalk.txt b/forge-gui/res/tokenscripts/g_2_3_antelope_forestwalk.txt index e18e8e861fb..d9431ac0d1d 100644 --- a/forge-gui/res/tokenscripts/g_2_3_antelope_forestwalk.txt +++ b/forge-gui/res/tokenscripts/g_2_3_antelope_forestwalk.txt @@ -1,7 +1,7 @@ Name:Antelope Token ManaCost:no cost -Types:Creature Antelope Colors:green +Types:Creature Antelope PT:2/3 K:Landwalk:Forest Oracle:Forestwalk diff --git a/forge-gui/res/tokenscripts/g_2_5_treefolk_shaman.txt b/forge-gui/res/tokenscripts/g_2_5_treefolk_shaman.txt index 97a0457c01f..77233f96692 100644 --- a/forge-gui/res/tokenscripts/g_2_5_treefolk_shaman.txt +++ b/forge-gui/res/tokenscripts/g_2_5_treefolk_shaman.txt @@ -1,6 +1,6 @@ Name:Treefolk Shaman Token ManaCost:no cost -PT:2/5 Colors:green Types:Creature Treefolk Shaman +PT:2/5 Oracle: diff --git a/forge-gui/res/tokenscripts/g_3_2_cat_shroud.txt b/forge-gui/res/tokenscripts/g_3_2_cat_shroud.txt index c8031e4a07d..225060ec8e3 100644 --- a/forge-gui/res/tokenscripts/g_3_2_cat_shroud.txt +++ b/forge-gui/res/tokenscripts/g_3_2_cat_shroud.txt @@ -1,7 +1,7 @@ Name:Cat Token ManaCost:no cost -Types:Creature Cat Colors:green +Types:Creature Cat PT:3/2 K:Shroud Oracle:Shroud diff --git a/forge-gui/res/tokenscripts/g_3_3_badger.txt b/forge-gui/res/tokenscripts/g_3_3_badger.txt index d71398dd18b..14ceb0a5850 100644 --- a/forge-gui/res/tokenscripts/g_3_3_badger.txt +++ b/forge-gui/res/tokenscripts/g_3_3_badger.txt @@ -1,6 +1,6 @@ Name:Badger Token ManaCost:no cost -Types:Creature Badger Colors:green +Types:Creature Badger PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/g_3_3_centaur.txt b/forge-gui/res/tokenscripts/g_3_3_centaur.txt index 33f5b4d6b56..b82c9058ea5 100644 --- a/forge-gui/res/tokenscripts/g_3_3_centaur.txt +++ b/forge-gui/res/tokenscripts/g_3_3_centaur.txt @@ -1,6 +1,6 @@ Name:Centaur Token ManaCost:no cost -Types:Creature Centaur Colors:green +Types:Creature Centaur PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/g_3_3_centaur_pro_black.txt b/forge-gui/res/tokenscripts/g_3_3_centaur_pro_black.txt index 1ef8280ccda..6cd5cf8df38 100644 --- a/forge-gui/res/tokenscripts/g_3_3_centaur_pro_black.txt +++ b/forge-gui/res/tokenscripts/g_3_3_centaur_pro_black.txt @@ -1,7 +1,7 @@ Name:Centaur Token ManaCost:no cost -Types:Creature Centaur Colors:green +Types:Creature Centaur PT:3/3 K:Protection from black Oracle:Protection from black From a2901eeeb8bdfb1069d347ea0353723bf59d25f5 Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 09:33:32 +0100 Subject: [PATCH 15/91] Edit pile cleanup: Line reordering, first pass: part 7, folder 'tokenscripts', part 3 --- forge-gui/res/tokenscripts/g_3_3_dinosaur.txt | 2 +- forge-gui/res/tokenscripts/g_3_3_dinosaur_trample.txt | 2 +- forge-gui/res/tokenscripts/g_3_3_e_centaur.txt | 2 +- forge-gui/res/tokenscripts/g_3_3_hippo.txt | 2 +- forge-gui/res/tokenscripts/g_3_3_insect.txt | 2 +- forge-gui/res/tokenscripts/g_3_3_mutant_deathtouch.txt | 2 +- forge-gui/res/tokenscripts/g_3_3_ooze.txt | 2 +- forge-gui/res/tokenscripts/g_3_3_raccoon.txt | 2 +- forge-gui/res/tokenscripts/g_3_3_tyranid_warrior_trample.txt | 2 +- forge-gui/res/tokenscripts/g_5_4_snake.txt | 2 +- forge-gui/res/tokenscripts/g_x_x_elephant_resurgence.txt | 2 +- forge-gui/res/tokenscripts/g_x_x_ooze.txt | 2 +- forge-gui/res/tokenscripts/g_x_x_ooze_gutter_grime.txt | 2 +- forge-gui/res/tokenscripts/g_x_x_phyrexian_horror.txt | 2 +- forge-gui/res/tokenscripts/g_x_x_saproling_burst.txt | 2 +- forge-gui/res/tokenscripts/g_x_x_spirit.txt | 2 +- forge-gui/res/tokenscripts/g_x_x_treefolk.txt | 2 +- forge-gui/res/tokenscripts/g_x_x_treefolk_reach_total_lands.txt | 2 +- .../res/tokenscripts/g_x_x_treefolk_warrior_total_forests.txt | 2 +- forge-gui/res/tokenscripts/g_x_y_ooze_types_graveyard.txt | 2 +- forge-gui/res/tokenscripts/gw_1_1_alien_insect_flying.txt | 2 +- forge-gui/res/tokenscripts/gw_1_1_citizen.txt | 2 +- forge-gui/res/tokenscripts/gw_1_1_elf_warrior.txt | 2 +- forge-gui/res/tokenscripts/gw_1_1_human_soldier_training.txt | 2 +- forge-gui/res/tokenscripts/gw_2_2_elf_knight_vigilance.txt | 2 +- forge-gui/res/tokenscripts/gw_3_3_phyrexian_hydra_lifelink.txt | 2 +- forge-gui/res/tokenscripts/gw_3_3_phyrexian_hydra_reach.txt | 2 +- forge-gui/res/tokenscripts/gw_8_8_elemental_vigilance.txt | 2 +- forge-gui/res/tokenscripts/gw_x_x_elemental_total_creatures.txt | 2 +- forge-gui/res/tokenscripts/hornet.txt | 2 +- forge-gui/res/tokenscripts/icingdeath_frost_tongue.txt | 2 +- forge-gui/res/tokenscripts/icy_manalith.txt | 2 +- forge-gui/res/tokenscripts/kaldra.txt | 2 +- forge-gui/res/tokenscripts/kelp.txt | 2 +- forge-gui/res/tokenscripts/kobolds_of_kher_keep.txt | 2 +- forge-gui/res/tokenscripts/komas_coil.txt | 2 +- forge-gui/res/tokenscripts/lightning_rager.txt | 2 +- forge-gui/res/tokenscripts/llanowar_elves.txt | 2 +- forge-gui/res/tokenscripts/mowu.txt | 2 +- forge-gui/res/tokenscripts/ornithopter.txt | 2 +- forge-gui/res/tokenscripts/plaguebearer_of_nurgle.txt | 2 +- forge-gui/res/tokenscripts/r_0_0_a_gremlin.txt | 2 +- .../res/tokenscripts/r_0_1_elemental_rekindling_phoenix.txt | 2 +- .../tokenscripts/r_0_2_dragon_egg_defender_hatches_dragon.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_balloon_flying.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_brainiac.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_devil_burn.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_dinosaur_haste.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_dwarf.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_elemental.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_elemental_cat_haste.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_elemental_haste.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_elemental_ping.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_employee.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_goblin.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_goblin_all_attack.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_goblin_haste.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_goblin_noblock.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_goblin_scout_mountainwalk.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_goblin_wizard_prowess.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_gremlin.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_hamster.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_human.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_human_haste.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_mercenary_tappump.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_monk_prowess.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_phyrexian_goblin.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_phyrexian_goblin_haste.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_pirate_menace_haste.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_pirate_noblock_all_attack.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_satyr_noblock.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_soldier_haste.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_survivor.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_warrior.txt | 2 +- forge-gui/res/tokenscripts/r_1_1_wizard_mana_restrict.txt | 2 +- forge-gui/res/tokenscripts/r_2_1_dwarf_berserker.txt | 2 +- forge-gui/res/tokenscripts/r_2_1_goblin_haste.txt | 2 +- forge-gui/res/tokenscripts/r_2_1_human_wizard.txt | 2 +- forge-gui/res/tokenscripts/r_2_2_alien_warrior.txt | 2 +- .../res/tokenscripts/r_2_2_dragon_flying_firebreathing.txt | 2 +- forge-gui/res/tokenscripts/r_2_2_goblin_shaman_treasure.txt | 2 +- forge-gui/res/tokenscripts/r_2_2_gremlin.txt | 2 +- forge-gui/res/tokenscripts/r_2_2_human_knight_trample_haste.txt | 2 +- forge-gui/res/tokenscripts/r_2_2_imp_burn_opp.txt | 2 +- forge-gui/res/tokenscripts/r_2_2_rebel.txt | 2 +- forge-gui/res/tokenscripts/r_2_3_demon_berserker_menace.txt | 2 +- forge-gui/res/tokenscripts/r_2_3_minotaur.txt | 2 +- forge-gui/res/tokenscripts/r_2_3_minotaur_haste.txt | 2 +- forge-gui/res/tokenscripts/r_3_1_a_construct_haste.txt | 2 +- forge-gui/res/tokenscripts/r_3_1_dinosaur.txt | 2 +- forge-gui/res/tokenscripts/r_3_1_e_elemental_haste.txt | 2 +- forge-gui/res/tokenscripts/r_3_1_elemental.txt | 2 +- forge-gui/res/tokenscripts/r_3_1_elemental_haste.txt | 2 +- forge-gui/res/tokenscripts/r_3_1_elemental_shaman.txt | 2 +- forge-gui/res/tokenscripts/r_3_1_elemental_shaman_haste.txt | 2 +- forge-gui/res/tokenscripts/r_3_1_elemental_trample_haste.txt | 2 +- forge-gui/res/tokenscripts/r_3_1_knight.txt | 2 +- forge-gui/res/tokenscripts/r_3_2_wolf.txt | 2 +- forge-gui/res/tokenscripts/r_3_3_elemental.txt | 2 +- forge-gui/res/tokenscripts/r_3_3_fighter_first_strike.txt | 2 +- 100 files changed, 100 insertions(+), 100 deletions(-) diff --git a/forge-gui/res/tokenscripts/g_3_3_dinosaur.txt b/forge-gui/res/tokenscripts/g_3_3_dinosaur.txt index ce4a505df56..cab882eb3f0 100644 --- a/forge-gui/res/tokenscripts/g_3_3_dinosaur.txt +++ b/forge-gui/res/tokenscripts/g_3_3_dinosaur.txt @@ -1,6 +1,6 @@ Name:Dinosaur Token ManaCost:no cost -Types:Creature Dinosaur Colors:green +Types:Creature Dinosaur PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/g_3_3_dinosaur_trample.txt b/forge-gui/res/tokenscripts/g_3_3_dinosaur_trample.txt index 1eb3fdfcd8e..ff0d9971726 100644 --- a/forge-gui/res/tokenscripts/g_3_3_dinosaur_trample.txt +++ b/forge-gui/res/tokenscripts/g_3_3_dinosaur_trample.txt @@ -1,7 +1,7 @@ Name:Dinosaur Token ManaCost:no cost -Types:Creature Dinosaur Colors:green +Types:Creature Dinosaur PT:3/3 K:Trample Oracle:Trample (This creature can deal excess combat damage to the player or planeswalker it's attacking.) diff --git a/forge-gui/res/tokenscripts/g_3_3_e_centaur.txt b/forge-gui/res/tokenscripts/g_3_3_e_centaur.txt index c1a65823166..f4fc5db6d87 100644 --- a/forge-gui/res/tokenscripts/g_3_3_e_centaur.txt +++ b/forge-gui/res/tokenscripts/g_3_3_e_centaur.txt @@ -1,6 +1,6 @@ Name:Centaur Token ManaCost:no cost -Types:Enchantment Creature Centaur Colors:green +Types:Enchantment Creature Centaur PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/g_3_3_hippo.txt b/forge-gui/res/tokenscripts/g_3_3_hippo.txt index cfade5d9e48..6c0d0c4b9ff 100644 --- a/forge-gui/res/tokenscripts/g_3_3_hippo.txt +++ b/forge-gui/res/tokenscripts/g_3_3_hippo.txt @@ -1,6 +1,6 @@ Name:Hippo Token ManaCost:no cost -Types:Creature Hippo Colors:green +Types:Creature Hippo PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/g_3_3_insect.txt b/forge-gui/res/tokenscripts/g_3_3_insect.txt index 17f34350496..2a6313d4a4a 100644 --- a/forge-gui/res/tokenscripts/g_3_3_insect.txt +++ b/forge-gui/res/tokenscripts/g_3_3_insect.txt @@ -1,6 +1,6 @@ Name:Insect Token ManaCost:no cost -Types:Creature Insect Colors:green +Types:Creature Insect PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/g_3_3_mutant_deathtouch.txt b/forge-gui/res/tokenscripts/g_3_3_mutant_deathtouch.txt index 1381b52a327..b934f88f93c 100644 --- a/forge-gui/res/tokenscripts/g_3_3_mutant_deathtouch.txt +++ b/forge-gui/res/tokenscripts/g_3_3_mutant_deathtouch.txt @@ -1,7 +1,7 @@ Name:Mutant Token ManaCost:no cost -Types:Creature Mutant Colors:green +Types:Creature Mutant PT:3/3 K:Deathtouch Oracle:Deathtouch diff --git a/forge-gui/res/tokenscripts/g_3_3_ooze.txt b/forge-gui/res/tokenscripts/g_3_3_ooze.txt index 95f7c5c0cb0..33a64d75ba7 100644 --- a/forge-gui/res/tokenscripts/g_3_3_ooze.txt +++ b/forge-gui/res/tokenscripts/g_3_3_ooze.txt @@ -1,6 +1,6 @@ Name:Ooze Token ManaCost:no cost -Types:Creature Ooze Colors:green +Types:Creature Ooze PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/g_3_3_raccoon.txt b/forge-gui/res/tokenscripts/g_3_3_raccoon.txt index c7a968b9bea..6567f705319 100644 --- a/forge-gui/res/tokenscripts/g_3_3_raccoon.txt +++ b/forge-gui/res/tokenscripts/g_3_3_raccoon.txt @@ -1,6 +1,6 @@ Name:Raccoon Token ManaCost:no cost +Colors:green Types:Creature Raccoon PT:3/3 -Colors:green Oracle: diff --git a/forge-gui/res/tokenscripts/g_3_3_tyranid_warrior_trample.txt b/forge-gui/res/tokenscripts/g_3_3_tyranid_warrior_trample.txt index 9b40dd714ce..bebe0429a34 100644 --- a/forge-gui/res/tokenscripts/g_3_3_tyranid_warrior_trample.txt +++ b/forge-gui/res/tokenscripts/g_3_3_tyranid_warrior_trample.txt @@ -1,7 +1,7 @@ Name:Tyranid Warrior Token ManaCost:no cost -Types:Creature Tyranid Warrior Colors:green +Types:Creature Tyranid Warrior PT:3/3 K:Trample Oracle:Trample diff --git a/forge-gui/res/tokenscripts/g_5_4_snake.txt b/forge-gui/res/tokenscripts/g_5_4_snake.txt index 11905a44255..d7c49d4dc37 100644 --- a/forge-gui/res/tokenscripts/g_5_4_snake.txt +++ b/forge-gui/res/tokenscripts/g_5_4_snake.txt @@ -1,6 +1,6 @@ Name:Snake Token ManaCost:no cost -Types:Creature Snake Colors:green +Types:Creature Snake PT:5/4 Oracle: diff --git a/forge-gui/res/tokenscripts/g_x_x_elephant_resurgence.txt b/forge-gui/res/tokenscripts/g_x_x_elephant_resurgence.txt index f540fc3a56b..2b8c1a970e7 100644 --- a/forge-gui/res/tokenscripts/g_x_x_elephant_resurgence.txt +++ b/forge-gui/res/tokenscripts/g_x_x_elephant_resurgence.txt @@ -1,7 +1,7 @@ Name:Elephant Token ManaCost:no cost -Types:Creature Elephant Colors:green +Types:Creature Elephant PT:*/* S:Mode$ Continuous | SetPower$ ResurgenceX | SetToughness$ ResurgenceX | EffectZone$ Battlefield | CharacteristicDefining$ True | Description$ CARDNAME's power and toughness are each equal to the number of creature cards in its controller's graveyard. SVar:ResurgenceX:Count$TypeInYourYard.Creature diff --git a/forge-gui/res/tokenscripts/g_x_x_ooze.txt b/forge-gui/res/tokenscripts/g_x_x_ooze.txt index d567d747c7c..c70f4bdd86c 100644 --- a/forge-gui/res/tokenscripts/g_x_x_ooze.txt +++ b/forge-gui/res/tokenscripts/g_x_x_ooze.txt @@ -1,6 +1,6 @@ Name:Ooze Token ManaCost:no cost -Types:Creature Ooze Colors:green +Types:Creature Ooze PT:*/* Oracle: diff --git a/forge-gui/res/tokenscripts/g_x_x_ooze_gutter_grime.txt b/forge-gui/res/tokenscripts/g_x_x_ooze_gutter_grime.txt index dcd54e755aa..9f9fcafb04f 100644 --- a/forge-gui/res/tokenscripts/g_x_x_ooze_gutter_grime.txt +++ b/forge-gui/res/tokenscripts/g_x_x_ooze_gutter_grime.txt @@ -1,7 +1,7 @@ Name:Ooze Token ManaCost:no cost -Types:Creature Ooze Colors:green +Types:Creature Ooze PT:*/* S:Mode$ Continuous | SetPower$ GutterGrimePT | SetToughness$ GutterGrimePT | CharacteristicDefining$ True | Description$ This creature's power and toughness are each equal to the number of slime counters on Gutter Grime. SVar:GutterGrimePT:Remembered$CardCounters.SLIME diff --git a/forge-gui/res/tokenscripts/g_x_x_phyrexian_horror.txt b/forge-gui/res/tokenscripts/g_x_x_phyrexian_horror.txt index 6ff223f2f15..0797f397411 100644 --- a/forge-gui/res/tokenscripts/g_x_x_phyrexian_horror.txt +++ b/forge-gui/res/tokenscripts/g_x_x_phyrexian_horror.txt @@ -1,6 +1,6 @@ Name:Phyrexian Horror Token ManaCost:no cost -Types:Creature Phyrexian Horror Colors:green +Types:Creature Phyrexian Horror PT:*/* Oracle: diff --git a/forge-gui/res/tokenscripts/g_x_x_saproling_burst.txt b/forge-gui/res/tokenscripts/g_x_x_saproling_burst.txt index 381aac92e86..9bd2314b8de 100644 --- a/forge-gui/res/tokenscripts/g_x_x_saproling_burst.txt +++ b/forge-gui/res/tokenscripts/g_x_x_saproling_burst.txt @@ -1,7 +1,7 @@ Name:Saproling Token ManaCost:no cost -Types:Creature Saproling Colors:green +Types:Creature Saproling PT:*/* S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | SetPower$ TokenX | SetToughness$ TokenX | Description$ This creature's power and toughness are each equal to the number of fade counters on Saproling Burst. SVar:TokenX:Remembered$CardCounters.FADE diff --git a/forge-gui/res/tokenscripts/g_x_x_spirit.txt b/forge-gui/res/tokenscripts/g_x_x_spirit.txt index 6c816fa9f7c..ab4e41f1932 100644 --- a/forge-gui/res/tokenscripts/g_x_x_spirit.txt +++ b/forge-gui/res/tokenscripts/g_x_x_spirit.txt @@ -1,6 +1,6 @@ Name:Spirit Token ManaCost:no cost -Types:Creature Spirit Colors:green +Types:Creature Spirit PT:*/* Oracle: diff --git a/forge-gui/res/tokenscripts/g_x_x_treefolk.txt b/forge-gui/res/tokenscripts/g_x_x_treefolk.txt index 1a991e94fd1..5dc11a512f1 100644 --- a/forge-gui/res/tokenscripts/g_x_x_treefolk.txt +++ b/forge-gui/res/tokenscripts/g_x_x_treefolk.txt @@ -1,6 +1,6 @@ Name:Treefolk Token ManaCost:no cost -Types:Creature Treefolk Colors:green +Types:Creature Treefolk PT:*/* Oracle: diff --git a/forge-gui/res/tokenscripts/g_x_x_treefolk_reach_total_lands.txt b/forge-gui/res/tokenscripts/g_x_x_treefolk_reach_total_lands.txt index 46e60946d33..05288bc3730 100644 --- a/forge-gui/res/tokenscripts/g_x_x_treefolk_reach_total_lands.txt +++ b/forge-gui/res/tokenscripts/g_x_x_treefolk_reach_total_lands.txt @@ -1,7 +1,7 @@ Name:Treefolk Token ManaCost:no cost -Types:Creature Treefolk Colors:green +Types:Creature Treefolk PT:*/* K:Reach S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | SetPower$ X | SetToughness$ X | Description$ This creature's power and toughness are each equal to the number of lands you control. diff --git a/forge-gui/res/tokenscripts/g_x_x_treefolk_warrior_total_forests.txt b/forge-gui/res/tokenscripts/g_x_x_treefolk_warrior_total_forests.txt index 136c3e3133a..fedc56b6ecb 100644 --- a/forge-gui/res/tokenscripts/g_x_x_treefolk_warrior_total_forests.txt +++ b/forge-gui/res/tokenscripts/g_x_x_treefolk_warrior_total_forests.txt @@ -1,7 +1,7 @@ Name:Treefolk Warrior Token ManaCost:no cost -Types:Creature Treefolk Warrior Colors:green +Types:Creature Treefolk Warrior PT:*/* S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | SetPower$ X | SetToughness$ X | Description$ CARDNAME's power and toughness are each equal to the number of Forests you control. SVar:X:Count$Valid Forest.YouCtrl diff --git a/forge-gui/res/tokenscripts/g_x_y_ooze_types_graveyard.txt b/forge-gui/res/tokenscripts/g_x_y_ooze_types_graveyard.txt index dc6c64395f2..402c11a77af 100644 --- a/forge-gui/res/tokenscripts/g_x_y_ooze_types_graveyard.txt +++ b/forge-gui/res/tokenscripts/g_x_y_ooze_types_graveyard.txt @@ -1,7 +1,7 @@ Name:Ooze Token ManaCost:no cost -Types:Creature Ooze Colors:green +Types:Creature Ooze PT:*/*+1 S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | SetPower$ X | SetToughness$ Y | Description$ This creature's power is equal to the number of card types among cards in your graveyard and its toughness is equal to that number plus 1. SVar:X:Count$ValidGraveyard Card.YouOwn$CardTypes diff --git a/forge-gui/res/tokenscripts/gw_1_1_alien_insect_flying.txt b/forge-gui/res/tokenscripts/gw_1_1_alien_insect_flying.txt index 6e45edd962d..013cc7053f3 100644 --- a/forge-gui/res/tokenscripts/gw_1_1_alien_insect_flying.txt +++ b/forge-gui/res/tokenscripts/gw_1_1_alien_insect_flying.txt @@ -1,7 +1,7 @@ Name:Alien Insect Token ManaCost:no cost -Types:Creature Alien Insect Colors:green,white +Types:Creature Alien Insect PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/gw_1_1_citizen.txt b/forge-gui/res/tokenscripts/gw_1_1_citizen.txt index 760a60b4b40..a0efd66b731 100644 --- a/forge-gui/res/tokenscripts/gw_1_1_citizen.txt +++ b/forge-gui/res/tokenscripts/gw_1_1_citizen.txt @@ -1,6 +1,6 @@ Name:Citizen Token ManaCost:no cost -Types:Creature Citizen Colors:green,white +Types:Creature Citizen PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/gw_1_1_elf_warrior.txt b/forge-gui/res/tokenscripts/gw_1_1_elf_warrior.txt index 2d9ba3947d1..9bf41b80a44 100644 --- a/forge-gui/res/tokenscripts/gw_1_1_elf_warrior.txt +++ b/forge-gui/res/tokenscripts/gw_1_1_elf_warrior.txt @@ -1,6 +1,6 @@ Name:Elf Warrior Token ManaCost:no cost -Types:Creature Elf Warrior Colors:green,white +Types:Creature Elf Warrior PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/gw_1_1_human_soldier_training.txt b/forge-gui/res/tokenscripts/gw_1_1_human_soldier_training.txt index 834b540f625..1ef5bb4516f 100644 --- a/forge-gui/res/tokenscripts/gw_1_1_human_soldier_training.txt +++ b/forge-gui/res/tokenscripts/gw_1_1_human_soldier_training.txt @@ -1,7 +1,7 @@ Name:Human Soldier Token ManaCost:no cost -Types:Creature Human Soldier Colors:white,green +Types:Creature Human Soldier PT:1/1 K:Training Oracle:Training (Whenever this creature attacks with another creature with greater power, put a +1/+1 counter on this creature.) diff --git a/forge-gui/res/tokenscripts/gw_2_2_elf_knight_vigilance.txt b/forge-gui/res/tokenscripts/gw_2_2_elf_knight_vigilance.txt index 20ae2aa4c68..d1fe5a483d9 100644 --- a/forge-gui/res/tokenscripts/gw_2_2_elf_knight_vigilance.txt +++ b/forge-gui/res/tokenscripts/gw_2_2_elf_knight_vigilance.txt @@ -1,7 +1,7 @@ Name:Elf Knight Token ManaCost:no cost -Types:Creature Elf Knight Colors:white,green +Types:Creature Elf Knight PT:2/2 K:Vigilance Oracle:Vigilance diff --git a/forge-gui/res/tokenscripts/gw_3_3_phyrexian_hydra_lifelink.txt b/forge-gui/res/tokenscripts/gw_3_3_phyrexian_hydra_lifelink.txt index d0af145bbe3..9ec9766d67d 100644 --- a/forge-gui/res/tokenscripts/gw_3_3_phyrexian_hydra_lifelink.txt +++ b/forge-gui/res/tokenscripts/gw_3_3_phyrexian_hydra_lifelink.txt @@ -1,7 +1,7 @@ Name:Phyrexian Hydra Token ManaCost:no cost -Types:Creature Phyrexian Hydra Colors:white,green +Types:Creature Phyrexian Hydra PT:3/3 K:Lifelink Oracle:Lifelink diff --git a/forge-gui/res/tokenscripts/gw_3_3_phyrexian_hydra_reach.txt b/forge-gui/res/tokenscripts/gw_3_3_phyrexian_hydra_reach.txt index 842e44f3272..9fdc86ba6e3 100644 --- a/forge-gui/res/tokenscripts/gw_3_3_phyrexian_hydra_reach.txt +++ b/forge-gui/res/tokenscripts/gw_3_3_phyrexian_hydra_reach.txt @@ -1,7 +1,7 @@ Name:Phyrexian Hydra Token ManaCost:no cost -Types:Creature Phyrexian Hydra Colors:white,green +Types:Creature Phyrexian Hydra PT:3/3 K:Reach Oracle:Reach diff --git a/forge-gui/res/tokenscripts/gw_8_8_elemental_vigilance.txt b/forge-gui/res/tokenscripts/gw_8_8_elemental_vigilance.txt index baac697c3c7..11474555499 100644 --- a/forge-gui/res/tokenscripts/gw_8_8_elemental_vigilance.txt +++ b/forge-gui/res/tokenscripts/gw_8_8_elemental_vigilance.txt @@ -1,7 +1,7 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:green,white +Types:Creature Elemental PT:8/8 K:Vigilance Oracle:Vigilance diff --git a/forge-gui/res/tokenscripts/gw_x_x_elemental_total_creatures.txt b/forge-gui/res/tokenscripts/gw_x_x_elemental_total_creatures.txt index 87f6bec3e66..b35c1a8cf3d 100644 --- a/forge-gui/res/tokenscripts/gw_x_x_elemental_total_creatures.txt +++ b/forge-gui/res/tokenscripts/gw_x_x_elemental_total_creatures.txt @@ -1,7 +1,7 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:green,white +Types:Creature Elemental PT:*/* S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | SetPower$ TokenX | SetToughness$ TokenX | Description$ CARDNAME's power and toughness are each equal to the number of creatures you control. SVar:TokenX:Count$Valid Creature.YouCtrl diff --git a/forge-gui/res/tokenscripts/hornet.txt b/forge-gui/res/tokenscripts/hornet.txt index deb8b87414e..5da7fbe8ffa 100644 --- a/forge-gui/res/tokenscripts/hornet.txt +++ b/forge-gui/res/tokenscripts/hornet.txt @@ -1,7 +1,7 @@ Name:Hornet ManaCost:no cost -Types:Artifact Creature Insect Colors:colorless +Types:Artifact Creature Insect PT:1/1 K:Flying K:Haste diff --git a/forge-gui/res/tokenscripts/icingdeath_frost_tongue.txt b/forge-gui/res/tokenscripts/icingdeath_frost_tongue.txt index 5bf6a257a0e..5ead85e3c8a 100644 --- a/forge-gui/res/tokenscripts/icingdeath_frost_tongue.txt +++ b/forge-gui/res/tokenscripts/icingdeath_frost_tongue.txt @@ -1,7 +1,7 @@ Name:Icingdeath, Frost Tongue ManaCost:no cost -Types:Legendary Artifact Equipment Colors:white +Types:Legendary Artifact Equipment S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddPower$ 2 | AddToughness$ 0 | Description$ Equipped creature gets +2/+0. T:Mode$ Attacks | ValidCard$ Card.AttachedBy | Execute$ TrigTap | TriggerDescription$ Whenever equipped creature attacks, tap target creature defending player controls. SVar:TrigTap:DB$ Tap | ValidTgts$ Creature.ControlledBy TriggeredDefendingPlayer | TgtPrompt$ Select target creature defending player controls diff --git a/forge-gui/res/tokenscripts/icy_manalith.txt b/forge-gui/res/tokenscripts/icy_manalith.txt index ba8c74c14ae..ee955d78115 100644 --- a/forge-gui/res/tokenscripts/icy_manalith.txt +++ b/forge-gui/res/tokenscripts/icy_manalith.txt @@ -1,6 +1,6 @@ Name:Icy Manalith ManaCost:no cost -Types:Snow Artifact Colors:colorless +Types:Snow Artifact A:AB$ Mana | Cost$ T | Produced$ Any | SpellDescription$ Add one mana of any color. Oracle:{T}: Add one mana of any color. diff --git a/forge-gui/res/tokenscripts/kaldra.txt b/forge-gui/res/tokenscripts/kaldra.txt index 6f42ea096fc..da9fd1025dd 100644 --- a/forge-gui/res/tokenscripts/kaldra.txt +++ b/forge-gui/res/tokenscripts/kaldra.txt @@ -1,5 +1,5 @@ Name:Kaldra ManaCost:no cost -PT:4/4 Types:Legendary Creature Avatar +PT:4/4 Oracle: diff --git a/forge-gui/res/tokenscripts/kelp.txt b/forge-gui/res/tokenscripts/kelp.txt index d38afd59de4..aded6542c4b 100644 --- a/forge-gui/res/tokenscripts/kelp.txt +++ b/forge-gui/res/tokenscripts/kelp.txt @@ -1,7 +1,7 @@ Name:Kelp ManaCost:no cost -Types:Creature Plant Wall Colors:blue +Types:Creature Plant Wall PT:0/1 K:Defender Oracle:Defender diff --git a/forge-gui/res/tokenscripts/kobolds_of_kher_keep.txt b/forge-gui/res/tokenscripts/kobolds_of_kher_keep.txt index 97d8c451dfe..a04f26c6deb 100644 --- a/forge-gui/res/tokenscripts/kobolds_of_kher_keep.txt +++ b/forge-gui/res/tokenscripts/kobolds_of_kher_keep.txt @@ -1,6 +1,6 @@ Name:Kobolds of Kher Keep ManaCost:no cost Colors:red -PT:0/1 Types:Creature Kobold +PT:0/1 Oracle: diff --git a/forge-gui/res/tokenscripts/komas_coil.txt b/forge-gui/res/tokenscripts/komas_coil.txt index 7818f2bac65..1e6ad39b06b 100644 --- a/forge-gui/res/tokenscripts/komas_coil.txt +++ b/forge-gui/res/tokenscripts/komas_coil.txt @@ -1,6 +1,6 @@ Name:Koma's Coil ManaCost:no cost +Colors:blue Types:Creature Serpent PT:3/3 -Colors:blue Oracle: diff --git a/forge-gui/res/tokenscripts/lightning_rager.txt b/forge-gui/res/tokenscripts/lightning_rager.txt index 97e39a89e1d..d26f050a905 100644 --- a/forge-gui/res/tokenscripts/lightning_rager.txt +++ b/forge-gui/res/tokenscripts/lightning_rager.txt @@ -1,7 +1,7 @@ Name:Lightning Rager ManaCost:no cost -Types:Creature Elemental Colors:red +Types:Creature Elemental PT:5/1 K:Trample K:Haste diff --git a/forge-gui/res/tokenscripts/llanowar_elves.txt b/forge-gui/res/tokenscripts/llanowar_elves.txt index c83ba004d7c..509be0bf2c9 100644 --- a/forge-gui/res/tokenscripts/llanowar_elves.txt +++ b/forge-gui/res/tokenscripts/llanowar_elves.txt @@ -1,7 +1,7 @@ Name:Llanowar Elves ManaCost:no cost -Types:Creature Elf Druid Colors:green +Types:Creature Elf Druid PT:1/1 A:AB$ Mana | Cost$ T | Produced$ G | SpellDescription$ Add {G}. Oracle:{T}: Add {G}. diff --git a/forge-gui/res/tokenscripts/mowu.txt b/forge-gui/res/tokenscripts/mowu.txt index 9019ae80f57..d00ffe29360 100644 --- a/forge-gui/res/tokenscripts/mowu.txt +++ b/forge-gui/res/tokenscripts/mowu.txt @@ -1,6 +1,6 @@ Name:Mowu ManaCost:no cost -Types:Legendary Creature Dog Colors:green +Types:Legendary Creature Dog PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/ornithopter.txt b/forge-gui/res/tokenscripts/ornithopter.txt index 4229458063e..fb235f67651 100644 --- a/forge-gui/res/tokenscripts/ornithopter.txt +++ b/forge-gui/res/tokenscripts/ornithopter.txt @@ -1,6 +1,6 @@ Name:Ornithopter ManaCost:no cost -PT:0/2 Types:Artifact Creature Thopter +PT:0/2 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/plaguebearer_of_nurgle.txt b/forge-gui/res/tokenscripts/plaguebearer_of_nurgle.txt index e24d9ffdc70..dcb2dccb4b9 100644 --- a/forge-gui/res/tokenscripts/plaguebearer_of_nurgle.txt +++ b/forge-gui/res/tokenscripts/plaguebearer_of_nurgle.txt @@ -1,6 +1,6 @@ Name:Plaguebearer of Nurgle ManaCost:no cost -Types:Creature Demon Colors:black +Types:Creature Demon PT:1/3 Oracle: diff --git a/forge-gui/res/tokenscripts/r_0_0_a_gremlin.txt b/forge-gui/res/tokenscripts/r_0_0_a_gremlin.txt index 6326ed2862f..61451fd224a 100644 --- a/forge-gui/res/tokenscripts/r_0_0_a_gremlin.txt +++ b/forge-gui/res/tokenscripts/r_0_0_a_gremlin.txt @@ -1,6 +1,6 @@ Name:Gremlin Token ManaCost:no cost -PT:0/0 Colors:red Types:Artifact Creature Gremlin +PT:0/0 Oracle: diff --git a/forge-gui/res/tokenscripts/r_0_1_elemental_rekindling_phoenix.txt b/forge-gui/res/tokenscripts/r_0_1_elemental_rekindling_phoenix.txt index f0a3941c29e..77c46ad772e 100644 --- a/forge-gui/res/tokenscripts/r_0_1_elemental_rekindling_phoenix.txt +++ b/forge-gui/res/tokenscripts/r_0_1_elemental_rekindling_phoenix.txt @@ -1,7 +1,7 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:red +Types:Creature Elemental PT:0/1 T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ RekindlingPhoenixTrigSac | TriggerDescription$ At the beginning of your upkeep, sacrifice this creature and return target card named Rekindling Phoenix from your graveyard to the battlefield. It gains haste until end of turn. SVar:RekindlingPhoenixTrigSac:DB$ Sacrifice | SacValid$ Self | SubAbility$ RekindlingPhoenixDBChangeZone diff --git a/forge-gui/res/tokenscripts/r_0_2_dragon_egg_defender_hatches_dragon.txt b/forge-gui/res/tokenscripts/r_0_2_dragon_egg_defender_hatches_dragon.txt index 28668a2f50a..d7826dfa0ec 100644 --- a/forge-gui/res/tokenscripts/r_0_2_dragon_egg_defender_hatches_dragon.txt +++ b/forge-gui/res/tokenscripts/r_0_2_dragon_egg_defender_hatches_dragon.txt @@ -1,7 +1,7 @@ Name:Dragon Egg Token ManaCost:no cost -Types:Creature Dragon Egg Colors:red +Types:Creature Dragon Egg PT:0/2 K:Defender T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME dies, create a 2/2 red Dragon creature token with flying. It has "{R}: This creature gets +1/+0 until end of turn". diff --git a/forge-gui/res/tokenscripts/r_1_1_balloon_flying.txt b/forge-gui/res/tokenscripts/r_1_1_balloon_flying.txt index 6e93f167640..85471aa3f84 100644 --- a/forge-gui/res/tokenscripts/r_1_1_balloon_flying.txt +++ b/forge-gui/res/tokenscripts/r_1_1_balloon_flying.txt @@ -1,7 +1,7 @@ Name:Balloon Token ManaCost:no cost -Types:Creature Balloon Colors:red +Types:Creature Balloon PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/r_1_1_brainiac.txt b/forge-gui/res/tokenscripts/r_1_1_brainiac.txt index 73f10edb691..050ef4b669e 100644 --- a/forge-gui/res/tokenscripts/r_1_1_brainiac.txt +++ b/forge-gui/res/tokenscripts/r_1_1_brainiac.txt @@ -1,6 +1,6 @@ Name:Brainiac Token ManaCost:no cost -Types:Creature Brainiac Colors:red +Types:Creature Brainiac PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/r_1_1_devil_burn.txt b/forge-gui/res/tokenscripts/r_1_1_devil_burn.txt index 57c66513beb..66ec642786d 100644 --- a/forge-gui/res/tokenscripts/r_1_1_devil_burn.txt +++ b/forge-gui/res/tokenscripts/r_1_1_devil_burn.txt @@ -1,7 +1,7 @@ Name:Devil Token ManaCost:no cost -Types:Creature Devil Colors:red +Types:Creature Devil PT:1/1 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ DevilTrigDamage | TriggerDescription$ When this creature dies, it deals 1 damage to any target. SVar:DevilTrigDamage:DB$ DealDamage | ValidTgts$ Any | NumDmg$ 1 diff --git a/forge-gui/res/tokenscripts/r_1_1_dinosaur_haste.txt b/forge-gui/res/tokenscripts/r_1_1_dinosaur_haste.txt index d5174806bd3..c8b01210ca2 100644 --- a/forge-gui/res/tokenscripts/r_1_1_dinosaur_haste.txt +++ b/forge-gui/res/tokenscripts/r_1_1_dinosaur_haste.txt @@ -1,7 +1,7 @@ Name:Dinosaur Token ManaCost:no cost -Types:Creature Dinosaur Colors:red +Types:Creature Dinosaur PT:1/1 K:Haste Oracle:Haste diff --git a/forge-gui/res/tokenscripts/r_1_1_dwarf.txt b/forge-gui/res/tokenscripts/r_1_1_dwarf.txt index f28138dbcf3..c44f60340f9 100644 --- a/forge-gui/res/tokenscripts/r_1_1_dwarf.txt +++ b/forge-gui/res/tokenscripts/r_1_1_dwarf.txt @@ -1,6 +1,6 @@ Name:Dwarf Token ManaCost:no cost -Types:Creature Dwarf Colors:red +Types:Creature Dwarf PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/r_1_1_elemental.txt b/forge-gui/res/tokenscripts/r_1_1_elemental.txt index 8509bdaf955..7e6b76410f1 100644 --- a/forge-gui/res/tokenscripts/r_1_1_elemental.txt +++ b/forge-gui/res/tokenscripts/r_1_1_elemental.txt @@ -1,6 +1,6 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:red +Types:Creature Elemental PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/r_1_1_elemental_cat_haste.txt b/forge-gui/res/tokenscripts/r_1_1_elemental_cat_haste.txt index bbb4bb8f3fb..ead22ba71f2 100644 --- a/forge-gui/res/tokenscripts/r_1_1_elemental_cat_haste.txt +++ b/forge-gui/res/tokenscripts/r_1_1_elemental_cat_haste.txt @@ -1,7 +1,7 @@ Name:Elemental Cat Token ManaCost:no cost -Types:Creature Elemental Cat Colors:red +Types:Creature Elemental Cat PT:1/1 K:Haste Oracle:Haste diff --git a/forge-gui/res/tokenscripts/r_1_1_elemental_haste.txt b/forge-gui/res/tokenscripts/r_1_1_elemental_haste.txt index 37ff90c6f46..8182283f3c1 100644 --- a/forge-gui/res/tokenscripts/r_1_1_elemental_haste.txt +++ b/forge-gui/res/tokenscripts/r_1_1_elemental_haste.txt @@ -1,7 +1,7 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:red +Types:Creature Elemental PT:1/1 K:Haste Oracle:Haste diff --git a/forge-gui/res/tokenscripts/r_1_1_elemental_ping.txt b/forge-gui/res/tokenscripts/r_1_1_elemental_ping.txt index b04d2e8834a..288d7e287a8 100644 --- a/forge-gui/res/tokenscripts/r_1_1_elemental_ping.txt +++ b/forge-gui/res/tokenscripts/r_1_1_elemental_ping.txt @@ -1,7 +1,7 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:red +Types:Creature Elemental PT:1/1 T:Mode$ Taps | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigDealDamage | TriggerDescription$ Whenever this creature becomes tapped, it deals 1 damage to target player. SVar:TrigDealDamage:DB$ DealDamage | ValidTgts$ Player | NumDmg$ 1 diff --git a/forge-gui/res/tokenscripts/r_1_1_employee.txt b/forge-gui/res/tokenscripts/r_1_1_employee.txt index e30f62b55ce..7855f987d66 100644 --- a/forge-gui/res/tokenscripts/r_1_1_employee.txt +++ b/forge-gui/res/tokenscripts/r_1_1_employee.txt @@ -1,6 +1,6 @@ Name:Employee Token ManaCost:no cost -Types:Creature Employee Colors:red +Types:Creature Employee PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/r_1_1_goblin.txt b/forge-gui/res/tokenscripts/r_1_1_goblin.txt index 5d50b83b61f..4d7a3c1ceca 100644 --- a/forge-gui/res/tokenscripts/r_1_1_goblin.txt +++ b/forge-gui/res/tokenscripts/r_1_1_goblin.txt @@ -1,6 +1,6 @@ Name:Goblin Token ManaCost:no cost -Types:Creature Goblin Colors:red +Types:Creature Goblin PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/r_1_1_goblin_all_attack.txt b/forge-gui/res/tokenscripts/r_1_1_goblin_all_attack.txt index 20a6a38efc7..e009d5eb6e7 100644 --- a/forge-gui/res/tokenscripts/r_1_1_goblin_all_attack.txt +++ b/forge-gui/res/tokenscripts/r_1_1_goblin_all_attack.txt @@ -1,7 +1,7 @@ Name:Goblin Token ManaCost:no cost -Types:Creature Goblin Colors:red +Types:Creature Goblin PT:1/1 S:Mode$ MustAttack | ValidCreature$ Creature.YouCtrl | Description$ Creatures you control attack each combat if able. Oracle:Creatures you control attack each combat if able. diff --git a/forge-gui/res/tokenscripts/r_1_1_goblin_haste.txt b/forge-gui/res/tokenscripts/r_1_1_goblin_haste.txt index 6b92f749fb0..761d69188c6 100644 --- a/forge-gui/res/tokenscripts/r_1_1_goblin_haste.txt +++ b/forge-gui/res/tokenscripts/r_1_1_goblin_haste.txt @@ -1,7 +1,7 @@ Name:Goblin Token ManaCost:no cost -Types:Creature Goblin Colors:red +Types:Creature Goblin PT:1/1 K:Haste Oracle:Haste diff --git a/forge-gui/res/tokenscripts/r_1_1_goblin_noblock.txt b/forge-gui/res/tokenscripts/r_1_1_goblin_noblock.txt index 2bb0fca11dc..e93dce5fc26 100644 --- a/forge-gui/res/tokenscripts/r_1_1_goblin_noblock.txt +++ b/forge-gui/res/tokenscripts/r_1_1_goblin_noblock.txt @@ -1,7 +1,7 @@ Name:Goblin Token ManaCost:no cost -Types:Creature Goblin Colors:red +Types:Creature Goblin PT:1/1 S:Mode$ CantBlockBy | ValidBlocker$ Creature.Self | Description$ CARDNAME can't block. Oracle:This creature can't block. diff --git a/forge-gui/res/tokenscripts/r_1_1_goblin_scout_mountainwalk.txt b/forge-gui/res/tokenscripts/r_1_1_goblin_scout_mountainwalk.txt index 40b22ee1dd9..b6a56eb3606 100644 --- a/forge-gui/res/tokenscripts/r_1_1_goblin_scout_mountainwalk.txt +++ b/forge-gui/res/tokenscripts/r_1_1_goblin_scout_mountainwalk.txt @@ -1,7 +1,7 @@ Name:Goblin Scout Token ManaCost:no cost -Types:Creature Goblin Scout Colors:red +Types:Creature Goblin Scout PT:1/1 K:Landwalk:Mountain Oracle:Mountainwalk diff --git a/forge-gui/res/tokenscripts/r_1_1_goblin_wizard_prowess.txt b/forge-gui/res/tokenscripts/r_1_1_goblin_wizard_prowess.txt index 11c7f1bebf5..af9681a01de 100644 --- a/forge-gui/res/tokenscripts/r_1_1_goblin_wizard_prowess.txt +++ b/forge-gui/res/tokenscripts/r_1_1_goblin_wizard_prowess.txt @@ -1,7 +1,7 @@ Name:Goblin Wizard Token ManaCost:no cost -Types:Creature Goblin Wizard Colors:red +Types:Creature Goblin Wizard PT:1/1 K:Prowess Oracle:Prowess diff --git a/forge-gui/res/tokenscripts/r_1_1_gremlin.txt b/forge-gui/res/tokenscripts/r_1_1_gremlin.txt index b4711354c11..cc065bb5219 100644 --- a/forge-gui/res/tokenscripts/r_1_1_gremlin.txt +++ b/forge-gui/res/tokenscripts/r_1_1_gremlin.txt @@ -1,6 +1,6 @@ Name:Gremlin Token ManaCost:no cost -Types:Creature Gremlin Colors:red +Types:Creature Gremlin PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/r_1_1_hamster.txt b/forge-gui/res/tokenscripts/r_1_1_hamster.txt index 02789876aff..27c76fe58c5 100644 --- a/forge-gui/res/tokenscripts/r_1_1_hamster.txt +++ b/forge-gui/res/tokenscripts/r_1_1_hamster.txt @@ -1,6 +1,6 @@ Name:Hamster Token ManaCost:no cost -Types:Creature Hamster Colors:red +Types:Creature Hamster PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/r_1_1_human.txt b/forge-gui/res/tokenscripts/r_1_1_human.txt index 82924738a0a..35c30c8b3fc 100644 --- a/forge-gui/res/tokenscripts/r_1_1_human.txt +++ b/forge-gui/res/tokenscripts/r_1_1_human.txt @@ -1,6 +1,6 @@ Name:Human Token ManaCost:no cost -Types:Creature Human Colors:red +Types:Creature Human PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/r_1_1_human_haste.txt b/forge-gui/res/tokenscripts/r_1_1_human_haste.txt index 0398746c2b9..242bdb18ce9 100644 --- a/forge-gui/res/tokenscripts/r_1_1_human_haste.txt +++ b/forge-gui/res/tokenscripts/r_1_1_human_haste.txt @@ -1,7 +1,7 @@ Name:Human Token ManaCost:no cost -Types:Creature Human Colors:red +Types:Creature Human PT:1/1 K:Haste Oracle:Haste diff --git a/forge-gui/res/tokenscripts/r_1_1_mercenary_tappump.txt b/forge-gui/res/tokenscripts/r_1_1_mercenary_tappump.txt index 85a7dec78c8..b2c28903d51 100644 --- a/forge-gui/res/tokenscripts/r_1_1_mercenary_tappump.txt +++ b/forge-gui/res/tokenscripts/r_1_1_mercenary_tappump.txt @@ -1,7 +1,7 @@ Name:Mercenary Token ManaCost:no cost -Types:Creature Mercenary Colors:red +Types:Creature Mercenary PT:1/1 A:AB$ Pump | Cost$ T | NumAtt$ 1 | ValidTgts$ Creature.YouCtrl | SorcerySpeed$ True | TgtPrompt$ Select target creature you control | SpellDescription$ Target creature you control gets +1/+0 until end of turn. Activate only as a sorcery. Oracle:{T}: Target creature you control gets +1/+0 until end of turn. Activate only as a sorcery. diff --git a/forge-gui/res/tokenscripts/r_1_1_monk_prowess.txt b/forge-gui/res/tokenscripts/r_1_1_monk_prowess.txt index 2ed6a5b1108..0285f369c9a 100644 --- a/forge-gui/res/tokenscripts/r_1_1_monk_prowess.txt +++ b/forge-gui/res/tokenscripts/r_1_1_monk_prowess.txt @@ -1,7 +1,7 @@ Name:Monk Token ManaCost:no cost -Types:Creature Monk Colors:red +Types:Creature Monk PT:1/1 K:Prowess Oracle:Prowess (Whenever you cast a noncreature spell, this creature gets +1/+1 until end of turn.) diff --git a/forge-gui/res/tokenscripts/r_1_1_phyrexian_goblin.txt b/forge-gui/res/tokenscripts/r_1_1_phyrexian_goblin.txt index 750a6a17022..f7b55bed371 100644 --- a/forge-gui/res/tokenscripts/r_1_1_phyrexian_goblin.txt +++ b/forge-gui/res/tokenscripts/r_1_1_phyrexian_goblin.txt @@ -1,6 +1,6 @@ Name:Phyrexian Goblin Token ManaCost:no cost -Types:Creature Phyrexian Goblin Colors:red +Types:Creature Phyrexian Goblin PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/r_1_1_phyrexian_goblin_haste.txt b/forge-gui/res/tokenscripts/r_1_1_phyrexian_goblin_haste.txt index 59dec950af0..b53bfdb5da2 100644 --- a/forge-gui/res/tokenscripts/r_1_1_phyrexian_goblin_haste.txt +++ b/forge-gui/res/tokenscripts/r_1_1_phyrexian_goblin_haste.txt @@ -1,7 +1,7 @@ Name:Phyrexian Goblin Token ManaCost:no cost -Types:Creature Phyrexian Goblin Colors:red +Types:Creature Phyrexian Goblin PT:1/1 K:Haste Oracle:Haste diff --git a/forge-gui/res/tokenscripts/r_1_1_pirate_menace_haste.txt b/forge-gui/res/tokenscripts/r_1_1_pirate_menace_haste.txt index a5dfffd275c..0fa316b2056 100644 --- a/forge-gui/res/tokenscripts/r_1_1_pirate_menace_haste.txt +++ b/forge-gui/res/tokenscripts/r_1_1_pirate_menace_haste.txt @@ -1,7 +1,7 @@ Name:Pirate Token ManaCost:no cost -Types:Creature Pirate Colors:red +Types:Creature Pirate PT:1/1 K:Menace K:Haste diff --git a/forge-gui/res/tokenscripts/r_1_1_pirate_noblock_all_attack.txt b/forge-gui/res/tokenscripts/r_1_1_pirate_noblock_all_attack.txt index 9f91d686ef7..83fb3108253 100644 --- a/forge-gui/res/tokenscripts/r_1_1_pirate_noblock_all_attack.txt +++ b/forge-gui/res/tokenscripts/r_1_1_pirate_noblock_all_attack.txt @@ -1,7 +1,7 @@ Name:Pirate Token ManaCost:no cost -Types:Creature Pirate Colors:red +Types:Creature Pirate PT:1/1 S:Mode$ CantBlockBy | ValidBlocker$ Creature.Self | Description$ CARDNAME can't block. S:Mode$ MustAttack | ValidCreature$ Creature.YouCtrl | Description$ Creatures you control attack each combat if able. diff --git a/forge-gui/res/tokenscripts/r_1_1_satyr_noblock.txt b/forge-gui/res/tokenscripts/r_1_1_satyr_noblock.txt index 2a9daf4f9ce..7bf663ac079 100644 --- a/forge-gui/res/tokenscripts/r_1_1_satyr_noblock.txt +++ b/forge-gui/res/tokenscripts/r_1_1_satyr_noblock.txt @@ -1,7 +1,7 @@ Name:Satyr Token ManaCost:no cost -Types:Creature Satyr Colors:red +Types:Creature Satyr PT:1/1 S:Mode$ CantBlockBy | ValidBlocker$ Creature.Self | Description$ CARDNAME can't block. Oracle:This creature can't block. diff --git a/forge-gui/res/tokenscripts/r_1_1_soldier_haste.txt b/forge-gui/res/tokenscripts/r_1_1_soldier_haste.txt index 80098aefb6c..4804a4bea76 100644 --- a/forge-gui/res/tokenscripts/r_1_1_soldier_haste.txt +++ b/forge-gui/res/tokenscripts/r_1_1_soldier_haste.txt @@ -1,7 +1,7 @@ Name:Soldier Token ManaCost:no cost -Types:Creature Soldier Colors:red +Types:Creature Soldier PT:1/1 K:Haste Oracle:Haste diff --git a/forge-gui/res/tokenscripts/r_1_1_survivor.txt b/forge-gui/res/tokenscripts/r_1_1_survivor.txt index 154326515e0..b549425302a 100644 --- a/forge-gui/res/tokenscripts/r_1_1_survivor.txt +++ b/forge-gui/res/tokenscripts/r_1_1_survivor.txt @@ -1,6 +1,6 @@ Name:Survivor Token ManaCost:no cost -Types:Creature Survivor Colors:red +Types:Creature Survivor PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/r_1_1_warrior.txt b/forge-gui/res/tokenscripts/r_1_1_warrior.txt index 16115010784..ee2bd9afe2b 100644 --- a/forge-gui/res/tokenscripts/r_1_1_warrior.txt +++ b/forge-gui/res/tokenscripts/r_1_1_warrior.txt @@ -1,6 +1,6 @@ Name:Warrior Token ManaCost:no cost -Types:Creature Warrior Colors:red +Types:Creature Warrior PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/r_1_1_wizard_mana_restrict.txt b/forge-gui/res/tokenscripts/r_1_1_wizard_mana_restrict.txt index 91152772677..d1e31a53569 100644 --- a/forge-gui/res/tokenscripts/r_1_1_wizard_mana_restrict.txt +++ b/forge-gui/res/tokenscripts/r_1_1_wizard_mana_restrict.txt @@ -1,7 +1,7 @@ Name:Wizard Token ManaCost:no cost -Types:Creature Wizard Colors:red +Types:Creature Wizard PT:1/1 A:AB$ Mana | Cost$ T | Produced$ R | RestrictValid$ Spell.Planeswalker | SpellDescription$ Add {R}. Spend this mana only to cast a planeswalker spell. Oracle:{T}: Add {R}. Spend this mana only to cast a planeswalker spell. diff --git a/forge-gui/res/tokenscripts/r_2_1_dwarf_berserker.txt b/forge-gui/res/tokenscripts/r_2_1_dwarf_berserker.txt index 97ef32476cf..fe09c433117 100644 --- a/forge-gui/res/tokenscripts/r_2_1_dwarf_berserker.txt +++ b/forge-gui/res/tokenscripts/r_2_1_dwarf_berserker.txt @@ -1,6 +1,6 @@ Name:Dwarf Berserker Token ManaCost:no cost -Types:Creature Dwarf Berserker Colors:red +Types:Creature Dwarf Berserker PT:2/1 Oracle: diff --git a/forge-gui/res/tokenscripts/r_2_1_goblin_haste.txt b/forge-gui/res/tokenscripts/r_2_1_goblin_haste.txt index 233f397490a..3df1290d5dc 100644 --- a/forge-gui/res/tokenscripts/r_2_1_goblin_haste.txt +++ b/forge-gui/res/tokenscripts/r_2_1_goblin_haste.txt @@ -1,7 +1,7 @@ Name:Goblin Token ManaCost:no cost -Types:Creature Goblin Colors:red +Types:Creature Goblin PT:2/1 K:Haste Oracle:Haste diff --git a/forge-gui/res/tokenscripts/r_2_1_human_wizard.txt b/forge-gui/res/tokenscripts/r_2_1_human_wizard.txt index d393574edc6..5be61e57cd4 100644 --- a/forge-gui/res/tokenscripts/r_2_1_human_wizard.txt +++ b/forge-gui/res/tokenscripts/r_2_1_human_wizard.txt @@ -1,6 +1,6 @@ Name:Human Wizard Token ManaCost:no cost -Types:Creature Human Wizard Colors:red +Types:Creature Human Wizard PT:2/1 Oracle: diff --git a/forge-gui/res/tokenscripts/r_2_2_alien_warrior.txt b/forge-gui/res/tokenscripts/r_2_2_alien_warrior.txt index 4305ee3dc95..5e5646cac4a 100644 --- a/forge-gui/res/tokenscripts/r_2_2_alien_warrior.txt +++ b/forge-gui/res/tokenscripts/r_2_2_alien_warrior.txt @@ -1,6 +1,6 @@ Name:Alien Warrior Token ManaCost:no cost -Types:Creature Alien Warrior Colors:red +Types:Creature Alien Warrior PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/r_2_2_dragon_flying_firebreathing.txt b/forge-gui/res/tokenscripts/r_2_2_dragon_flying_firebreathing.txt index fe25764217c..688879b0365 100644 --- a/forge-gui/res/tokenscripts/r_2_2_dragon_flying_firebreathing.txt +++ b/forge-gui/res/tokenscripts/r_2_2_dragon_flying_firebreathing.txt @@ -1,7 +1,7 @@ Name:Dragon Token ManaCost:no cost -Types:Creature Dragon Colors:red +Types:Creature Dragon PT:2/2 K:Flying A:AB$ Pump | Cost$ R | Defined$ Self | NumAtt$ +1 | SpellDescription$ CARDNAME gets +1/+0 until end of turn. diff --git a/forge-gui/res/tokenscripts/r_2_2_goblin_shaman_treasure.txt b/forge-gui/res/tokenscripts/r_2_2_goblin_shaman_treasure.txt index 7146956f028..95f497ff7f5 100644 --- a/forge-gui/res/tokenscripts/r_2_2_goblin_shaman_treasure.txt +++ b/forge-gui/res/tokenscripts/r_2_2_goblin_shaman_treasure.txt @@ -1,7 +1,7 @@ Name:Goblin Shaman Token ManaCost:no cost -Types:Creature Goblin Shaman Colors:red +Types:Creature Goblin Shaman PT:2/2 T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ Whenever this creature attacks, create a Treasure token. SVar:TrigToken:DB$ Token | TokenScript$ c_a_treasure_sac diff --git a/forge-gui/res/tokenscripts/r_2_2_gremlin.txt b/forge-gui/res/tokenscripts/r_2_2_gremlin.txt index bd05e347fb8..e85fbcc8ba1 100644 --- a/forge-gui/res/tokenscripts/r_2_2_gremlin.txt +++ b/forge-gui/res/tokenscripts/r_2_2_gremlin.txt @@ -1,6 +1,6 @@ Name:Gremlin Token ManaCost:no cost -PT:2/2 Colors:red Types:Creature Gremlin +PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/r_2_2_human_knight_trample_haste.txt b/forge-gui/res/tokenscripts/r_2_2_human_knight_trample_haste.txt index 970471794ba..862df458fd0 100644 --- a/forge-gui/res/tokenscripts/r_2_2_human_knight_trample_haste.txt +++ b/forge-gui/res/tokenscripts/r_2_2_human_knight_trample_haste.txt @@ -1,7 +1,7 @@ Name:Human Knight Token ManaCost:no cost -Types:Creature Human Knight Colors:red +Types:Creature Human Knight PT:2/2 K:Trample K:Haste diff --git a/forge-gui/res/tokenscripts/r_2_2_imp_burn_opp.txt b/forge-gui/res/tokenscripts/r_2_2_imp_burn_opp.txt index 5372b62878a..216a54edc19 100644 --- a/forge-gui/res/tokenscripts/r_2_2_imp_burn_opp.txt +++ b/forge-gui/res/tokenscripts/r_2_2_imp_burn_opp.txt @@ -1,7 +1,7 @@ Name:Imp Token ManaCost:no cost -Types:Creature Imp Colors:red +Types:Creature Imp PT:2/2 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ ImpTrigDamage | TriggerDescription$ When this creature dies, it deals 2 damage to each opponent. SVar:ImpTrigDamage:DB$ DealDamage | Defined$ Opponent | NumDmg$ 2 diff --git a/forge-gui/res/tokenscripts/r_2_2_rebel.txt b/forge-gui/res/tokenscripts/r_2_2_rebel.txt index 5e36f0f18dd..395745c2dc9 100644 --- a/forge-gui/res/tokenscripts/r_2_2_rebel.txt +++ b/forge-gui/res/tokenscripts/r_2_2_rebel.txt @@ -1,6 +1,6 @@ Name:Rebel Token ManaCost:no cost -PT:2/2 Colors:red Types:Creature Rebel +PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/r_2_3_demon_berserker_menace.txt b/forge-gui/res/tokenscripts/r_2_3_demon_berserker_menace.txt index 02fe639f443..431a0b2c7e3 100644 --- a/forge-gui/res/tokenscripts/r_2_3_demon_berserker_menace.txt +++ b/forge-gui/res/tokenscripts/r_2_3_demon_berserker_menace.txt @@ -1,7 +1,7 @@ Name:Demon Berserker Token ManaCost:no cost -Types:Creature Demon Berserker Colors:red +Types:Creature Demon Berserker PT:2/3 K:Menace Oracle:Menace diff --git a/forge-gui/res/tokenscripts/r_2_3_minotaur.txt b/forge-gui/res/tokenscripts/r_2_3_minotaur.txt index d8d39d76a25..ad448d59a38 100644 --- a/forge-gui/res/tokenscripts/r_2_3_minotaur.txt +++ b/forge-gui/res/tokenscripts/r_2_3_minotaur.txt @@ -1,6 +1,6 @@ Name:Minotaur Token ManaCost:no cost -Types:Creature Minotaur Colors:red +Types:Creature Minotaur PT:2/3 Oracle: diff --git a/forge-gui/res/tokenscripts/r_2_3_minotaur_haste.txt b/forge-gui/res/tokenscripts/r_2_3_minotaur_haste.txt index d8505805b9b..925cee25234 100644 --- a/forge-gui/res/tokenscripts/r_2_3_minotaur_haste.txt +++ b/forge-gui/res/tokenscripts/r_2_3_minotaur_haste.txt @@ -1,7 +1,7 @@ Name:Minotaur Token ManaCost:no cost -Types:Creature Minotaur Colors:red +Types:Creature Minotaur PT:2/3 K:Haste Oracle:Haste diff --git a/forge-gui/res/tokenscripts/r_3_1_a_construct_haste.txt b/forge-gui/res/tokenscripts/r_3_1_a_construct_haste.txt index 6d46bc9fd5f..08c9ed534fe 100644 --- a/forge-gui/res/tokenscripts/r_3_1_a_construct_haste.txt +++ b/forge-gui/res/tokenscripts/r_3_1_a_construct_haste.txt @@ -1,7 +1,7 @@ Name:Construct Token ManaCost:no cost -Types:Artifact Creature Construct Colors:red +Types:Artifact Creature Construct PT:3/1 K:Haste Oracle:Haste diff --git a/forge-gui/res/tokenscripts/r_3_1_dinosaur.txt b/forge-gui/res/tokenscripts/r_3_1_dinosaur.txt index e05f6fbbfd7..eb63de58400 100644 --- a/forge-gui/res/tokenscripts/r_3_1_dinosaur.txt +++ b/forge-gui/res/tokenscripts/r_3_1_dinosaur.txt @@ -1,6 +1,6 @@ Name:Dinosaur Token ManaCost:no cost -Types:Creature Dinosaur Colors:red +Types:Creature Dinosaur PT:3/1 Oracle: diff --git a/forge-gui/res/tokenscripts/r_3_1_e_elemental_haste.txt b/forge-gui/res/tokenscripts/r_3_1_e_elemental_haste.txt index df6426405aa..6240a6585f7 100644 --- a/forge-gui/res/tokenscripts/r_3_1_e_elemental_haste.txt +++ b/forge-gui/res/tokenscripts/r_3_1_e_elemental_haste.txt @@ -1,7 +1,7 @@ Name:Elemental Token ManaCost:no cost -Types:Enchantment Creature Elemental Colors:red +Types:Enchantment Creature Elemental PT:3/1 K:Haste Oracle:Haste diff --git a/forge-gui/res/tokenscripts/r_3_1_elemental.txt b/forge-gui/res/tokenscripts/r_3_1_elemental.txt index 13c98c088e8..6eb17696f68 100644 --- a/forge-gui/res/tokenscripts/r_3_1_elemental.txt +++ b/forge-gui/res/tokenscripts/r_3_1_elemental.txt @@ -1,6 +1,6 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:red +Types:Creature Elemental PT:3/1 Oracle: diff --git a/forge-gui/res/tokenscripts/r_3_1_elemental_haste.txt b/forge-gui/res/tokenscripts/r_3_1_elemental_haste.txt index ddfa4f90103..759bf3af9f2 100644 --- a/forge-gui/res/tokenscripts/r_3_1_elemental_haste.txt +++ b/forge-gui/res/tokenscripts/r_3_1_elemental_haste.txt @@ -1,7 +1,7 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:red +Types:Creature Elemental PT:3/1 K:Haste Oracle:Haste diff --git a/forge-gui/res/tokenscripts/r_3_1_elemental_shaman.txt b/forge-gui/res/tokenscripts/r_3_1_elemental_shaman.txt index 64b30cc7567..d4958db01f5 100644 --- a/forge-gui/res/tokenscripts/r_3_1_elemental_shaman.txt +++ b/forge-gui/res/tokenscripts/r_3_1_elemental_shaman.txt @@ -1,6 +1,6 @@ Name:Elemental Shaman Token ManaCost:no cost -Types:Creature Elemental Shaman Colors:red +Types:Creature Elemental Shaman PT:3/1 Oracle: diff --git a/forge-gui/res/tokenscripts/r_3_1_elemental_shaman_haste.txt b/forge-gui/res/tokenscripts/r_3_1_elemental_shaman_haste.txt index 280acaf329e..cd9aebd1b8a 100644 --- a/forge-gui/res/tokenscripts/r_3_1_elemental_shaman_haste.txt +++ b/forge-gui/res/tokenscripts/r_3_1_elemental_shaman_haste.txt @@ -1,7 +1,7 @@ Name:Elemental Shaman Token ManaCost:no cost -Types:Creature Elemental Shaman Colors:red +Types:Creature Elemental Shaman PT:3/1 K:Haste Oracle:Haste diff --git a/forge-gui/res/tokenscripts/r_3_1_elemental_trample_haste.txt b/forge-gui/res/tokenscripts/r_3_1_elemental_trample_haste.txt index 50e24c5e7a6..29972e72cff 100644 --- a/forge-gui/res/tokenscripts/r_3_1_elemental_trample_haste.txt +++ b/forge-gui/res/tokenscripts/r_3_1_elemental_trample_haste.txt @@ -1,7 +1,7 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:red +Types:Creature Elemental PT:3/1 K:Trample K:Haste diff --git a/forge-gui/res/tokenscripts/r_3_1_knight.txt b/forge-gui/res/tokenscripts/r_3_1_knight.txt index 9f8845a9b56..66027c25db3 100644 --- a/forge-gui/res/tokenscripts/r_3_1_knight.txt +++ b/forge-gui/res/tokenscripts/r_3_1_knight.txt @@ -1,6 +1,6 @@ Name:Knight Token ManaCost:no cost -Types:Creature Knight Colors:red +Types:Creature Knight PT:3/1 Oracle: diff --git a/forge-gui/res/tokenscripts/r_3_2_wolf.txt b/forge-gui/res/tokenscripts/r_3_2_wolf.txt index ce3d9515ddb..33eae87ca6e 100644 --- a/forge-gui/res/tokenscripts/r_3_2_wolf.txt +++ b/forge-gui/res/tokenscripts/r_3_2_wolf.txt @@ -1,6 +1,6 @@ Name:Wolf Token ManaCost:no cost -PT:3/2 Colors:red Types:Creature Wolf +PT:3/2 Oracle: diff --git a/forge-gui/res/tokenscripts/r_3_3_elemental.txt b/forge-gui/res/tokenscripts/r_3_3_elemental.txt index 4a2dfa71d90..c759a3dfad8 100644 --- a/forge-gui/res/tokenscripts/r_3_3_elemental.txt +++ b/forge-gui/res/tokenscripts/r_3_3_elemental.txt @@ -1,6 +1,6 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:red +Types:Creature Elemental PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/r_3_3_fighter_first_strike.txt b/forge-gui/res/tokenscripts/r_3_3_fighter_first_strike.txt index 6a8163deeda..85e06f30d9c 100644 --- a/forge-gui/res/tokenscripts/r_3_3_fighter_first_strike.txt +++ b/forge-gui/res/tokenscripts/r_3_3_fighter_first_strike.txt @@ -1,7 +1,7 @@ Name:Fighter Token ManaCost:no cost -Types:Creature Fighter Colors:red +Types:Creature Fighter PT:3/3 K:First Strike Oracle:First strike From b494ad8cd194ad104ce7ddfe82219493a4d722ae Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 09:34:01 +0100 Subject: [PATCH 16/91] Edit pile cleanup: Line reordering, first pass: part 8, folder 'tokenscripts', part 4 --- forge-gui/res/tokenscripts/r_3_3_ogre.txt | 2 +- forge-gui/res/tokenscripts/r_3_3_spawn.txt | 2 +- forge-gui/res/tokenscripts/r_4_2_pirate_noblock.txt | 2 +- forge-gui/res/tokenscripts/r_4_4_bird_flying.txt | 4 ++-- forge-gui/res/tokenscripts/r_4_4_devil_haste_treasure.txt | 2 +- .../tokenscripts/r_4_4_dragon_elemental_flying_prowess.txt | 4 ++-- forge-gui/res/tokenscripts/r_4_4_dragon_flying.txt | 4 ++-- forge-gui/res/tokenscripts/r_4_4_giant.txt | 2 +- forge-gui/res/tokenscripts/r_4_4_hellion.txt | 2 +- forge-gui/res/tokenscripts/r_4_4_hellion_haste.txt | 2 +- forge-gui/res/tokenscripts/r_4_4_ogre.txt | 2 +- .../res/tokenscripts/r_4_4_scorpion_dragon_flying_haste.txt | 2 +- forge-gui/res/tokenscripts/r_5_5_dragon_flying.txt | 4 ++-- forge-gui/res/tokenscripts/r_5_5_dragon_spirit_flying.txt | 4 ++-- forge-gui/res/tokenscripts/r_6_6_dragon_flying.txt | 4 ++-- forge-gui/res/tokenscripts/r_7_1_elemental_trample_haste.txt | 2 +- forge-gui/res/tokenscripts/r_8_8_lizard.txt | 2 +- forge-gui/res/tokenscripts/r_x_1_elemental_trample_haste.txt | 2 +- .../res/tokenscripts/r_x_1_phyrexian_horror_trample_haste.txt | 2 +- .../res/tokenscripts/r_x_x_dragon_illusion_flying_haste.txt | 2 +- .../res/tokenscripts/r_x_x_elemental_trample_grave_exile.txt | 2 +- forge-gui/res/tokenscripts/ragavan.txt | 2 +- forge-gui/res/tokenscripts/rg_1_1_dragon_flying_devour.txt | 2 +- forge-gui/res/tokenscripts/rg_1_1_goblin_warrior.txt | 2 +- forge-gui/res/tokenscripts/rg_2_2_satyr_haste.txt | 2 +- forge-gui/res/tokenscripts/rg_4_4_beast_trample.txt | 2 +- forge-gui/res/tokenscripts/rg_4_4_giant_warrior_haste.txt | 2 +- forge-gui/res/tokenscripts/rg_5_4_dragon_spirit_damagesac.txt | 2 +- forge-gui/res/tokenscripts/rg_5_5_elemental.txt | 2 +- forge-gui/res/tokenscripts/rw_2_2_dinosaur_flying_haste.txt | 2 +- forge-gui/res/tokenscripts/settlement.txt | 2 +- forge-gui/res/tokenscripts/smaug.txt | 2 +- forge-gui/res/tokenscripts/spark_elemental.txt | 2 +- forge-gui/res/tokenscripts/spawn_of_azar.txt | 2 +- forge-gui/res/tokenscripts/syr_acha.txt | 2 +- forge-gui/res/tokenscripts/the_atropal.txt | 2 +- forge-gui/res/tokenscripts/tiny.txt | 2 +- forge-gui/res/tokenscripts/tombspawn.txt | 2 +- forge-gui/res/tokenscripts/u_0_0_alien.txt | 2 +- forge-gui/res/tokenscripts/u_0_0_elemental.txt | 2 +- forge-gui/res/tokenscripts/u_0_1_a_homunculus.txt | 2 +- forge-gui/res/tokenscripts/u_0_1_starfish.txt | 2 +- forge-gui/res/tokenscripts/u_0_3_crab.txt | 2 +- forge-gui/res/tokenscripts/u_1_0_elemental.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_a_thopter_flying.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_beeble.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_bird_flying.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_bird_flying_blockflying.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_bird_illusion_flying.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_camarid.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_faerie_dragon_flying.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_faerie_flying.txt | 2 +- .../res/tokenscripts/u_1_1_faerie_flying_blockflying.txt | 2 +- .../res/tokenscripts/u_1_1_faerie_spy_flying_haste_draw.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_fish.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_fish_unblockable.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_human_wizard.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_illusion_flying.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_illusion_other_illusions.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_kraken_trample.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_merfolk.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_merfolk_hexproof.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_merfolk_wizard.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_ninja_unblockable.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_spirit_flying.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_squid_islandwalk.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_tentacle.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_tyranid_gargoyle_flying.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_wizard_countersac.txt | 2 +- forge-gui/res/tokenscripts/u_1_1_wizard_flying.txt | 2 +- forge-gui/res/tokenscripts/u_1_2_moonfolk_flying.txt | 2 +- forge-gui/res/tokenscripts/u_2_1_a_phyrexian_myr.txt | 2 +- forge-gui/res/tokenscripts/u_2_2_bird_flying.txt | 2 +- forge-gui/res/tokenscripts/u_2_2_djinn_monk_flying.txt | 2 +- forge-gui/res/tokenscripts/u_2_2_drake_flying.txt | 2 +- forge-gui/res/tokenscripts/u_2_2_e_bird_flying.txt | 2 +- forge-gui/res/tokenscripts/u_2_2_elemental_flying.txt | 2 +- forge-gui/res/tokenscripts/u_2_2_homunculus.txt | 2 +- forge-gui/res/tokenscripts/u_2_2_illusion.txt | 2 +- forge-gui/res/tokenscripts/u_2_2_illusion_illusory.txt | 2 +- .../res/tokenscripts/u_2_2_spirit_vigilance_drawcounter.txt | 2 +- forge-gui/res/tokenscripts/u_2_2_wizard.txt | 2 +- forge-gui/res/tokenscripts/u_3_2_reflection.txt | 2 +- forge-gui/res/tokenscripts/u_3_3_fish_hatches_whale.txt | 2 +- forge-gui/res/tokenscripts/u_3_3_shark.txt | 2 +- forge-gui/res/tokenscripts/u_3_3_weird_defender_flying.txt | 2 +- forge-gui/res/tokenscripts/u_4_3_salamander_warrior.txt | 2 +- forge-gui/res/tokenscripts/u_4_4_elemental_bird_flying.txt | 2 +- forge-gui/res/tokenscripts/u_4_4_giant_wizard.txt | 2 +- forge-gui/res/tokenscripts/u_4_4_sphinx_flying.txt | 2 +- forge-gui/res/tokenscripts/u_5_5_dragon_spirit_flying.txt | 2 +- forge-gui/res/tokenscripts/u_5_5_wall_defender.txt | 2 +- forge-gui/res/tokenscripts/u_6_6_whale_hatches_kraken.txt | 2 +- forge-gui/res/tokenscripts/u_8_8_kraken.txt | 2 +- forge-gui/res/tokenscripts/u_8_8_kraken_hexproof.txt | 2 +- forge-gui/res/tokenscripts/u_8_8_octopus.txt | 2 +- forge-gui/res/tokenscripts/u_9_9_kraken.txt | 2 +- forge-gui/res/tokenscripts/u_m1_m1_squid.txt | 2 +- forge-gui/res/tokenscripts/u_x_x_dog_illusion_cardsinhand.txt | 2 +- forge-gui/res/tokenscripts/u_x_x_illusion.txt | 2 +- 100 files changed, 106 insertions(+), 106 deletions(-) diff --git a/forge-gui/res/tokenscripts/r_3_3_ogre.txt b/forge-gui/res/tokenscripts/r_3_3_ogre.txt index e000518ec2a..dd4a6eceb9d 100644 --- a/forge-gui/res/tokenscripts/r_3_3_ogre.txt +++ b/forge-gui/res/tokenscripts/r_3_3_ogre.txt @@ -1,6 +1,6 @@ Name:Ogre Token ManaCost:no cost -Types:Creature Ogre Colors:red +Types:Creature Ogre PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/r_3_3_spawn.txt b/forge-gui/res/tokenscripts/r_3_3_spawn.txt index e6ba13588e9..dfdb9d6adf0 100644 --- a/forge-gui/res/tokenscripts/r_3_3_spawn.txt +++ b/forge-gui/res/tokenscripts/r_3_3_spawn.txt @@ -1,6 +1,6 @@ Name:Spawn Token ManaCost:no cost -Types:Creature Spawn Colors:red +Types:Creature Spawn PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/r_4_2_pirate_noblock.txt b/forge-gui/res/tokenscripts/r_4_2_pirate_noblock.txt index 336523f8ce8..04b34b7fe6a 100644 --- a/forge-gui/res/tokenscripts/r_4_2_pirate_noblock.txt +++ b/forge-gui/res/tokenscripts/r_4_2_pirate_noblock.txt @@ -1,7 +1,7 @@ Name:Pirate Token ManaCost:no cost -Types:Creature Pirate Colors:red +Types:Creature Pirate PT:4/2 S:Mode$ CantBlockBy | ValidBlocker$ Creature.Self | Description$ CARDNAME can't block. Oracle:This creature can't block. diff --git a/forge-gui/res/tokenscripts/r_4_4_bird_flying.txt b/forge-gui/res/tokenscripts/r_4_4_bird_flying.txt index 15791d48eae..2610eb88f9a 100644 --- a/forge-gui/res/tokenscripts/r_4_4_bird_flying.txt +++ b/forge-gui/res/tokenscripts/r_4_4_bird_flying.txt @@ -1,7 +1,7 @@ Name:Bird Token ManaCost:no cost -Types:Creature Bird Colors:red -K:Flying +Types:Creature Bird PT:4/4 +K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/r_4_4_devil_haste_treasure.txt b/forge-gui/res/tokenscripts/r_4_4_devil_haste_treasure.txt index 29938097a51..0309f42098a 100644 --- a/forge-gui/res/tokenscripts/r_4_4_devil_haste_treasure.txt +++ b/forge-gui/res/tokenscripts/r_4_4_devil_haste_treasure.txt @@ -1,7 +1,7 @@ Name:Devil Token ManaCost:no cost -Types:Creature Devil Colors:red +Types:Creature Devil PT:4/4 K:Haste T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When this creature dies, create a Treasure token. diff --git a/forge-gui/res/tokenscripts/r_4_4_dragon_elemental_flying_prowess.txt b/forge-gui/res/tokenscripts/r_4_4_dragon_elemental_flying_prowess.txt index fe1073ef691..992dea2855e 100644 --- a/forge-gui/res/tokenscripts/r_4_4_dragon_elemental_flying_prowess.txt +++ b/forge-gui/res/tokenscripts/r_4_4_dragon_elemental_flying_prowess.txt @@ -1,8 +1,8 @@ Name:Dragon Elemental Token ManaCost:no cost -Types:Creature Dragon Elemental Colors:red +Types:Creature Dragon Elemental +PT:4/4 K:Flying K:Prowess -PT:4/4 Oracle:Flying\nProwess (Whenever you cast a noncreature spell, this creature gets +1/+1 until end of turn.) diff --git a/forge-gui/res/tokenscripts/r_4_4_dragon_flying.txt b/forge-gui/res/tokenscripts/r_4_4_dragon_flying.txt index 8ba64f2b148..a51ff2ffc21 100644 --- a/forge-gui/res/tokenscripts/r_4_4_dragon_flying.txt +++ b/forge-gui/res/tokenscripts/r_4_4_dragon_flying.txt @@ -1,7 +1,7 @@ Name:Dragon Token ManaCost:no cost -Types:Creature Dragon Colors:red -K:Flying +Types:Creature Dragon PT:4/4 +K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/r_4_4_giant.txt b/forge-gui/res/tokenscripts/r_4_4_giant.txt index 110af351368..4c201ff266f 100644 --- a/forge-gui/res/tokenscripts/r_4_4_giant.txt +++ b/forge-gui/res/tokenscripts/r_4_4_giant.txt @@ -1,6 +1,6 @@ Name:Giant Token ManaCost:no cost -Types:Creature Giant Colors:red +Types:Creature Giant PT:4/4 Oracle: diff --git a/forge-gui/res/tokenscripts/r_4_4_hellion.txt b/forge-gui/res/tokenscripts/r_4_4_hellion.txt index 7eace3afcfc..e82faacd0dd 100644 --- a/forge-gui/res/tokenscripts/r_4_4_hellion.txt +++ b/forge-gui/res/tokenscripts/r_4_4_hellion.txt @@ -1,6 +1,6 @@ Name:Hellion Token ManaCost:no cost -Types:Creature Hellion Colors:red +Types:Creature Hellion PT:4/4 Oracle: diff --git a/forge-gui/res/tokenscripts/r_4_4_hellion_haste.txt b/forge-gui/res/tokenscripts/r_4_4_hellion_haste.txt index ed57bb33765..9a4afcd2d2d 100644 --- a/forge-gui/res/tokenscripts/r_4_4_hellion_haste.txt +++ b/forge-gui/res/tokenscripts/r_4_4_hellion_haste.txt @@ -1,7 +1,7 @@ Name:Hellion Token ManaCost:no cost -Types:Creature Hellion Colors:red +Types:Creature Hellion PT:4/4 K:Haste Oracle:Haste (This creature can attack and {T} as soon as it comes under your control.) diff --git a/forge-gui/res/tokenscripts/r_4_4_ogre.txt b/forge-gui/res/tokenscripts/r_4_4_ogre.txt index 0c8c2bc20e3..fb96a9990d7 100644 --- a/forge-gui/res/tokenscripts/r_4_4_ogre.txt +++ b/forge-gui/res/tokenscripts/r_4_4_ogre.txt @@ -1,6 +1,6 @@ Name:Ogre Token ManaCost:no cost -Types:Creature Ogre Colors:red +Types:Creature Ogre PT:4/4 Oracle: diff --git a/forge-gui/res/tokenscripts/r_4_4_scorpion_dragon_flying_haste.txt b/forge-gui/res/tokenscripts/r_4_4_scorpion_dragon_flying_haste.txt index 193e9b68666..27a5d5cad8f 100644 --- a/forge-gui/res/tokenscripts/r_4_4_scorpion_dragon_flying_haste.txt +++ b/forge-gui/res/tokenscripts/r_4_4_scorpion_dragon_flying_haste.txt @@ -1,7 +1,7 @@ Name:Scorpion Dragon Token ManaCost:no cost -Types:Creature Scorpion Dragon Colors:red +Types:Creature Scorpion Dragon PT:4/4 K:Flying K:Haste diff --git a/forge-gui/res/tokenscripts/r_5_5_dragon_flying.txt b/forge-gui/res/tokenscripts/r_5_5_dragon_flying.txt index 018dc8c7fee..ad96a2b64bb 100644 --- a/forge-gui/res/tokenscripts/r_5_5_dragon_flying.txt +++ b/forge-gui/res/tokenscripts/r_5_5_dragon_flying.txt @@ -1,7 +1,7 @@ Name:Dragon Token ManaCost:no cost -Types:Creature Dragon Colors:red -K:Flying +Types:Creature Dragon PT:5/5 +K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/r_5_5_dragon_spirit_flying.txt b/forge-gui/res/tokenscripts/r_5_5_dragon_spirit_flying.txt index 8dea4158881..ef7c6e2a643 100644 --- a/forge-gui/res/tokenscripts/r_5_5_dragon_spirit_flying.txt +++ b/forge-gui/res/tokenscripts/r_5_5_dragon_spirit_flying.txt @@ -1,7 +1,7 @@ Name:Dragon Spirit Token ManaCost:no cost -Types:Creature Dragon Spirit Colors:red -K:Flying +Types:Creature Dragon Spirit PT:5/5 +K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/r_6_6_dragon_flying.txt b/forge-gui/res/tokenscripts/r_6_6_dragon_flying.txt index 1056403d90c..5cdaef1f571 100644 --- a/forge-gui/res/tokenscripts/r_6_6_dragon_flying.txt +++ b/forge-gui/res/tokenscripts/r_6_6_dragon_flying.txt @@ -1,7 +1,7 @@ Name:Dragon Token ManaCost:no cost -Types:Creature Dragon Colors:red -K:Flying +Types:Creature Dragon PT:6/6 +K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/r_7_1_elemental_trample_haste.txt b/forge-gui/res/tokenscripts/r_7_1_elemental_trample_haste.txt index a6da7ade1ed..cb20f46d79c 100644 --- a/forge-gui/res/tokenscripts/r_7_1_elemental_trample_haste.txt +++ b/forge-gui/res/tokenscripts/r_7_1_elemental_trample_haste.txt @@ -1,7 +1,7 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:red +Types:Creature Elemental PT:7/1 K:Trample K:Haste diff --git a/forge-gui/res/tokenscripts/r_8_8_lizard.txt b/forge-gui/res/tokenscripts/r_8_8_lizard.txt index 9cf77a0c70f..5af1e4aae8f 100644 --- a/forge-gui/res/tokenscripts/r_8_8_lizard.txt +++ b/forge-gui/res/tokenscripts/r_8_8_lizard.txt @@ -1,6 +1,6 @@ Name:Lizard Token ManaCost:no cost -Types:Creature Lizard Colors:red +Types:Creature Lizard PT:8/8 Oracle: diff --git a/forge-gui/res/tokenscripts/r_x_1_elemental_trample_haste.txt b/forge-gui/res/tokenscripts/r_x_1_elemental_trample_haste.txt index 17e48ecc248..87c509cf704 100644 --- a/forge-gui/res/tokenscripts/r_x_1_elemental_trample_haste.txt +++ b/forge-gui/res/tokenscripts/r_x_1_elemental_trample_haste.txt @@ -1,7 +1,7 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:red +Types:Creature Elemental PT:*/1 K:Trample K:Haste diff --git a/forge-gui/res/tokenscripts/r_x_1_phyrexian_horror_trample_haste.txt b/forge-gui/res/tokenscripts/r_x_1_phyrexian_horror_trample_haste.txt index 42bde0cf335..584aaae3996 100644 --- a/forge-gui/res/tokenscripts/r_x_1_phyrexian_horror_trample_haste.txt +++ b/forge-gui/res/tokenscripts/r_x_1_phyrexian_horror_trample_haste.txt @@ -1,7 +1,7 @@ Name:Phyrexian Horror Token ManaCost:no cost -Types:Creature Phyrexian Horror Colors:red +Types:Creature Phyrexian Horror PT:*/1 K:Trample K:Haste diff --git a/forge-gui/res/tokenscripts/r_x_x_dragon_illusion_flying_haste.txt b/forge-gui/res/tokenscripts/r_x_x_dragon_illusion_flying_haste.txt index 7b9d43f6518..72671c118b7 100644 --- a/forge-gui/res/tokenscripts/r_x_x_dragon_illusion_flying_haste.txt +++ b/forge-gui/res/tokenscripts/r_x_x_dragon_illusion_flying_haste.txt @@ -1,7 +1,7 @@ Name:Dragon Illusion Token ManaCost:no cost -Types:Creature Dragon Illusion Colors:red +Types:Creature Dragon Illusion PT:*/* K:Flying K:Haste diff --git a/forge-gui/res/tokenscripts/r_x_x_elemental_trample_grave_exile.txt b/forge-gui/res/tokenscripts/r_x_x_elemental_trample_grave_exile.txt index a0ba74e5400..1ba697ae2eb 100644 --- a/forge-gui/res/tokenscripts/r_x_x_elemental_trample_grave_exile.txt +++ b/forge-gui/res/tokenscripts/r_x_x_elemental_trample_grave_exile.txt @@ -1,7 +1,7 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:red +Types:Creature Elemental PT:*/* K:Trample S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | SetPower$ X | SetToughness$ X | Description$ This creature's power and toughness are each equal to the number of instant and sorcery cards in your graveyard, plus the number of cards with flashback you own in exile. diff --git a/forge-gui/res/tokenscripts/ragavan.txt b/forge-gui/res/tokenscripts/ragavan.txt index 4e24fbf8a61..1ca7ef5c8dc 100644 --- a/forge-gui/res/tokenscripts/ragavan.txt +++ b/forge-gui/res/tokenscripts/ragavan.txt @@ -1,6 +1,6 @@ Name:Ragavan ManaCost:no cost -Types:Legendary Creature Monkey Colors:red +Types:Legendary Creature Monkey PT:2/1 Oracle: diff --git a/forge-gui/res/tokenscripts/rg_1_1_dragon_flying_devour.txt b/forge-gui/res/tokenscripts/rg_1_1_dragon_flying_devour.txt index ec54eacb851..a9710dd2a1c 100644 --- a/forge-gui/res/tokenscripts/rg_1_1_dragon_flying_devour.txt +++ b/forge-gui/res/tokenscripts/rg_1_1_dragon_flying_devour.txt @@ -1,7 +1,7 @@ Name:Dragon Token ManaCost:no cost -Types:Creature Dragon Colors:red,green +Types:Creature Dragon PT:1/1 K:Flying K:Devour:2 diff --git a/forge-gui/res/tokenscripts/rg_1_1_goblin_warrior.txt b/forge-gui/res/tokenscripts/rg_1_1_goblin_warrior.txt index 848b3d4f1e2..c6bba5480e6 100644 --- a/forge-gui/res/tokenscripts/rg_1_1_goblin_warrior.txt +++ b/forge-gui/res/tokenscripts/rg_1_1_goblin_warrior.txt @@ -1,6 +1,6 @@ Name:Goblin Warrior Token ManaCost:no cost -Types:Creature Goblin Warrior Colors:red,green +Types:Creature Goblin Warrior PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/rg_2_2_satyr_haste.txt b/forge-gui/res/tokenscripts/rg_2_2_satyr_haste.txt index d1d24df0d32..e9ea9de5bb4 100644 --- a/forge-gui/res/tokenscripts/rg_2_2_satyr_haste.txt +++ b/forge-gui/res/tokenscripts/rg_2_2_satyr_haste.txt @@ -1,7 +1,7 @@ Name:Satyr Token ManaCost:no cost -Types:Creature Satyr Colors:red,green +Types:Creature Satyr PT:2/2 K:Haste Oracle:Haste diff --git a/forge-gui/res/tokenscripts/rg_4_4_beast_trample.txt b/forge-gui/res/tokenscripts/rg_4_4_beast_trample.txt index abcd6f9ed64..983f8523ab0 100644 --- a/forge-gui/res/tokenscripts/rg_4_4_beast_trample.txt +++ b/forge-gui/res/tokenscripts/rg_4_4_beast_trample.txt @@ -1,7 +1,7 @@ Name:Beast Token ManaCost:no cost -Types:Creature Beast Colors:red,green +Types:Creature Beast PT:4/4 K:Trample Oracle:Trample diff --git a/forge-gui/res/tokenscripts/rg_4_4_giant_warrior_haste.txt b/forge-gui/res/tokenscripts/rg_4_4_giant_warrior_haste.txt index 25105f376d3..20fa5e5f0a7 100644 --- a/forge-gui/res/tokenscripts/rg_4_4_giant_warrior_haste.txt +++ b/forge-gui/res/tokenscripts/rg_4_4_giant_warrior_haste.txt @@ -1,7 +1,7 @@ Name:Giant Warrior Token ManaCost:no cost -Types:Creature Giant Warrior Colors:red,green +Types:Creature Giant Warrior PT:4/4 K:Haste Oracle:Haste diff --git a/forge-gui/res/tokenscripts/rg_5_4_dragon_spirit_damagesac.txt b/forge-gui/res/tokenscripts/rg_5_4_dragon_spirit_damagesac.txt index 21958bd2a47..b1fc0073138 100644 --- a/forge-gui/res/tokenscripts/rg_5_4_dragon_spirit_damagesac.txt +++ b/forge-gui/res/tokenscripts/rg_5_4_dragon_spirit_damagesac.txt @@ -1,7 +1,7 @@ Name:Dragon Spirit Token ManaCost:no cost -Types:Creature Dragon Spirit Colors:red,green +Types:Creature Dragon Spirit PT:5/4 T:Mode$ DamageDealtOnce | ValidSource$ Card.Self | Execute$ TrigSac | TriggerZones$ Battlefield | TriggerDescription$ When this creature deals damage, sacrifice it. SVar:TrigSac:DB$ Sacrifice diff --git a/forge-gui/res/tokenscripts/rg_5_5_elemental.txt b/forge-gui/res/tokenscripts/rg_5_5_elemental.txt index 4512d5006a9..0d446b0b1eb 100644 --- a/forge-gui/res/tokenscripts/rg_5_5_elemental.txt +++ b/forge-gui/res/tokenscripts/rg_5_5_elemental.txt @@ -1,6 +1,6 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:red,green +Types:Creature Elemental PT:5/5 Oracle: diff --git a/forge-gui/res/tokenscripts/rw_2_2_dinosaur_flying_haste.txt b/forge-gui/res/tokenscripts/rw_2_2_dinosaur_flying_haste.txt index 1a63d559589..fc746343afb 100644 --- a/forge-gui/res/tokenscripts/rw_2_2_dinosaur_flying_haste.txt +++ b/forge-gui/res/tokenscripts/rw_2_2_dinosaur_flying_haste.txt @@ -1,7 +1,7 @@ Name:Dinosaur Token ManaCost:no cost -Types:Creature Dinosaur Colors:red,white +Types:Creature Dinosaur PT:2/2 K:Flying K:Haste diff --git a/forge-gui/res/tokenscripts/settlement.txt b/forge-gui/res/tokenscripts/settlement.txt index 39de00286b9..8b7a59ee58f 100644 --- a/forge-gui/res/tokenscripts/settlement.txt +++ b/forge-gui/res/tokenscripts/settlement.txt @@ -1,7 +1,7 @@ Name:Settlement ManaCost:no cost -Types:Enchantment Aura Colors:green +Types:Enchantment Aura K:Enchant land A:SP$ Attach | Cost$ 0 | ValidTgts$ Land | AILogic$ Pump S:Mode$ Continuous | Affected$ Card.EnchantedBy | AddAbility$ SettlementTap | Description$ Enchanted land has "{T}: Add one mana of any color." diff --git a/forge-gui/res/tokenscripts/smaug.txt b/forge-gui/res/tokenscripts/smaug.txt index 06225ab8e02..b4a02a47737 100644 --- a/forge-gui/res/tokenscripts/smaug.txt +++ b/forge-gui/res/tokenscripts/smaug.txt @@ -1,7 +1,7 @@ Name:Smaug ManaCost:no cost -Types:Legendary Creature Dragon Colors:red +Types:Legendary Creature Dragon PT:6/6 K:Flying K:Haste diff --git a/forge-gui/res/tokenscripts/spark_elemental.txt b/forge-gui/res/tokenscripts/spark_elemental.txt index 1bd9251ecc1..b5fc863dcbc 100644 --- a/forge-gui/res/tokenscripts/spark_elemental.txt +++ b/forge-gui/res/tokenscripts/spark_elemental.txt @@ -1,7 +1,7 @@ Name:Spark Elemental ManaCost:no cost -Types:Creature Elemental Colors:red +Types:Creature Elemental PT:3/1 K:Trample K:Haste diff --git a/forge-gui/res/tokenscripts/spawn_of_azar.txt b/forge-gui/res/tokenscripts/spawn_of_azar.txt index 61c9847e52f..11938d04101 100644 --- a/forge-gui/res/tokenscripts/spawn_of_azar.txt +++ b/forge-gui/res/tokenscripts/spawn_of_azar.txt @@ -1,7 +1,7 @@ Name:Spawn of Azar ManaCost:no cost -Types:Creature Spawn Colors:black +Types:Creature Spawn PT:*/* K:Landwalk:Swamp Oracle:Swampwalk diff --git a/forge-gui/res/tokenscripts/syr_acha.txt b/forge-gui/res/tokenscripts/syr_acha.txt index 8c839938054..67da91e7c85 100644 --- a/forge-gui/res/tokenscripts/syr_acha.txt +++ b/forge-gui/res/tokenscripts/syr_acha.txt @@ -1,7 +1,7 @@ Name:Syr Acha ManaCost:no cost -Types:Legendary Artifact Creature Food Knight Colors:red +Types:Legendary Artifact Creature Food Knight PT:1/1 A:AB$ GainLife | Cost$ 2 T Sac<1/CARDNAME> | LifeAmount$ 3 | SubAbility$ DBEffect | SpellDescription$ You gain 3 life. SVar:DBEffect:DB$ Effect | ReplacementEffects$ CardDrawn | StackDescription$ Until end of turn, if {p:You} would draw a card, they draw two cards instead. | SpellDescription$ Until end of turn, if you would draw a card, draw two cards instead. diff --git a/forge-gui/res/tokenscripts/the_atropal.txt b/forge-gui/res/tokenscripts/the_atropal.txt index acb205645ec..f8d0da1f575 100644 --- a/forge-gui/res/tokenscripts/the_atropal.txt +++ b/forge-gui/res/tokenscripts/the_atropal.txt @@ -1,7 +1,7 @@ Name:The Atropal ManaCost:no cost -Types:Legendary Creature God Horror Colors:black +Types:Legendary Creature God Horror PT:4/4 K:Deathtouch Oracle:Deathtouch diff --git a/forge-gui/res/tokenscripts/tiny.txt b/forge-gui/res/tokenscripts/tiny.txt index d808af79f72..8e7ebfd703d 100644 --- a/forge-gui/res/tokenscripts/tiny.txt +++ b/forge-gui/res/tokenscripts/tiny.txt @@ -1,7 +1,7 @@ Name:Tiny ManaCost:no cost -Types:Legendary Creature Dog Detective Colors:green +Types:Legendary Creature Dog Detective PT:2/2 K:Trample Oracle:Trample diff --git a/forge-gui/res/tokenscripts/tombspawn.txt b/forge-gui/res/tokenscripts/tombspawn.txt index 9e9af6ad672..1b8859f1d1f 100644 --- a/forge-gui/res/tokenscripts/tombspawn.txt +++ b/forge-gui/res/tokenscripts/tombspawn.txt @@ -1,7 +1,7 @@ Name:Tombspawn ManaCost:no cost -Types:Creature Zombie Colors:black +Types:Creature Zombie PT:2/2 K:Haste Oracle:Haste diff --git a/forge-gui/res/tokenscripts/u_0_0_alien.txt b/forge-gui/res/tokenscripts/u_0_0_alien.txt index 9dfadb59728..0a9fe8464a6 100644 --- a/forge-gui/res/tokenscripts/u_0_0_alien.txt +++ b/forge-gui/res/tokenscripts/u_0_0_alien.txt @@ -1,6 +1,6 @@ Name:Alien Token ManaCost:no cost -Types:Creature Alien Colors:blue +Types:Creature Alien PT:0/0 Oracle: diff --git a/forge-gui/res/tokenscripts/u_0_0_elemental.txt b/forge-gui/res/tokenscripts/u_0_0_elemental.txt index 68255e9dd3b..d28e97f8ac4 100644 --- a/forge-gui/res/tokenscripts/u_0_0_elemental.txt +++ b/forge-gui/res/tokenscripts/u_0_0_elemental.txt @@ -1,6 +1,6 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:blue +Types:Creature Elemental PT:0/0 Oracle: diff --git a/forge-gui/res/tokenscripts/u_0_1_a_homunculus.txt b/forge-gui/res/tokenscripts/u_0_1_a_homunculus.txt index bd57cc6bcaf..fbfaa4306a3 100644 --- a/forge-gui/res/tokenscripts/u_0_1_a_homunculus.txt +++ b/forge-gui/res/tokenscripts/u_0_1_a_homunculus.txt @@ -1,6 +1,6 @@ Name:Homunculus Token ManaCost:no cost -Types:Artifact Creature Homunculus Colors:blue +Types:Artifact Creature Homunculus PT:0/1 Oracle: diff --git a/forge-gui/res/tokenscripts/u_0_1_starfish.txt b/forge-gui/res/tokenscripts/u_0_1_starfish.txt index a82042a76ef..c6396fc8089 100644 --- a/forge-gui/res/tokenscripts/u_0_1_starfish.txt +++ b/forge-gui/res/tokenscripts/u_0_1_starfish.txt @@ -1,6 +1,6 @@ Name:Starfish Token ManaCost:no cost -Types:Creature Starfish Colors:blue +Types:Creature Starfish PT:0/1 Oracle: diff --git a/forge-gui/res/tokenscripts/u_0_3_crab.txt b/forge-gui/res/tokenscripts/u_0_3_crab.txt index 92d930bf152..436734ec997 100644 --- a/forge-gui/res/tokenscripts/u_0_3_crab.txt +++ b/forge-gui/res/tokenscripts/u_0_3_crab.txt @@ -1,6 +1,6 @@ Name:Crab Token ManaCost:no cost -Types:Creature Crab Colors:blue +Types:Creature Crab PT:0/3 Oracle: diff --git a/forge-gui/res/tokenscripts/u_1_0_elemental.txt b/forge-gui/res/tokenscripts/u_1_0_elemental.txt index 711aa04717f..d119b71e4f3 100644 --- a/forge-gui/res/tokenscripts/u_1_0_elemental.txt +++ b/forge-gui/res/tokenscripts/u_1_0_elemental.txt @@ -1,6 +1,6 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:blue +Types:Creature Elemental PT:1/0 Oracle: diff --git a/forge-gui/res/tokenscripts/u_1_1_a_thopter_flying.txt b/forge-gui/res/tokenscripts/u_1_1_a_thopter_flying.txt index 7f0c64d75eb..24963acbf48 100644 --- a/forge-gui/res/tokenscripts/u_1_1_a_thopter_flying.txt +++ b/forge-gui/res/tokenscripts/u_1_1_a_thopter_flying.txt @@ -1,7 +1,7 @@ Name:Thopter Token ManaCost:no cost -Types:Artifact Creature Thopter Colors:blue +Types:Artifact Creature Thopter PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_1_1_beeble.txt b/forge-gui/res/tokenscripts/u_1_1_beeble.txt index d87da53d67f..6cfe161411f 100644 --- a/forge-gui/res/tokenscripts/u_1_1_beeble.txt +++ b/forge-gui/res/tokenscripts/u_1_1_beeble.txt @@ -1,6 +1,6 @@ Name:Beeble Token ManaCost:no cost -Types:Creature Beeble Colors:blue +Types:Creature Beeble PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/u_1_1_bird_flying.txt b/forge-gui/res/tokenscripts/u_1_1_bird_flying.txt index 826642b960c..8c444086ff2 100644 --- a/forge-gui/res/tokenscripts/u_1_1_bird_flying.txt +++ b/forge-gui/res/tokenscripts/u_1_1_bird_flying.txt @@ -1,7 +1,7 @@ Name:Bird Token ManaCost:no cost -Types:Creature Bird Colors:blue +Types:Creature Bird PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_1_1_bird_flying_blockflying.txt b/forge-gui/res/tokenscripts/u_1_1_bird_flying_blockflying.txt index 3b49b219e2d..87c4d5d7b31 100644 --- a/forge-gui/res/tokenscripts/u_1_1_bird_flying_blockflying.txt +++ b/forge-gui/res/tokenscripts/u_1_1_bird_flying_blockflying.txt @@ -1,7 +1,7 @@ Name:Bird Token ManaCost:no cost -Types:Creature Bird Colors:blue +Types:Creature Bird PT:1/1 K:Flying S:Mode$ CantBlockBy | ValidAttacker$ Creature.withoutFlying | ValidBlocker$ Creature.Self | Description$ This creature can block only creatures with flying. diff --git a/forge-gui/res/tokenscripts/u_1_1_bird_illusion_flying.txt b/forge-gui/res/tokenscripts/u_1_1_bird_illusion_flying.txt index bc0231d721f..fc419a514ed 100644 --- a/forge-gui/res/tokenscripts/u_1_1_bird_illusion_flying.txt +++ b/forge-gui/res/tokenscripts/u_1_1_bird_illusion_flying.txt @@ -1,7 +1,7 @@ Name:Bird Illusion Token ManaCost:no cost -Types:Creature Bird Illusion Colors:blue +Types:Creature Bird Illusion PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_1_1_camarid.txt b/forge-gui/res/tokenscripts/u_1_1_camarid.txt index d3d9531bb57..1c512f56f17 100644 --- a/forge-gui/res/tokenscripts/u_1_1_camarid.txt +++ b/forge-gui/res/tokenscripts/u_1_1_camarid.txt @@ -1,6 +1,6 @@ Name:Camarid Token ManaCost:no cost -Types:Creature Camarid Colors:blue +Types:Creature Camarid PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/u_1_1_faerie_dragon_flying.txt b/forge-gui/res/tokenscripts/u_1_1_faerie_dragon_flying.txt index ed034dd0fbd..83210e6d748 100644 --- a/forge-gui/res/tokenscripts/u_1_1_faerie_dragon_flying.txt +++ b/forge-gui/res/tokenscripts/u_1_1_faerie_dragon_flying.txt @@ -1,7 +1,7 @@ Name:Faerie Dragon Token ManaCost:no cost -Types:Creature Faerie Dragon Colors:blue +Types:Creature Faerie Dragon PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_1_1_faerie_flying.txt b/forge-gui/res/tokenscripts/u_1_1_faerie_flying.txt index 83982083d59..ed57703019d 100644 --- a/forge-gui/res/tokenscripts/u_1_1_faerie_flying.txt +++ b/forge-gui/res/tokenscripts/u_1_1_faerie_flying.txt @@ -1,7 +1,7 @@ Name:Faerie Token ManaCost:no cost -Types:Creature Faerie Colors:blue +Types:Creature Faerie PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_1_1_faerie_flying_blockflying.txt b/forge-gui/res/tokenscripts/u_1_1_faerie_flying_blockflying.txt index cb9c00cdd38..7025fbb9cbf 100644 --- a/forge-gui/res/tokenscripts/u_1_1_faerie_flying_blockflying.txt +++ b/forge-gui/res/tokenscripts/u_1_1_faerie_flying_blockflying.txt @@ -1,7 +1,7 @@ Name:Faerie Token ManaCost:no cost -Types:Creature Faerie Colors:blue +Types:Creature Faerie PT:1/1 K:Flying S:Mode$ CantBlockBy | ValidAttacker$ Creature.withoutFlying | ValidBlocker$ Creature.Self | Description$ CARDNAME can block only creatures with flying. diff --git a/forge-gui/res/tokenscripts/u_1_1_faerie_spy_flying_haste_draw.txt b/forge-gui/res/tokenscripts/u_1_1_faerie_spy_flying_haste_draw.txt index fc1f3964f3d..1f958b672f3 100644 --- a/forge-gui/res/tokenscripts/u_1_1_faerie_spy_flying_haste_draw.txt +++ b/forge-gui/res/tokenscripts/u_1_1_faerie_spy_flying_haste_draw.txt @@ -1,7 +1,7 @@ Name:Faerie Token ManaCost:no cost -Types:Creature Faerie Colors:blue +Types:Creature Faerie PT:1/1 K:Flying K:Haste diff --git a/forge-gui/res/tokenscripts/u_1_1_fish.txt b/forge-gui/res/tokenscripts/u_1_1_fish.txt index 6cd86f4ac38..216d20165b4 100644 --- a/forge-gui/res/tokenscripts/u_1_1_fish.txt +++ b/forge-gui/res/tokenscripts/u_1_1_fish.txt @@ -1,6 +1,6 @@ Name:Fish Token ManaCost:no cost -Types:Creature Fish Colors:blue +Types:Creature Fish PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/u_1_1_fish_unblockable.txt b/forge-gui/res/tokenscripts/u_1_1_fish_unblockable.txt index 23837f3a85b..9f433539c97 100644 --- a/forge-gui/res/tokenscripts/u_1_1_fish_unblockable.txt +++ b/forge-gui/res/tokenscripts/u_1_1_fish_unblockable.txt @@ -1,7 +1,7 @@ Name:Fish Token ManaCost:no cost -Types:Creature Fish Colors:blue +Types:Creature Fish PT:1/1 S:Mode$ CantBlockBy | ValidAttacker$ Creature.Self | Description$ This creature can't be blocked. Oracle:This creature can't be blocked. diff --git a/forge-gui/res/tokenscripts/u_1_1_human_wizard.txt b/forge-gui/res/tokenscripts/u_1_1_human_wizard.txt index 0d05fd1620f..4a99a680e8e 100644 --- a/forge-gui/res/tokenscripts/u_1_1_human_wizard.txt +++ b/forge-gui/res/tokenscripts/u_1_1_human_wizard.txt @@ -1,6 +1,6 @@ Name:Human Wizard Token ManaCost:no cost -Types:Creature Human Wizard Colors:blue +Types:Creature Human Wizard PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/u_1_1_illusion_flying.txt b/forge-gui/res/tokenscripts/u_1_1_illusion_flying.txt index a06f2b69c7f..dd77f84e343 100644 --- a/forge-gui/res/tokenscripts/u_1_1_illusion_flying.txt +++ b/forge-gui/res/tokenscripts/u_1_1_illusion_flying.txt @@ -1,7 +1,7 @@ Name:Illusion Token ManaCost:no cost -Types:Creature Illusion Colors:blue +Types:Creature Illusion PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_1_1_illusion_other_illusions.txt b/forge-gui/res/tokenscripts/u_1_1_illusion_other_illusions.txt index 5cf98a34e15..144407abc19 100644 --- a/forge-gui/res/tokenscripts/u_1_1_illusion_other_illusions.txt +++ b/forge-gui/res/tokenscripts/u_1_1_illusion_other_illusions.txt @@ -1,7 +1,7 @@ Name:Illusion Token ManaCost:no cost -Types:Creature Illusion Colors:blue +Types:Creature Illusion PT:1/1 S:Mode$ Continuous | Affected$ Card.Self | AddPower$ X | Description$ This creature gets +1/+0 for each other Illusion you control. SVar:X:Count$Valid Illusion.Other+YouCtrl diff --git a/forge-gui/res/tokenscripts/u_1_1_kraken_trample.txt b/forge-gui/res/tokenscripts/u_1_1_kraken_trample.txt index 4f58042f336..7be136e3fd4 100644 --- a/forge-gui/res/tokenscripts/u_1_1_kraken_trample.txt +++ b/forge-gui/res/tokenscripts/u_1_1_kraken_trample.txt @@ -1,7 +1,7 @@ Name:Kraken Token ManaCost:no cost -Types:Creature Kraken Colors:blue +Types:Creature Kraken PT:1/1 K:Trample Oracle:Trample diff --git a/forge-gui/res/tokenscripts/u_1_1_merfolk.txt b/forge-gui/res/tokenscripts/u_1_1_merfolk.txt index bc9724430f3..7bf8dc68b0b 100644 --- a/forge-gui/res/tokenscripts/u_1_1_merfolk.txt +++ b/forge-gui/res/tokenscripts/u_1_1_merfolk.txt @@ -1,6 +1,6 @@ Name:Merfolk Token ManaCost:no cost -Types:Creature Merfolk Colors:blue +Types:Creature Merfolk PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/u_1_1_merfolk_hexproof.txt b/forge-gui/res/tokenscripts/u_1_1_merfolk_hexproof.txt index 95a2b314af9..e1929213dbf 100644 --- a/forge-gui/res/tokenscripts/u_1_1_merfolk_hexproof.txt +++ b/forge-gui/res/tokenscripts/u_1_1_merfolk_hexproof.txt @@ -1,7 +1,7 @@ Name:Merfolk Token ManaCost:no cost -Types:Creature Merfolk Colors:blue +Types:Creature Merfolk PT:1/1 K:Hexproof Oracle:Hexproof (This creature can't be the target of spells or abilities your opponents control.) diff --git a/forge-gui/res/tokenscripts/u_1_1_merfolk_wizard.txt b/forge-gui/res/tokenscripts/u_1_1_merfolk_wizard.txt index 982516829cb..a66079522d0 100644 --- a/forge-gui/res/tokenscripts/u_1_1_merfolk_wizard.txt +++ b/forge-gui/res/tokenscripts/u_1_1_merfolk_wizard.txt @@ -1,6 +1,6 @@ Name:Merfolk Wizard Token ManaCost:no cost -Types:Creature Merfolk Wizard Colors:blue +Types:Creature Merfolk Wizard PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/u_1_1_ninja_unblockable.txt b/forge-gui/res/tokenscripts/u_1_1_ninja_unblockable.txt index 8a81448e0df..4c92826a57d 100644 --- a/forge-gui/res/tokenscripts/u_1_1_ninja_unblockable.txt +++ b/forge-gui/res/tokenscripts/u_1_1_ninja_unblockable.txt @@ -1,7 +1,7 @@ Name:Ninja Token ManaCost:no cost -Types:Creature Ninja Colors:blue +Types:Creature Ninja PT:1/1 S:Mode$ CantBlockBy | ValidAttacker$ Creature.Self | Description$ This creature can't be blocked. Oracle:This creature can't be blocked. diff --git a/forge-gui/res/tokenscripts/u_1_1_spirit_flying.txt b/forge-gui/res/tokenscripts/u_1_1_spirit_flying.txt index bdc4a1bc66a..87f35f8d219 100644 --- a/forge-gui/res/tokenscripts/u_1_1_spirit_flying.txt +++ b/forge-gui/res/tokenscripts/u_1_1_spirit_flying.txt @@ -1,7 +1,7 @@ Name:Spirit Token ManaCost:no cost -Types:Creature Spirit Colors:blue +Types:Creature Spirit PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_1_1_squid_islandwalk.txt b/forge-gui/res/tokenscripts/u_1_1_squid_islandwalk.txt index a117501c76b..c01af1a26f2 100644 --- a/forge-gui/res/tokenscripts/u_1_1_squid_islandwalk.txt +++ b/forge-gui/res/tokenscripts/u_1_1_squid_islandwalk.txt @@ -1,7 +1,7 @@ Name:Squid Token ManaCost:no cost -Types:Creature Squid Colors:blue +Types:Creature Squid PT:1/1 K:Landwalk:Island Oracle:Islandwalk (This creature can't be blocked as long as defending player controls an Island.) diff --git a/forge-gui/res/tokenscripts/u_1_1_tentacle.txt b/forge-gui/res/tokenscripts/u_1_1_tentacle.txt index 2f0720f42a9..400ecf51c7d 100644 --- a/forge-gui/res/tokenscripts/u_1_1_tentacle.txt +++ b/forge-gui/res/tokenscripts/u_1_1_tentacle.txt @@ -1,6 +1,6 @@ Name:Tentacle Token ManaCost:no cost -Types:Creature Tentacle Colors:blue +Types:Creature Tentacle PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/u_1_1_tyranid_gargoyle_flying.txt b/forge-gui/res/tokenscripts/u_1_1_tyranid_gargoyle_flying.txt index 393a19feb45..ce8e946c406 100644 --- a/forge-gui/res/tokenscripts/u_1_1_tyranid_gargoyle_flying.txt +++ b/forge-gui/res/tokenscripts/u_1_1_tyranid_gargoyle_flying.txt @@ -1,7 +1,7 @@ Name:Tyranid Gargoyle Token ManaCost:no cost -Types:Creature Tyranid Gargoyle Colors:blue +Types:Creature Tyranid Gargoyle PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_1_1_wizard_countersac.txt b/forge-gui/res/tokenscripts/u_1_1_wizard_countersac.txt index a6cd27fafc8..a4cca7019a8 100644 --- a/forge-gui/res/tokenscripts/u_1_1_wizard_countersac.txt +++ b/forge-gui/res/tokenscripts/u_1_1_wizard_countersac.txt @@ -1,7 +1,7 @@ Name:Wizard Token ManaCost:no cost +Colors:blue Types:Creature Wizard PT:1/1 -Colors:blue A:AB$ Counter | Cost$ 1 Sac<1/CARDNAME> | TargetType$ Spell | ValidTgts$ Card.nonCreature | UnlessCost$ 1 | TgtPrompt$ Select target noncreature spell | SpellDescription$ Counter target noncreature spell unless its controller pays {1}. Oracle:{1}, Sacrifice this creature: Counter target noncreature spell unless its controller pays {1}. diff --git a/forge-gui/res/tokenscripts/u_1_1_wizard_flying.txt b/forge-gui/res/tokenscripts/u_1_1_wizard_flying.txt index 13d25446b0d..eb2cd5a1820 100644 --- a/forge-gui/res/tokenscripts/u_1_1_wizard_flying.txt +++ b/forge-gui/res/tokenscripts/u_1_1_wizard_flying.txt @@ -1,7 +1,7 @@ Name:Wizard Token ManaCost:no cost -Types:Creature Wizard Colors:blue +Types:Creature Wizard PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_1_2_moonfolk_flying.txt b/forge-gui/res/tokenscripts/u_1_2_moonfolk_flying.txt index 22e0337c2c6..e7064273aa7 100644 --- a/forge-gui/res/tokenscripts/u_1_2_moonfolk_flying.txt +++ b/forge-gui/res/tokenscripts/u_1_2_moonfolk_flying.txt @@ -1,7 +1,7 @@ Name:Moonfolk Token ManaCost:no cost -Types:Creature Moonfolk Colors:blue +Types:Creature Moonfolk PT:1/2 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_2_1_a_phyrexian_myr.txt b/forge-gui/res/tokenscripts/u_2_1_a_phyrexian_myr.txt index 5e9c0bbc9d1..730aa930653 100644 --- a/forge-gui/res/tokenscripts/u_2_1_a_phyrexian_myr.txt +++ b/forge-gui/res/tokenscripts/u_2_1_a_phyrexian_myr.txt @@ -1,6 +1,6 @@ Name:Phyrexian Myr Token ManaCost:no cost -Types:Artifact Creature Phyrexian Myr Colors:blue +Types:Artifact Creature Phyrexian Myr PT:2/1 Oracle: diff --git a/forge-gui/res/tokenscripts/u_2_2_bird_flying.txt b/forge-gui/res/tokenscripts/u_2_2_bird_flying.txt index 1eb6e824437..750b53bed2c 100644 --- a/forge-gui/res/tokenscripts/u_2_2_bird_flying.txt +++ b/forge-gui/res/tokenscripts/u_2_2_bird_flying.txt @@ -1,7 +1,7 @@ Name:Bird Token ManaCost:no cost -Types:Creature Bird Colors:blue +Types:Creature Bird PT:2/2 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_2_2_djinn_monk_flying.txt b/forge-gui/res/tokenscripts/u_2_2_djinn_monk_flying.txt index 8dde331ea8a..8a13e784c9d 100644 --- a/forge-gui/res/tokenscripts/u_2_2_djinn_monk_flying.txt +++ b/forge-gui/res/tokenscripts/u_2_2_djinn_monk_flying.txt @@ -1,7 +1,7 @@ Name:Djinn Monk Token ManaCost:no cost -Types:Creature Djinn Monk Colors:blue +Types:Creature Djinn Monk PT:2/2 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_2_2_drake_flying.txt b/forge-gui/res/tokenscripts/u_2_2_drake_flying.txt index faa49a1fb8a..207a2199444 100644 --- a/forge-gui/res/tokenscripts/u_2_2_drake_flying.txt +++ b/forge-gui/res/tokenscripts/u_2_2_drake_flying.txt @@ -1,7 +1,7 @@ Name:Drake Token ManaCost:no cost -Types:Creature Drake Colors:blue +Types:Creature Drake PT:2/2 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_2_2_e_bird_flying.txt b/forge-gui/res/tokenscripts/u_2_2_e_bird_flying.txt index d88fc2f14b7..6125b15a05a 100644 --- a/forge-gui/res/tokenscripts/u_2_2_e_bird_flying.txt +++ b/forge-gui/res/tokenscripts/u_2_2_e_bird_flying.txt @@ -1,7 +1,7 @@ Name:Bird Token ManaCost:no cost -Types:Enchantment Creature Bird Colors:blue +Types:Enchantment Creature Bird PT:2/2 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_2_2_elemental_flying.txt b/forge-gui/res/tokenscripts/u_2_2_elemental_flying.txt index 9a7ea0dfa7d..e3efefaf726 100644 --- a/forge-gui/res/tokenscripts/u_2_2_elemental_flying.txt +++ b/forge-gui/res/tokenscripts/u_2_2_elemental_flying.txt @@ -1,7 +1,7 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:blue +Types:Creature Elemental PT:2/2 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_2_2_homunculus.txt b/forge-gui/res/tokenscripts/u_2_2_homunculus.txt index 2dc10401619..47916f94a77 100644 --- a/forge-gui/res/tokenscripts/u_2_2_homunculus.txt +++ b/forge-gui/res/tokenscripts/u_2_2_homunculus.txt @@ -1,6 +1,6 @@ Name:Homunculus Token ManaCost:no cost -Types:Creature Homunculus Colors:blue +Types:Creature Homunculus PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/u_2_2_illusion.txt b/forge-gui/res/tokenscripts/u_2_2_illusion.txt index 87aceedb641..badb32a3810 100644 --- a/forge-gui/res/tokenscripts/u_2_2_illusion.txt +++ b/forge-gui/res/tokenscripts/u_2_2_illusion.txt @@ -1,6 +1,6 @@ Name:Illusion Token ManaCost:no cost -Types:Creature Illusion Colors:blue +Types:Creature Illusion PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/u_2_2_illusion_illusory.txt b/forge-gui/res/tokenscripts/u_2_2_illusion_illusory.txt index 2442984e82d..1ef734d95c8 100644 --- a/forge-gui/res/tokenscripts/u_2_2_illusion_illusory.txt +++ b/forge-gui/res/tokenscripts/u_2_2_illusion_illusory.txt @@ -1,7 +1,7 @@ Name:Illusion Token ManaCost:no cost -Types:Creature Illusion Colors:blue +Types:Creature Illusion PT:2/2 T:Mode$ BecomesTarget | ValidTarget$ Card.Self | ValidSource$ Spell | TriggerZones$ Battlefield | Execute$ DoSac | TriggerDescription$ When CARDNAME becomes the target of a spell, sacrifice it. SVar:TokenTgtDies:SVar:Targeting:Dies diff --git a/forge-gui/res/tokenscripts/u_2_2_spirit_vigilance_drawcounter.txt b/forge-gui/res/tokenscripts/u_2_2_spirit_vigilance_drawcounter.txt index ab6000bc60d..01fa5ffe341 100644 --- a/forge-gui/res/tokenscripts/u_2_2_spirit_vigilance_drawcounter.txt +++ b/forge-gui/res/tokenscripts/u_2_2_spirit_vigilance_drawcounter.txt @@ -1,7 +1,7 @@ Name:Spirit Token ManaCost:no cost -Types:Creature Spirit Colors:blue +Types:Creature Spirit PT:2/2 K:Vigilance T:Mode$ Drawn | ValidCard$ Card.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever you draw a card, put a +1/+1 counter on this creature. diff --git a/forge-gui/res/tokenscripts/u_2_2_wizard.txt b/forge-gui/res/tokenscripts/u_2_2_wizard.txt index de95cbb4555..b15019263cd 100644 --- a/forge-gui/res/tokenscripts/u_2_2_wizard.txt +++ b/forge-gui/res/tokenscripts/u_2_2_wizard.txt @@ -1,6 +1,6 @@ Name:Wizard Token ManaCost:no cost -Types:Creature Wizard Colors:blue +Types:Creature Wizard PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/u_3_2_reflection.txt b/forge-gui/res/tokenscripts/u_3_2_reflection.txt index ab1f461fdbd..e48c2a9a2d1 100644 --- a/forge-gui/res/tokenscripts/u_3_2_reflection.txt +++ b/forge-gui/res/tokenscripts/u_3_2_reflection.txt @@ -1,6 +1,6 @@ Name:Reflection Token ManaCost:no cost -Types:Creature Reflection Colors:blue +Types:Creature Reflection PT:3/2 Oracle: diff --git a/forge-gui/res/tokenscripts/u_3_3_fish_hatches_whale.txt b/forge-gui/res/tokenscripts/u_3_3_fish_hatches_whale.txt index fc035326fe3..3b32b9e2e08 100644 --- a/forge-gui/res/tokenscripts/u_3_3_fish_hatches_whale.txt +++ b/forge-gui/res/tokenscripts/u_3_3_fish_hatches_whale.txt @@ -1,7 +1,7 @@ Name:Fish Token ManaCost:no cost -Types:Creature Fish Colors:blue +Types:Creature Fish PT:3/3 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When this creature dies, create a 6/6 blue Whale creature token with "When this creature dies, create a 9/9 blue Kraken creature token." SVar:TrigToken:DB$ Token | TokenScript$ u_6_6_whale_hatches_kraken | TokenOwner$ You | TokenAmount$ 1 diff --git a/forge-gui/res/tokenscripts/u_3_3_shark.txt b/forge-gui/res/tokenscripts/u_3_3_shark.txt index f9258725dd8..6efe285f1e2 100644 --- a/forge-gui/res/tokenscripts/u_3_3_shark.txt +++ b/forge-gui/res/tokenscripts/u_3_3_shark.txt @@ -1,6 +1,6 @@ Name:Shark Token ManaCost:no cost +Colors:blue Types:Creature Shark PT:3/3 -Colors:blue Oracle: diff --git a/forge-gui/res/tokenscripts/u_3_3_weird_defender_flying.txt b/forge-gui/res/tokenscripts/u_3_3_weird_defender_flying.txt index e500abe264a..b7bbf0d18b2 100644 --- a/forge-gui/res/tokenscripts/u_3_3_weird_defender_flying.txt +++ b/forge-gui/res/tokenscripts/u_3_3_weird_defender_flying.txt @@ -1,7 +1,7 @@ Name:Weird Token ManaCost:no cost -Types:Creature Weird Colors:blue +Types:Creature Weird PT:3/3 K:Defender K:Flying diff --git a/forge-gui/res/tokenscripts/u_4_3_salamander_warrior.txt b/forge-gui/res/tokenscripts/u_4_3_salamander_warrior.txt index 96686504f6b..34deddc8bd0 100644 --- a/forge-gui/res/tokenscripts/u_4_3_salamander_warrior.txt +++ b/forge-gui/res/tokenscripts/u_4_3_salamander_warrior.txt @@ -1,6 +1,6 @@ Name:Salamander Warrior Token ManaCost:no cost -Types:Creature Salamander Warrior Colors:blue +Types:Creature Salamander Warrior PT:4/3 Oracle: diff --git a/forge-gui/res/tokenscripts/u_4_4_elemental_bird_flying.txt b/forge-gui/res/tokenscripts/u_4_4_elemental_bird_flying.txt index f196cf35ff7..3a196e1e8d9 100644 --- a/forge-gui/res/tokenscripts/u_4_4_elemental_bird_flying.txt +++ b/forge-gui/res/tokenscripts/u_4_4_elemental_bird_flying.txt @@ -1,7 +1,7 @@ Name:Elemental Bird Token ManaCost:no cost -Types:Creature Elemental Bird Colors:blue +Types:Creature Elemental Bird PT:4/4 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_4_4_giant_wizard.txt b/forge-gui/res/tokenscripts/u_4_4_giant_wizard.txt index 703d80adc27..e894ac73fbb 100644 --- a/forge-gui/res/tokenscripts/u_4_4_giant_wizard.txt +++ b/forge-gui/res/tokenscripts/u_4_4_giant_wizard.txt @@ -1,6 +1,6 @@ Name:Giant Wizard Token ManaCost:no cost -Types:Creature Giant Wizard Colors:blue +Types:Creature Giant Wizard PT:4/4 Oracle: diff --git a/forge-gui/res/tokenscripts/u_4_4_sphinx_flying.txt b/forge-gui/res/tokenscripts/u_4_4_sphinx_flying.txt index 404ccf870fb..3af2bb4b77c 100644 --- a/forge-gui/res/tokenscripts/u_4_4_sphinx_flying.txt +++ b/forge-gui/res/tokenscripts/u_4_4_sphinx_flying.txt @@ -1,7 +1,7 @@ Name:Sphinx Token ManaCost:no cost -Types:Creature Sphinx Colors:blue +Types:Creature Sphinx PT:4/4 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_5_5_dragon_spirit_flying.txt b/forge-gui/res/tokenscripts/u_5_5_dragon_spirit_flying.txt index 4b48ffe7a32..bd7e41bbfe1 100644 --- a/forge-gui/res/tokenscripts/u_5_5_dragon_spirit_flying.txt +++ b/forge-gui/res/tokenscripts/u_5_5_dragon_spirit_flying.txt @@ -1,7 +1,7 @@ Name:Dragon Spirit Token ManaCost:no cost -Types:Creature Dragon Spirit Colors:blue +Types:Creature Dragon Spirit PT:5/5 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_5_5_wall_defender.txt b/forge-gui/res/tokenscripts/u_5_5_wall_defender.txt index a8c0851fcd8..847e4167bca 100644 --- a/forge-gui/res/tokenscripts/u_5_5_wall_defender.txt +++ b/forge-gui/res/tokenscripts/u_5_5_wall_defender.txt @@ -1,7 +1,7 @@ Name:Wall Token ManaCost:no cost -Types:Creature Wall Colors:blue +Types:Creature Wall PT:5/5 K:Defender Oracle:Defender diff --git a/forge-gui/res/tokenscripts/u_6_6_whale_hatches_kraken.txt b/forge-gui/res/tokenscripts/u_6_6_whale_hatches_kraken.txt index da332375e26..3f8c10cc4f1 100644 --- a/forge-gui/res/tokenscripts/u_6_6_whale_hatches_kraken.txt +++ b/forge-gui/res/tokenscripts/u_6_6_whale_hatches_kraken.txt @@ -1,7 +1,7 @@ Name:Whale Token ManaCost:no cost -Types:Creature Whale Colors:blue +Types:Creature Whale PT:6/6 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When this creature dies, create a 9/9 blue Kraken creature token. SVar:TrigToken:DB$ Token | TokenScript$ u_9_9_kraken | TokenOwner$ You | TokenAmount$ 1 diff --git a/forge-gui/res/tokenscripts/u_8_8_kraken.txt b/forge-gui/res/tokenscripts/u_8_8_kraken.txt index 10763964059..8a1751fcaa8 100644 --- a/forge-gui/res/tokenscripts/u_8_8_kraken.txt +++ b/forge-gui/res/tokenscripts/u_8_8_kraken.txt @@ -1,6 +1,6 @@ Name:Kraken Token ManaCost:no cost -Types:Creature Kraken Colors:blue +Types:Creature Kraken PT:8/8 Oracle: diff --git a/forge-gui/res/tokenscripts/u_8_8_kraken_hexproof.txt b/forge-gui/res/tokenscripts/u_8_8_kraken_hexproof.txt index c1cb63acb88..808cf533efd 100644 --- a/forge-gui/res/tokenscripts/u_8_8_kraken_hexproof.txt +++ b/forge-gui/res/tokenscripts/u_8_8_kraken_hexproof.txt @@ -1,7 +1,7 @@ Name:Kraken Token ManaCost:no cost -Types:Creature Kraken Colors:blue +Types:Creature Kraken PT:8/8 K:Hexproof Oracle:Hexproof diff --git a/forge-gui/res/tokenscripts/u_8_8_octopus.txt b/forge-gui/res/tokenscripts/u_8_8_octopus.txt index f0271827a2b..677d452832d 100644 --- a/forge-gui/res/tokenscripts/u_8_8_octopus.txt +++ b/forge-gui/res/tokenscripts/u_8_8_octopus.txt @@ -1,6 +1,6 @@ Name:Octopus Token ManaCost:no cost -Types:Creature Octopus Colors:blue +Types:Creature Octopus PT:8/8 Oracle: diff --git a/forge-gui/res/tokenscripts/u_9_9_kraken.txt b/forge-gui/res/tokenscripts/u_9_9_kraken.txt index 3d21db33684..afde2c60d2e 100644 --- a/forge-gui/res/tokenscripts/u_9_9_kraken.txt +++ b/forge-gui/res/tokenscripts/u_9_9_kraken.txt @@ -1,6 +1,6 @@ Name:Kraken Token ManaCost:no cost -Types:Creature Kraken Colors:blue +Types:Creature Kraken PT:9/9 Oracle: diff --git a/forge-gui/res/tokenscripts/u_m1_m1_squid.txt b/forge-gui/res/tokenscripts/u_m1_m1_squid.txt index 9c9417adeb8..4cdde47ee7f 100644 --- a/forge-gui/res/tokenscripts/u_m1_m1_squid.txt +++ b/forge-gui/res/tokenscripts/u_m1_m1_squid.txt @@ -1,6 +1,6 @@ Name:Squid Token ManaCost:no cost -Types:Creature Squid Colors:blue +Types:Creature Squid PT:-1/-1 Oracle: diff --git a/forge-gui/res/tokenscripts/u_x_x_dog_illusion_cardsinhand.txt b/forge-gui/res/tokenscripts/u_x_x_dog_illusion_cardsinhand.txt index 039b41993f8..5bfd1de018b 100644 --- a/forge-gui/res/tokenscripts/u_x_x_dog_illusion_cardsinhand.txt +++ b/forge-gui/res/tokenscripts/u_x_x_dog_illusion_cardsinhand.txt @@ -1,7 +1,7 @@ Name:Dog Illusion Token ManaCost:no cost -Types:Creature Dog Illusion Colors:blue +Types:Creature Dog Illusion PT:*/* S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | SetPower$ X | SetToughness$ X | Description$ This creature's power and toughness are each equal to twice the number of cards in your hand. SVar:X:Count$InYourHand/Times.2 diff --git a/forge-gui/res/tokenscripts/u_x_x_illusion.txt b/forge-gui/res/tokenscripts/u_x_x_illusion.txt index b3ef8c1cf1c..9e7e74695c6 100644 --- a/forge-gui/res/tokenscripts/u_x_x_illusion.txt +++ b/forge-gui/res/tokenscripts/u_x_x_illusion.txt @@ -1,6 +1,6 @@ Name:Illusion Token ManaCost:no cost -Types:Creature Illusion Colors:blue +Types:Creature Illusion PT:*/* Oracle: From 042638612e73bb2b5f0ded10989d30c7e3c05e69 Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 09:34:22 +0100 Subject: [PATCH 17/91] Edit pile cleanup: Line reordering, first pass: part 9, folder 'tokenscripts', part 5 --- forge-gui/res/tokenscripts/u_x_x_orb_flying.txt | 2 +- forge-gui/res/tokenscripts/u_x_x_shark_flying.txt | 2 +- forge-gui/res/tokenscripts/u_x_x_zombie.txt | 2 +- forge-gui/res/tokenscripts/ub_1_1_faerie_rogue_flying.txt | 2 +- forge-gui/res/tokenscripts/ub_1_1_horror_flying.txt | 2 +- forge-gui/res/tokenscripts/ub_1_1_zombie_wizard.txt | 2 +- forge-gui/res/tokenscripts/ub_2_2_zombie_rogue.txt | 2 +- forge-gui/res/tokenscripts/ub_2_3_nightmare_mill.txt | 2 +- forge-gui/res/tokenscripts/ub_x_x_zombie_menace.txt | 2 +- forge-gui/res/tokenscripts/ur_1_1_insect_flying_haste.txt | 2 +- forge-gui/res/tokenscripts/ur_5_5_elemental_flying.txt | 2 +- forge-gui/res/tokenscripts/ur_x_x_weird.txt | 2 +- forge-gui/res/tokenscripts/urami.txt | 2 +- forge-gui/res/tokenscripts/vecna.txt | 2 +- forge-gui/res/tokenscripts/voja.txt | 2 +- forge-gui/res/tokenscripts/voja_fenstalker.txt | 2 +- forge-gui/res/tokenscripts/voja_friend_to_elves.txt | 2 +- forge-gui/res/tokenscripts/w_0_0_spirit_flying.txt | 2 +- forge-gui/res/tokenscripts/w_0_1_caribou.txt | 2 +- forge-gui/res/tokenscripts/w_0_1_deserter.txt | 2 +- forge-gui/res/tokenscripts/w_0_1_goat.txt | 2 +- forge-gui/res/tokenscripts/w_0_3_wall_defender.txt | 2 +- forge-gui/res/tokenscripts/w_0_4_wall_defender.txt | 2 +- forge-gui/res/tokenscripts/w_0_4_wall_defender_flying.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_a_clown_robot.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_bird_flying.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_bird_soldier_flying.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_cat.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_cat_bird_flying.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_cat_lifelink.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_cat_soldier_vigilance.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_citizen.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_cleric_lifelink.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_dog.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_e_soldier.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_halfling.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_human.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_human_doctor_reduce.txt | 2 +- .../res/tokenscripts/w_1_1_human_noble_vanishing_prevention.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_human_rogue.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_human_soldier.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_human_ward.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_human_warrior.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_kithkin_soldier.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_kor_ally.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_kor_soldier.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_kor_warrior.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_monk_prowess.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_mouse.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_pegasus_flying.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_rabbit.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_sheep.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_soldier.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_soldier_ally.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_soldier_lifelink.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_spirit_flying.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_vampire_lifelink.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_warrior.txt | 2 +- forge-gui/res/tokenscripts/w_1_1_warrior_vigilance.txt | 2 +- forge-gui/res/tokenscripts/w_1_2_soldier_defender.txt | 2 +- forge-gui/res/tokenscripts/w_2_1_cat_warrior.txt | 2 +- forge-gui/res/tokenscripts/w_2_1_e_cleric.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_alien.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_astartes_warrior_vigilance.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_cat.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_cat_beast.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_fox_vigilance.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_griffin_flying.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_horse_horsemanship.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_human_knight_artifact_pump.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_knight.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_knight_ally.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_knight_first_strike.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_knight_pro_red.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_knight_vigilance.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_ox.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_pegasus_flying.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_performer.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_reflection.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_samurai_double_strike.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_samurai_vigilance.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_soldier_vigilance.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_spirit_flying.txt | 2 +- forge-gui/res/tokenscripts/w_2_2_unicorn.txt | 2 +- forge-gui/res/tokenscripts/w_2_4_ox.txt | 2 +- forge-gui/res/tokenscripts/w_3_3_angel_flying.txt | 2 +- forge-gui/res/tokenscripts/w_3_3_bird_flying.txt | 2 +- forge-gui/res/tokenscripts/w_3_3_bird_flying_attacks.txt | 2 +- forge-gui/res/tokenscripts/w_3_3_spirit_flying.txt | 2 +- forge-gui/res/tokenscripts/w_3_4_bird_flying.txt | 2 +- forge-gui/res/tokenscripts/w_4_4_alien_rhino.txt | 2 +- forge-gui/res/tokenscripts/w_4_4_angel_flying.txt | 2 +- forge-gui/res/tokenscripts/w_4_4_angel_flying_vigilance.txt | 2 +- forge-gui/res/tokenscripts/w_4_4_angel_warrior_flying.txt | 2 +- .../res/tokenscripts/w_4_4_angel_warrior_flying_vigilance.txt | 2 +- forge-gui/res/tokenscripts/w_4_4_avatar_flying.txt | 2 +- forge-gui/res/tokenscripts/w_4_4_beast_lonely.txt | 2 +- forge-gui/res/tokenscripts/w_4_4_elemental_flying.txt | 2 +- forge-gui/res/tokenscripts/w_4_4_spirit_flying.txt | 2 +- forge-gui/res/tokenscripts/w_5_5_giant_warrior.txt | 2 +- 100 files changed, 100 insertions(+), 100 deletions(-) diff --git a/forge-gui/res/tokenscripts/u_x_x_orb_flying.txt b/forge-gui/res/tokenscripts/u_x_x_orb_flying.txt index 15e0b6cf47e..4630f498ccb 100644 --- a/forge-gui/res/tokenscripts/u_x_x_orb_flying.txt +++ b/forge-gui/res/tokenscripts/u_x_x_orb_flying.txt @@ -1,7 +1,7 @@ Name:Orb Token ManaCost:no cost -Types:Creature Orb Colors:blue +Types:Creature Orb PT:*/* K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_x_x_shark_flying.txt b/forge-gui/res/tokenscripts/u_x_x_shark_flying.txt index 2887c478d75..50cd6315c3a 100644 --- a/forge-gui/res/tokenscripts/u_x_x_shark_flying.txt +++ b/forge-gui/res/tokenscripts/u_x_x_shark_flying.txt @@ -1,7 +1,7 @@ Name:Shark Token ManaCost:no cost -Types:Creature Shark Colors:blue +Types:Creature Shark PT:*/* K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/u_x_x_zombie.txt b/forge-gui/res/tokenscripts/u_x_x_zombie.txt index c1e95a0428c..c05879c5716 100644 --- a/forge-gui/res/tokenscripts/u_x_x_zombie.txt +++ b/forge-gui/res/tokenscripts/u_x_x_zombie.txt @@ -1,6 +1,6 @@ Name:Zombie Token ManaCost:no cost -Types:Creature Zombie Colors:blue +Types:Creature Zombie PT:*/* Oracle: diff --git a/forge-gui/res/tokenscripts/ub_1_1_faerie_rogue_flying.txt b/forge-gui/res/tokenscripts/ub_1_1_faerie_rogue_flying.txt index bcbdd7d7302..dffa295f2b7 100644 --- a/forge-gui/res/tokenscripts/ub_1_1_faerie_rogue_flying.txt +++ b/forge-gui/res/tokenscripts/ub_1_1_faerie_rogue_flying.txt @@ -1,7 +1,7 @@ Name:Faerie Rogue Token ManaCost:no cost -Types:Creature Faerie Rogue Colors:blue,black +Types:Creature Faerie Rogue PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/ub_1_1_horror_flying.txt b/forge-gui/res/tokenscripts/ub_1_1_horror_flying.txt index 355357d49d3..22bb79840d0 100644 --- a/forge-gui/res/tokenscripts/ub_1_1_horror_flying.txt +++ b/forge-gui/res/tokenscripts/ub_1_1_horror_flying.txt @@ -1,7 +1,7 @@ Name:Horror Token ManaCost:no cost -Types:Creature Horror Colors:blue,black +Types:Creature Horror PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/ub_1_1_zombie_wizard.txt b/forge-gui/res/tokenscripts/ub_1_1_zombie_wizard.txt index 623e08fdfe0..4f1a13a53c8 100644 --- a/forge-gui/res/tokenscripts/ub_1_1_zombie_wizard.txt +++ b/forge-gui/res/tokenscripts/ub_1_1_zombie_wizard.txt @@ -1,6 +1,6 @@ Name:Zombie Wizard Token ManaCost:no cost -Types:Creature Zombie Wizard Colors:blue,black +Types:Creature Zombie Wizard PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/ub_2_2_zombie_rogue.txt b/forge-gui/res/tokenscripts/ub_2_2_zombie_rogue.txt index 65c213f7f1f..108368d8701 100644 --- a/forge-gui/res/tokenscripts/ub_2_2_zombie_rogue.txt +++ b/forge-gui/res/tokenscripts/ub_2_2_zombie_rogue.txt @@ -1,6 +1,6 @@ Name:Zombie Rogue Token ManaCost:no cost -Types:Creature Zombie Rogue Colors:blue,black +Types:Creature Zombie Rogue PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/ub_2_3_nightmare_mill.txt b/forge-gui/res/tokenscripts/ub_2_3_nightmare_mill.txt index 74fd1d5bcb2..85c0ebe5dfc 100644 --- a/forge-gui/res/tokenscripts/ub_2_3_nightmare_mill.txt +++ b/forge-gui/res/tokenscripts/ub_2_3_nightmare_mill.txt @@ -1,7 +1,7 @@ Name:Nightmare Token ManaCost:no cost -Types:Creature Nightmare Colors:blue,black +Types:Creature Nightmare PT:2/3 T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ DBExile | TriggerDescription$ Whenever this creature attacks or blocks, each opponent exiles the top two cards of their library. T:Mode$ Blocks | ValidCard$ Card.Self | Execute$ DBExile | Secondary$ True | TriggerDescription$ Whenever this creature attacks or blocks, each opponent exiles the top two cards of their library. diff --git a/forge-gui/res/tokenscripts/ub_x_x_zombie_menace.txt b/forge-gui/res/tokenscripts/ub_x_x_zombie_menace.txt index 1c678377f69..61185a7cd93 100644 --- a/forge-gui/res/tokenscripts/ub_x_x_zombie_menace.txt +++ b/forge-gui/res/tokenscripts/ub_x_x_zombie_menace.txt @@ -1,7 +1,7 @@ Name:Zombie Token ManaCost:no cost -Types:Creature Zombie Colors:blue,black +Types:Creature Zombie PT:*/* K:Menace Oracle:Menace diff --git a/forge-gui/res/tokenscripts/ur_1_1_insect_flying_haste.txt b/forge-gui/res/tokenscripts/ur_1_1_insect_flying_haste.txt index a1d233924ce..b0d4d691458 100644 --- a/forge-gui/res/tokenscripts/ur_1_1_insect_flying_haste.txt +++ b/forge-gui/res/tokenscripts/ur_1_1_insect_flying_haste.txt @@ -1,7 +1,7 @@ Name:Insect Token ManaCost:no cost -Types:Creature Insect Colors:blue,red +Types:Creature Insect PT:1/1 K:Flying K:Haste diff --git a/forge-gui/res/tokenscripts/ur_5_5_elemental_flying.txt b/forge-gui/res/tokenscripts/ur_5_5_elemental_flying.txt index 42a59815767..bc2b96cd3f0 100644 --- a/forge-gui/res/tokenscripts/ur_5_5_elemental_flying.txt +++ b/forge-gui/res/tokenscripts/ur_5_5_elemental_flying.txt @@ -1,7 +1,7 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:blue,red +Types:Creature Elemental PT:5/5 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/ur_x_x_weird.txt b/forge-gui/res/tokenscripts/ur_x_x_weird.txt index d9e4ad756b8..52e36979412 100644 --- a/forge-gui/res/tokenscripts/ur_x_x_weird.txt +++ b/forge-gui/res/tokenscripts/ur_x_x_weird.txt @@ -1,6 +1,6 @@ Name:Weird Token ManaCost:no cost -Types:Creature Weird Colors:blue,red +Types:Creature Weird PT:*/* Oracle: diff --git a/forge-gui/res/tokenscripts/urami.txt b/forge-gui/res/tokenscripts/urami.txt index 78988005561..b7cfe23b551 100644 --- a/forge-gui/res/tokenscripts/urami.txt +++ b/forge-gui/res/tokenscripts/urami.txt @@ -1,7 +1,7 @@ Name:Urami ManaCost:no cost -Types:Legendary Creature Demon Spirit Colors:black +Types:Legendary Creature Demon Spirit PT:5/5 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/vecna.txt b/forge-gui/res/tokenscripts/vecna.txt index d1d06866e4f..5f7c120a037 100644 --- a/forge-gui/res/tokenscripts/vecna.txt +++ b/forge-gui/res/tokenscripts/vecna.txt @@ -1,7 +1,7 @@ Name:Vecna ManaCost:no cost -Types:Legendary Creature Zombie God Colors:black +Types:Legendary Creature Zombie God PT:8/8 K:Indestructible Oracle:Indestructible diff --git a/forge-gui/res/tokenscripts/voja.txt b/forge-gui/res/tokenscripts/voja.txt index 52c2fbc381b..a4747313624 100644 --- a/forge-gui/res/tokenscripts/voja.txt +++ b/forge-gui/res/tokenscripts/voja.txt @@ -1,6 +1,6 @@ Name:Voja ManaCost:no cost -Types:Legendary Creature Wolf Colors:white,green +Types:Legendary Creature Wolf PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/voja_fenstalker.txt b/forge-gui/res/tokenscripts/voja_fenstalker.txt index a12d9268023..d53238c0f77 100644 --- a/forge-gui/res/tokenscripts/voja_fenstalker.txt +++ b/forge-gui/res/tokenscripts/voja_fenstalker.txt @@ -1,7 +1,7 @@ Name:Voja Fenstalker ManaCost:no cost -Types:Legendary Creature Wolf Colors:white,green +Types:Legendary Creature Wolf PT:5/5 K:Trample Oracle:Trample diff --git a/forge-gui/res/tokenscripts/voja_friend_to_elves.txt b/forge-gui/res/tokenscripts/voja_friend_to_elves.txt index 4476bc0e7e1..5bb44aa58a7 100644 --- a/forge-gui/res/tokenscripts/voja_friend_to_elves.txt +++ b/forge-gui/res/tokenscripts/voja_friend_to_elves.txt @@ -1,6 +1,6 @@ Name:Voja, Friend to Elves ManaCost:no cost -Types:Legendary Creature Wolf Colors:white,green +Types:Legendary Creature Wolf PT:3/3 Oracle: diff --git a/forge-gui/res/tokenscripts/w_0_0_spirit_flying.txt b/forge-gui/res/tokenscripts/w_0_0_spirit_flying.txt index 7ce49149877..f223e05f8c5 100644 --- a/forge-gui/res/tokenscripts/w_0_0_spirit_flying.txt +++ b/forge-gui/res/tokenscripts/w_0_0_spirit_flying.txt @@ -1,7 +1,7 @@ Name:Spirit Token ManaCost:no cost -Types:Creature Spirit Colors:white +Types:Creature Spirit PT:0/0 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/w_0_1_caribou.txt b/forge-gui/res/tokenscripts/w_0_1_caribou.txt index bc627ef437c..d365c793d51 100644 --- a/forge-gui/res/tokenscripts/w_0_1_caribou.txt +++ b/forge-gui/res/tokenscripts/w_0_1_caribou.txt @@ -1,6 +1,6 @@ Name:Caribou Token ManaCost:no cost -Types:Creature Caribou Colors:white +Types:Creature Caribou PT:0/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_0_1_deserter.txt b/forge-gui/res/tokenscripts/w_0_1_deserter.txt index cfd0c97c748..e0b778a46f8 100644 --- a/forge-gui/res/tokenscripts/w_0_1_deserter.txt +++ b/forge-gui/res/tokenscripts/w_0_1_deserter.txt @@ -1,6 +1,6 @@ Name:Deserter Token ManaCost:no cost -Types:Creature Deserter Colors:white +Types:Creature Deserter PT:0/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_0_1_goat.txt b/forge-gui/res/tokenscripts/w_0_1_goat.txt index dc0fd93ac9f..e40525ba4b4 100644 --- a/forge-gui/res/tokenscripts/w_0_1_goat.txt +++ b/forge-gui/res/tokenscripts/w_0_1_goat.txt @@ -1,6 +1,6 @@ Name:Goat Token ManaCost:no cost -Types:Creature Goat Colors:white +Types:Creature Goat PT:0/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_0_3_wall_defender.txt b/forge-gui/res/tokenscripts/w_0_3_wall_defender.txt index da45aec9e9d..5134a0c19fc 100644 --- a/forge-gui/res/tokenscripts/w_0_3_wall_defender.txt +++ b/forge-gui/res/tokenscripts/w_0_3_wall_defender.txt @@ -1,7 +1,7 @@ Name:Wall Token ManaCost:no cost -Types:Creature Wall Colors:white +Types:Creature Wall PT:0/3 K:Defender Oracle:Defender diff --git a/forge-gui/res/tokenscripts/w_0_4_wall_defender.txt b/forge-gui/res/tokenscripts/w_0_4_wall_defender.txt index 955653d6718..836c518c607 100644 --- a/forge-gui/res/tokenscripts/w_0_4_wall_defender.txt +++ b/forge-gui/res/tokenscripts/w_0_4_wall_defender.txt @@ -1,7 +1,7 @@ Name:Wall Token ManaCost:no cost -Types:Creature Wall Colors:white +Types:Creature Wall PT:0/4 K:Defender Oracle:Defender diff --git a/forge-gui/res/tokenscripts/w_0_4_wall_defender_flying.txt b/forge-gui/res/tokenscripts/w_0_4_wall_defender_flying.txt index eab08f0eaa0..cf4870960d9 100644 --- a/forge-gui/res/tokenscripts/w_0_4_wall_defender_flying.txt +++ b/forge-gui/res/tokenscripts/w_0_4_wall_defender_flying.txt @@ -1,7 +1,7 @@ Name:Wall Token ManaCost:no cost -Types:Creature Wall Colors:white +Types:Creature Wall PT:0/4 K:Defender K:Flying diff --git a/forge-gui/res/tokenscripts/w_1_1_a_clown_robot.txt b/forge-gui/res/tokenscripts/w_1_1_a_clown_robot.txt index ef7c3d15e38..a059cc25f95 100644 --- a/forge-gui/res/tokenscripts/w_1_1_a_clown_robot.txt +++ b/forge-gui/res/tokenscripts/w_1_1_a_clown_robot.txt @@ -1,6 +1,6 @@ Name:Clown Robot Token ManaCost:no cost -Types:Artifact Creature Clown Robot Colors:white +Types:Artifact Creature Clown Robot PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_bird_flying.txt b/forge-gui/res/tokenscripts/w_1_1_bird_flying.txt index 9cf83dde896..d56496739ba 100644 --- a/forge-gui/res/tokenscripts/w_1_1_bird_flying.txt +++ b/forge-gui/res/tokenscripts/w_1_1_bird_flying.txt @@ -1,7 +1,7 @@ Name:Bird Token ManaCost:no cost -Types:Creature Bird Colors:white +Types:Creature Bird PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/w_1_1_bird_soldier_flying.txt b/forge-gui/res/tokenscripts/w_1_1_bird_soldier_flying.txt index 61bb6a6a54b..ce475f4b047 100644 --- a/forge-gui/res/tokenscripts/w_1_1_bird_soldier_flying.txt +++ b/forge-gui/res/tokenscripts/w_1_1_bird_soldier_flying.txt @@ -1,7 +1,7 @@ Name:Bird Soldier Token ManaCost:no cost -Types:Creature Bird Soldier Colors:white +Types:Creature Bird Soldier PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/w_1_1_cat.txt b/forge-gui/res/tokenscripts/w_1_1_cat.txt index ddab95a5433..46180359377 100644 --- a/forge-gui/res/tokenscripts/w_1_1_cat.txt +++ b/forge-gui/res/tokenscripts/w_1_1_cat.txt @@ -1,6 +1,6 @@ Name:Cat Token ManaCost:no cost -PT:1/1 Colors:white Types:Creature Cat +PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_cat_bird_flying.txt b/forge-gui/res/tokenscripts/w_1_1_cat_bird_flying.txt index 5045fe97d31..f9c0a6ffa0f 100644 --- a/forge-gui/res/tokenscripts/w_1_1_cat_bird_flying.txt +++ b/forge-gui/res/tokenscripts/w_1_1_cat_bird_flying.txt @@ -1,7 +1,7 @@ Name:Cat Bird Token ManaCost:no cost -Types:Creature Cat Bird Colors:white +Types:Creature Cat Bird PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/w_1_1_cat_lifelink.txt b/forge-gui/res/tokenscripts/w_1_1_cat_lifelink.txt index d9095ba9d4a..bae122581a4 100644 --- a/forge-gui/res/tokenscripts/w_1_1_cat_lifelink.txt +++ b/forge-gui/res/tokenscripts/w_1_1_cat_lifelink.txt @@ -1,7 +1,7 @@ Name:Cat Token ManaCost:no cost -Types:Creature Cat Colors:white +Types:Creature Cat PT:1/1 K:Lifelink Oracle:Lifelink diff --git a/forge-gui/res/tokenscripts/w_1_1_cat_soldier_vigilance.txt b/forge-gui/res/tokenscripts/w_1_1_cat_soldier_vigilance.txt index a43f079efc5..dc617920280 100644 --- a/forge-gui/res/tokenscripts/w_1_1_cat_soldier_vigilance.txt +++ b/forge-gui/res/tokenscripts/w_1_1_cat_soldier_vigilance.txt @@ -1,7 +1,7 @@ Name:Cat Soldier Token ManaCost:no cost -Types:Creature Cat Soldier Colors:white +Types:Creature Cat Soldier PT:1/1 K:Vigilance Oracle:Vigilance diff --git a/forge-gui/res/tokenscripts/w_1_1_citizen.txt b/forge-gui/res/tokenscripts/w_1_1_citizen.txt index b15f51242b9..1f72fca3e38 100644 --- a/forge-gui/res/tokenscripts/w_1_1_citizen.txt +++ b/forge-gui/res/tokenscripts/w_1_1_citizen.txt @@ -1,6 +1,6 @@ Name:Citizen Token ManaCost:no cost -Types:Creature Citizen Colors:white +Types:Creature Citizen PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_cleric_lifelink.txt b/forge-gui/res/tokenscripts/w_1_1_cleric_lifelink.txt index 1734071261c..ba1c9597191 100644 --- a/forge-gui/res/tokenscripts/w_1_1_cleric_lifelink.txt +++ b/forge-gui/res/tokenscripts/w_1_1_cleric_lifelink.txt @@ -1,7 +1,7 @@ Name:Cleric Token ManaCost:no cost -Types:Creature Cleric Colors:white +Types:Creature Cleric PT:1/1 K:Lifelink Oracle:Lifelink diff --git a/forge-gui/res/tokenscripts/w_1_1_dog.txt b/forge-gui/res/tokenscripts/w_1_1_dog.txt index e4dfc09ea0c..d1adf680305 100644 --- a/forge-gui/res/tokenscripts/w_1_1_dog.txt +++ b/forge-gui/res/tokenscripts/w_1_1_dog.txt @@ -1,6 +1,6 @@ Name:Dog Token ManaCost:no cost -PT:1/1 Colors:white Types:Creature Dog +PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_e_soldier.txt b/forge-gui/res/tokenscripts/w_1_1_e_soldier.txt index cdb86fd26f2..6995da2ed1c 100644 --- a/forge-gui/res/tokenscripts/w_1_1_e_soldier.txt +++ b/forge-gui/res/tokenscripts/w_1_1_e_soldier.txt @@ -1,6 +1,6 @@ Name:Soldier Token ManaCost:no cost -Types:Enchantment Creature Soldier Colors:white +Types:Enchantment Creature Soldier PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_halfling.txt b/forge-gui/res/tokenscripts/w_1_1_halfling.txt index d20addc1105..05d3f011e31 100644 --- a/forge-gui/res/tokenscripts/w_1_1_halfling.txt +++ b/forge-gui/res/tokenscripts/w_1_1_halfling.txt @@ -1,6 +1,6 @@ Name:Halfling Token ManaCost:no cost -Types:Creature Halfling Colors:white +Types:Creature Halfling PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_human.txt b/forge-gui/res/tokenscripts/w_1_1_human.txt index 428765a5613..fdb891d2626 100644 --- a/forge-gui/res/tokenscripts/w_1_1_human.txt +++ b/forge-gui/res/tokenscripts/w_1_1_human.txt @@ -1,6 +1,6 @@ Name:Human Token ManaCost:no cost -Types:Creature Human Colors:white +Types:Creature Human PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_human_doctor_reduce.txt b/forge-gui/res/tokenscripts/w_1_1_human_doctor_reduce.txt index dce42f0f578..be7528276ff 100644 --- a/forge-gui/res/tokenscripts/w_1_1_human_doctor_reduce.txt +++ b/forge-gui/res/tokenscripts/w_1_1_human_doctor_reduce.txt @@ -1,7 +1,7 @@ Name:Human Token ManaCost:no cost -Types:Creature Human Colors:white +Types:Creature Human PT:1/1 S:Mode$ ReduceCost | ValidCard$ Doctor | Type$ Spell | Activator$ You | Amount$ 1 | Description$ Doctor spells you cast cost {1} less to cast. Oracle:Doctor spells you cast cost 1 less to cast. diff --git a/forge-gui/res/tokenscripts/w_1_1_human_noble_vanishing_prevention.txt b/forge-gui/res/tokenscripts/w_1_1_human_noble_vanishing_prevention.txt index 4b8b2f62c84..7f18cbc73ee 100644 --- a/forge-gui/res/tokenscripts/w_1_1_human_noble_vanishing_prevention.txt +++ b/forge-gui/res/tokenscripts/w_1_1_human_noble_vanishing_prevention.txt @@ -1,7 +1,7 @@ Name:Human Noble Token ManaCost:no cost -Types:Creature Human Noble Colors:white +Types:Creature Human Noble PT:1/1 K:Vanishing:3 K:Prevent all damage that would be dealt to CARDNAME. diff --git a/forge-gui/res/tokenscripts/w_1_1_human_rogue.txt b/forge-gui/res/tokenscripts/w_1_1_human_rogue.txt index 2ecb49615c5..75e6de81f49 100644 --- a/forge-gui/res/tokenscripts/w_1_1_human_rogue.txt +++ b/forge-gui/res/tokenscripts/w_1_1_human_rogue.txt @@ -1,6 +1,6 @@ Name:Human Rogue Token ManaCost:no cost -Types:Creature Human Rogue Colors:white +Types:Creature Human Rogue PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_human_soldier.txt b/forge-gui/res/tokenscripts/w_1_1_human_soldier.txt index 6e219cd35ad..3878aa7ef64 100644 --- a/forge-gui/res/tokenscripts/w_1_1_human_soldier.txt +++ b/forge-gui/res/tokenscripts/w_1_1_human_soldier.txt @@ -1,6 +1,6 @@ Name:Human Soldier Token ManaCost:no cost -Types:Creature Human Soldier Colors:white +Types:Creature Human Soldier PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_human_ward.txt b/forge-gui/res/tokenscripts/w_1_1_human_ward.txt index 391d11f7b85..74eba77b70e 100644 --- a/forge-gui/res/tokenscripts/w_1_1_human_ward.txt +++ b/forge-gui/res/tokenscripts/w_1_1_human_ward.txt @@ -1,7 +1,7 @@ Name:Human Token ManaCost:no cost -Types:Creature Human Colors:white +Types:Creature Human PT:1/1 K:Ward:2 Oracle:Ward 2 (Whenever this creature becomes the target of a spell or ability an opponent controls, counter it unless that player pays 2.) diff --git a/forge-gui/res/tokenscripts/w_1_1_human_warrior.txt b/forge-gui/res/tokenscripts/w_1_1_human_warrior.txt index c90f586d894..e1a2c40797b 100644 --- a/forge-gui/res/tokenscripts/w_1_1_human_warrior.txt +++ b/forge-gui/res/tokenscripts/w_1_1_human_warrior.txt @@ -1,6 +1,6 @@ Name:Human Warrior Token ManaCost:no cost -Types:Creature Human Warrior Colors:white +Types:Creature Human Warrior PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_kithkin_soldier.txt b/forge-gui/res/tokenscripts/w_1_1_kithkin_soldier.txt index e54c871cec8..036e64ed860 100644 --- a/forge-gui/res/tokenscripts/w_1_1_kithkin_soldier.txt +++ b/forge-gui/res/tokenscripts/w_1_1_kithkin_soldier.txt @@ -1,6 +1,6 @@ Name:Kithkin Soldier Token ManaCost:no cost -Types:Creature Kithkin Soldier Colors:white +Types:Creature Kithkin Soldier PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_kor_ally.txt b/forge-gui/res/tokenscripts/w_1_1_kor_ally.txt index ae018d2656f..02448c31d6c 100644 --- a/forge-gui/res/tokenscripts/w_1_1_kor_ally.txt +++ b/forge-gui/res/tokenscripts/w_1_1_kor_ally.txt @@ -1,6 +1,6 @@ Name:Kor Ally Token ManaCost:no cost -Types:Creature Kor Ally Colors:white +Types:Creature Kor Ally PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_kor_soldier.txt b/forge-gui/res/tokenscripts/w_1_1_kor_soldier.txt index fb6d334879a..f80404d0d78 100644 --- a/forge-gui/res/tokenscripts/w_1_1_kor_soldier.txt +++ b/forge-gui/res/tokenscripts/w_1_1_kor_soldier.txt @@ -1,6 +1,6 @@ Name:Kor Soldier Token ManaCost:no cost -Types:Creature Kor Soldier Colors:white +Types:Creature Kor Soldier PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_kor_warrior.txt b/forge-gui/res/tokenscripts/w_1_1_kor_warrior.txt index f6a48a0b50d..c68ec969853 100644 --- a/forge-gui/res/tokenscripts/w_1_1_kor_warrior.txt +++ b/forge-gui/res/tokenscripts/w_1_1_kor_warrior.txt @@ -1,6 +1,6 @@ Name:Kor Warrior Token ManaCost:no cost -Types:Creature Kor Warrior Colors:white +Types:Creature Kor Warrior PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_monk_prowess.txt b/forge-gui/res/tokenscripts/w_1_1_monk_prowess.txt index 8e3badcc277..a7846be5e69 100644 --- a/forge-gui/res/tokenscripts/w_1_1_monk_prowess.txt +++ b/forge-gui/res/tokenscripts/w_1_1_monk_prowess.txt @@ -1,7 +1,7 @@ Name:Monk Token ManaCost:no cost -Types:Creature Monk Colors:white +Types:Creature Monk PT:1/1 K:Prowess Oracle:Prowess (Whenever you cast a noncreature spell, this creature gets +1/+1 until end of turn.) diff --git a/forge-gui/res/tokenscripts/w_1_1_mouse.txt b/forge-gui/res/tokenscripts/w_1_1_mouse.txt index a9cc9885e14..bc86d474fac 100644 --- a/forge-gui/res/tokenscripts/w_1_1_mouse.txt +++ b/forge-gui/res/tokenscripts/w_1_1_mouse.txt @@ -1,6 +1,6 @@ Name:Mouse Token ManaCost:no cost -Types:Creature Mouse Colors:white +Types:Creature Mouse PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_pegasus_flying.txt b/forge-gui/res/tokenscripts/w_1_1_pegasus_flying.txt index 92cd702e184..989ef114a78 100644 --- a/forge-gui/res/tokenscripts/w_1_1_pegasus_flying.txt +++ b/forge-gui/res/tokenscripts/w_1_1_pegasus_flying.txt @@ -1,7 +1,7 @@ Name:Pegasus Token ManaCost:no cost -Types:Creature Pegasus Colors:white +Types:Creature Pegasus PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/w_1_1_rabbit.txt b/forge-gui/res/tokenscripts/w_1_1_rabbit.txt index 93f806dfdbb..bd9e3007168 100644 --- a/forge-gui/res/tokenscripts/w_1_1_rabbit.txt +++ b/forge-gui/res/tokenscripts/w_1_1_rabbit.txt @@ -1,6 +1,6 @@ Name:Rabbit Token ManaCost:no cost -Types:Creature Rabbit Colors:white +Types:Creature Rabbit PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_sheep.txt b/forge-gui/res/tokenscripts/w_1_1_sheep.txt index 8213a83f6ba..1b51b17f6f2 100644 --- a/forge-gui/res/tokenscripts/w_1_1_sheep.txt +++ b/forge-gui/res/tokenscripts/w_1_1_sheep.txt @@ -1,6 +1,6 @@ Name:Sheep Token ManaCost:no cost -Types:Creature Sheep Colors:white +Types:Creature Sheep PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_soldier.txt b/forge-gui/res/tokenscripts/w_1_1_soldier.txt index eab82574f8d..486d55894ac 100644 --- a/forge-gui/res/tokenscripts/w_1_1_soldier.txt +++ b/forge-gui/res/tokenscripts/w_1_1_soldier.txt @@ -1,6 +1,6 @@ Name:Soldier Token ManaCost:no cost -Types:Creature Soldier Colors:white +Types:Creature Soldier PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_soldier_ally.txt b/forge-gui/res/tokenscripts/w_1_1_soldier_ally.txt index dd527b20055..309ff497ba4 100644 --- a/forge-gui/res/tokenscripts/w_1_1_soldier_ally.txt +++ b/forge-gui/res/tokenscripts/w_1_1_soldier_ally.txt @@ -1,6 +1,6 @@ Name:Soldier Ally Token ManaCost:no cost -Types:Creature Soldier Ally Colors:white +Types:Creature Soldier Ally PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_soldier_lifelink.txt b/forge-gui/res/tokenscripts/w_1_1_soldier_lifelink.txt index cfb95da290f..3b181d467f5 100644 --- a/forge-gui/res/tokenscripts/w_1_1_soldier_lifelink.txt +++ b/forge-gui/res/tokenscripts/w_1_1_soldier_lifelink.txt @@ -1,7 +1,7 @@ Name:Soldier Token ManaCost:no cost -Types:Creature Soldier Colors:white +Types:Creature Soldier PT:1/1 K:Lifelink Oracle:Lifelink diff --git a/forge-gui/res/tokenscripts/w_1_1_spirit_flying.txt b/forge-gui/res/tokenscripts/w_1_1_spirit_flying.txt index 25e51a60af2..89917cbeb8e 100644 --- a/forge-gui/res/tokenscripts/w_1_1_spirit_flying.txt +++ b/forge-gui/res/tokenscripts/w_1_1_spirit_flying.txt @@ -1,7 +1,7 @@ Name:Spirit Token ManaCost:no cost -Types:Creature Spirit Colors:white +Types:Creature Spirit PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/w_1_1_vampire_lifelink.txt b/forge-gui/res/tokenscripts/w_1_1_vampire_lifelink.txt index 01f33cc970c..c25b95eb1d9 100644 --- a/forge-gui/res/tokenscripts/w_1_1_vampire_lifelink.txt +++ b/forge-gui/res/tokenscripts/w_1_1_vampire_lifelink.txt @@ -1,7 +1,7 @@ Name:Vampire Token ManaCost:no cost -Types:Creature Vampire Colors:white +Types:Creature Vampire PT:1/1 K:Lifelink Oracle:Lifelink diff --git a/forge-gui/res/tokenscripts/w_1_1_warrior.txt b/forge-gui/res/tokenscripts/w_1_1_warrior.txt index 759b3545851..22c945a6b18 100644 --- a/forge-gui/res/tokenscripts/w_1_1_warrior.txt +++ b/forge-gui/res/tokenscripts/w_1_1_warrior.txt @@ -1,6 +1,6 @@ Name:Warrior Token ManaCost:no cost -Types:Creature Warrior Colors:white +Types:Creature Warrior PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_1_1_warrior_vigilance.txt b/forge-gui/res/tokenscripts/w_1_1_warrior_vigilance.txt index a81db94d018..a2cd49ba2a8 100644 --- a/forge-gui/res/tokenscripts/w_1_1_warrior_vigilance.txt +++ b/forge-gui/res/tokenscripts/w_1_1_warrior_vigilance.txt @@ -1,7 +1,7 @@ Name:Warrior Token ManaCost:no cost -Types:Creature Warrior Colors:white +Types:Creature Warrior PT:1/1 K:Vigilance Oracle:Vigilance diff --git a/forge-gui/res/tokenscripts/w_1_2_soldier_defender.txt b/forge-gui/res/tokenscripts/w_1_2_soldier_defender.txt index 7764448014e..fd3d36f9f39 100644 --- a/forge-gui/res/tokenscripts/w_1_2_soldier_defender.txt +++ b/forge-gui/res/tokenscripts/w_1_2_soldier_defender.txt @@ -1,7 +1,7 @@ Name:Soldier Token ManaCost:no cost -Types:Creature Soldier Colors:white +Types:Creature Soldier PT:1/2 K:Defender Oracle:Defender diff --git a/forge-gui/res/tokenscripts/w_2_1_cat_warrior.txt b/forge-gui/res/tokenscripts/w_2_1_cat_warrior.txt index cd6f0eac5d7..561737e6daf 100644 --- a/forge-gui/res/tokenscripts/w_2_1_cat_warrior.txt +++ b/forge-gui/res/tokenscripts/w_2_1_cat_warrior.txt @@ -1,6 +1,6 @@ Name:Cat Warrior Token ManaCost:no cost -Types:Creature Cat Warrior Colors:white +Types:Creature Cat Warrior PT:2/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_2_1_e_cleric.txt b/forge-gui/res/tokenscripts/w_2_1_e_cleric.txt index 338fbb71d57..698dae0a547 100644 --- a/forge-gui/res/tokenscripts/w_2_1_e_cleric.txt +++ b/forge-gui/res/tokenscripts/w_2_1_e_cleric.txt @@ -1,6 +1,6 @@ Name:Cleric Token ManaCost:no cost -Types:Enchantment Creature Cleric Colors:white +Types:Enchantment Creature Cleric PT:2/1 Oracle: diff --git a/forge-gui/res/tokenscripts/w_2_2_alien.txt b/forge-gui/res/tokenscripts/w_2_2_alien.txt index 0aae5c0054f..d3759ab4cb3 100644 --- a/forge-gui/res/tokenscripts/w_2_2_alien.txt +++ b/forge-gui/res/tokenscripts/w_2_2_alien.txt @@ -1,6 +1,6 @@ Name:Alien Token ManaCost:no cost -Types:Creature Alien Colors:white +Types:Creature Alien PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/w_2_2_astartes_warrior_vigilance.txt b/forge-gui/res/tokenscripts/w_2_2_astartes_warrior_vigilance.txt index b50f939ce4d..673616a51cb 100644 --- a/forge-gui/res/tokenscripts/w_2_2_astartes_warrior_vigilance.txt +++ b/forge-gui/res/tokenscripts/w_2_2_astartes_warrior_vigilance.txt @@ -1,7 +1,7 @@ Name:Astartes Warrior Token ManaCost:no cost -Types:Creature Astartes Warrior Colors:white +Types:Creature Astartes Warrior PT:2/2 K:Vigilance Oracle:Vigilance diff --git a/forge-gui/res/tokenscripts/w_2_2_cat.txt b/forge-gui/res/tokenscripts/w_2_2_cat.txt index add9f30989f..a0ff6b2065b 100644 --- a/forge-gui/res/tokenscripts/w_2_2_cat.txt +++ b/forge-gui/res/tokenscripts/w_2_2_cat.txt @@ -1,6 +1,6 @@ Name:Cat Token ManaCost:no cost -Types:Creature Cat Colors:white +Types:Creature Cat PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/w_2_2_cat_beast.txt b/forge-gui/res/tokenscripts/w_2_2_cat_beast.txt index 9fdfeb446e5..764892c666c 100644 --- a/forge-gui/res/tokenscripts/w_2_2_cat_beast.txt +++ b/forge-gui/res/tokenscripts/w_2_2_cat_beast.txt @@ -1,6 +1,6 @@ Name:Cat Beast Token ManaCost:no cost -Types:Creature Cat Beast Colors:white +Types:Creature Cat Beast PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/w_2_2_fox_vigilance.txt b/forge-gui/res/tokenscripts/w_2_2_fox_vigilance.txt index 313122e53a7..8bdb99dbd38 100644 --- a/forge-gui/res/tokenscripts/w_2_2_fox_vigilance.txt +++ b/forge-gui/res/tokenscripts/w_2_2_fox_vigilance.txt @@ -1,7 +1,7 @@ Name:Fox Token ManaCost:no cost -Types:Creature Fox Colors:white +Types:Creature Fox PT:2/2 K:Vigilance Oracle:Vigilance diff --git a/forge-gui/res/tokenscripts/w_2_2_griffin_flying.txt b/forge-gui/res/tokenscripts/w_2_2_griffin_flying.txt index 8a60d3698b1..28b368c83fe 100644 --- a/forge-gui/res/tokenscripts/w_2_2_griffin_flying.txt +++ b/forge-gui/res/tokenscripts/w_2_2_griffin_flying.txt @@ -1,7 +1,7 @@ Name:Griffin Token ManaCost:no cost -Types:Creature Griffin Colors:white +Types:Creature Griffin PT:2/2 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/w_2_2_horse_horsemanship.txt b/forge-gui/res/tokenscripts/w_2_2_horse_horsemanship.txt index 4d601f18283..a93352e847f 100644 --- a/forge-gui/res/tokenscripts/w_2_2_horse_horsemanship.txt +++ b/forge-gui/res/tokenscripts/w_2_2_horse_horsemanship.txt @@ -1,7 +1,7 @@ Name:Horse Token ManaCost:no cost -Types:Creature Horse Colors:white +Types:Creature Horse PT:2/2 S:Mode$ Continuous | Affected$ Doctor.YouCtrl | AddKeyword$ Horsemanship | Description$ Doctors you control have horsemanship. (They can't be blocked except by creatures with horsemanship.) Oracle:Doctors you control have horsemanship. (They can't be blocked except by creatures with horsemanship.) diff --git a/forge-gui/res/tokenscripts/w_2_2_human_knight_artifact_pump.txt b/forge-gui/res/tokenscripts/w_2_2_human_knight_artifact_pump.txt index 648916d1422..ca5fcc7fec1 100644 --- a/forge-gui/res/tokenscripts/w_2_2_human_knight_artifact_pump.txt +++ b/forge-gui/res/tokenscripts/w_2_2_human_knight_artifact_pump.txt @@ -1,7 +1,7 @@ Name:Human Knight Token ManaCost:no cost -Types:Creature Human Knight Colors:white +Types:Creature Human Knight PT:2/2 S:Mode$ Continuous | Affected$ Card.Self | CheckSVar$ X | SVarCompare$ GE1 | AddPower$ 2 | AddToughness$ 2 | Description$ This creature gets +2/+2 as long as an artifact entered the battlefield under your control this turn. SVar:X:Count$ThisTurnEntered_Battlefield_Artifact.YouCtrl diff --git a/forge-gui/res/tokenscripts/w_2_2_knight.txt b/forge-gui/res/tokenscripts/w_2_2_knight.txt index 194237dac79..bb201075c56 100644 --- a/forge-gui/res/tokenscripts/w_2_2_knight.txt +++ b/forge-gui/res/tokenscripts/w_2_2_knight.txt @@ -1,6 +1,6 @@ Name:Knight Token ManaCost:no cost -Types:Creature Knight Colors:white +Types:Creature Knight PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/w_2_2_knight_ally.txt b/forge-gui/res/tokenscripts/w_2_2_knight_ally.txt index a4fccbf97d4..35f094231cb 100644 --- a/forge-gui/res/tokenscripts/w_2_2_knight_ally.txt +++ b/forge-gui/res/tokenscripts/w_2_2_knight_ally.txt @@ -1,6 +1,6 @@ Name:Knight Ally Token ManaCost:no cost -Types:Creature Knight Ally Colors:white +Types:Creature Knight Ally PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/w_2_2_knight_first_strike.txt b/forge-gui/res/tokenscripts/w_2_2_knight_first_strike.txt index 2db6eca9c53..55a17c71f8f 100644 --- a/forge-gui/res/tokenscripts/w_2_2_knight_first_strike.txt +++ b/forge-gui/res/tokenscripts/w_2_2_knight_first_strike.txt @@ -1,7 +1,7 @@ Name:Knight Token ManaCost:no cost -Types:Creature Knight Colors:white +Types:Creature Knight PT:2/2 K:First Strike Oracle:First strike diff --git a/forge-gui/res/tokenscripts/w_2_2_knight_pro_red.txt b/forge-gui/res/tokenscripts/w_2_2_knight_pro_red.txt index cd51986956b..272526748e5 100644 --- a/forge-gui/res/tokenscripts/w_2_2_knight_pro_red.txt +++ b/forge-gui/res/tokenscripts/w_2_2_knight_pro_red.txt @@ -1,7 +1,7 @@ Name:Knight Token ManaCost:no cost -Types:Creature Knight Colors:white +Types:Creature Knight PT:2/2 K:Protection from red Oracle:Protection from red diff --git a/forge-gui/res/tokenscripts/w_2_2_knight_vigilance.txt b/forge-gui/res/tokenscripts/w_2_2_knight_vigilance.txt index eb6100dbdbb..6a598008ab4 100644 --- a/forge-gui/res/tokenscripts/w_2_2_knight_vigilance.txt +++ b/forge-gui/res/tokenscripts/w_2_2_knight_vigilance.txt @@ -1,7 +1,7 @@ Name:Knight Token ManaCost:no cost -Types:Creature Knight Colors:white +Types:Creature Knight PT:2/2 K:Vigilance Oracle:Vigilance diff --git a/forge-gui/res/tokenscripts/w_2_2_ox.txt b/forge-gui/res/tokenscripts/w_2_2_ox.txt index 8488b113950..a09d4063b74 100644 --- a/forge-gui/res/tokenscripts/w_2_2_ox.txt +++ b/forge-gui/res/tokenscripts/w_2_2_ox.txt @@ -1,6 +1,6 @@ Name:Ox Token ManaCost:no cost -Types:Creature Ox Colors:white +Types:Creature Ox PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/w_2_2_pegasus_flying.txt b/forge-gui/res/tokenscripts/w_2_2_pegasus_flying.txt index 51f5094cba6..2c1585902f7 100644 --- a/forge-gui/res/tokenscripts/w_2_2_pegasus_flying.txt +++ b/forge-gui/res/tokenscripts/w_2_2_pegasus_flying.txt @@ -1,7 +1,7 @@ Name:Pegasus Token ManaCost:no cost -Types:Creature Pegasus Colors:white +Types:Creature Pegasus PT:2/2 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/w_2_2_performer.txt b/forge-gui/res/tokenscripts/w_2_2_performer.txt index 357a91d14fa..49dbf715986 100644 --- a/forge-gui/res/tokenscripts/w_2_2_performer.txt +++ b/forge-gui/res/tokenscripts/w_2_2_performer.txt @@ -1,6 +1,6 @@ Name:Performer Token ManaCost:no cost -Types:Creature Performer Colors:white +Types:Creature Performer PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/w_2_2_reflection.txt b/forge-gui/res/tokenscripts/w_2_2_reflection.txt index 7b69d54fe0b..7cf423c2186 100644 --- a/forge-gui/res/tokenscripts/w_2_2_reflection.txt +++ b/forge-gui/res/tokenscripts/w_2_2_reflection.txt @@ -1,6 +1,6 @@ Name:Reflection Token ManaCost:no cost -PT:2/2 Colors:white Types:Creature Reflection +PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/w_2_2_samurai_double_strike.txt b/forge-gui/res/tokenscripts/w_2_2_samurai_double_strike.txt index 133f05c0268..248bd0a2aac 100644 --- a/forge-gui/res/tokenscripts/w_2_2_samurai_double_strike.txt +++ b/forge-gui/res/tokenscripts/w_2_2_samurai_double_strike.txt @@ -1,7 +1,7 @@ Name:Samurai Token ManaCost:no cost -Types:Creature Samurai Colors:white +Types:Creature Samurai PT:2/2 K:Double Strike Oracle:Double strike diff --git a/forge-gui/res/tokenscripts/w_2_2_samurai_vigilance.txt b/forge-gui/res/tokenscripts/w_2_2_samurai_vigilance.txt index 33147361d6c..a81392a155b 100644 --- a/forge-gui/res/tokenscripts/w_2_2_samurai_vigilance.txt +++ b/forge-gui/res/tokenscripts/w_2_2_samurai_vigilance.txt @@ -1,7 +1,7 @@ Name:Samurai Token ManaCost:no cost -Types:Creature Samurai Colors:white +Types:Creature Samurai PT:2/2 K:Vigilance Oracle:Vigilance diff --git a/forge-gui/res/tokenscripts/w_2_2_soldier_vigilance.txt b/forge-gui/res/tokenscripts/w_2_2_soldier_vigilance.txt index e231a61690f..7d6f153cdb0 100644 --- a/forge-gui/res/tokenscripts/w_2_2_soldier_vigilance.txt +++ b/forge-gui/res/tokenscripts/w_2_2_soldier_vigilance.txt @@ -1,7 +1,7 @@ Name:Soldier Token ManaCost:no cost -Types:Creature Soldier Colors:white +Types:Creature Soldier PT:2/2 K:Vigilance Oracle:Vigilance diff --git a/forge-gui/res/tokenscripts/w_2_2_spirit_flying.txt b/forge-gui/res/tokenscripts/w_2_2_spirit_flying.txt index 1c03be2bef2..460ca36fa0a 100644 --- a/forge-gui/res/tokenscripts/w_2_2_spirit_flying.txt +++ b/forge-gui/res/tokenscripts/w_2_2_spirit_flying.txt @@ -1,7 +1,7 @@ Name:Spirit Token ManaCost:no cost -Types:Creature Spirit Colors:white +Types:Creature Spirit PT:2/2 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/w_2_2_unicorn.txt b/forge-gui/res/tokenscripts/w_2_2_unicorn.txt index 8475602666f..2745bafb50d 100644 --- a/forge-gui/res/tokenscripts/w_2_2_unicorn.txt +++ b/forge-gui/res/tokenscripts/w_2_2_unicorn.txt @@ -1,6 +1,6 @@ Name:Unicorn Token ManaCost:no cost -Types:Creature Unicorn Colors:white +Types:Creature Unicorn PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/w_2_4_ox.txt b/forge-gui/res/tokenscripts/w_2_4_ox.txt index 9eabe496941..85abf9e1ecf 100644 --- a/forge-gui/res/tokenscripts/w_2_4_ox.txt +++ b/forge-gui/res/tokenscripts/w_2_4_ox.txt @@ -1,6 +1,6 @@ Name:Ox Token ManaCost:no cost -PT:2/4 Colors:white Types:Creature Ox +PT:2/4 Oracle: diff --git a/forge-gui/res/tokenscripts/w_3_3_angel_flying.txt b/forge-gui/res/tokenscripts/w_3_3_angel_flying.txt index 7532d183427..8543e63342b 100644 --- a/forge-gui/res/tokenscripts/w_3_3_angel_flying.txt +++ b/forge-gui/res/tokenscripts/w_3_3_angel_flying.txt @@ -1,7 +1,7 @@ Name:Angel Token ManaCost:no cost -Types:Creature Angel Colors:white +Types:Creature Angel PT:3/3 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/w_3_3_bird_flying.txt b/forge-gui/res/tokenscripts/w_3_3_bird_flying.txt index 4ffc1e6f4b9..1eacc82e9eb 100644 --- a/forge-gui/res/tokenscripts/w_3_3_bird_flying.txt +++ b/forge-gui/res/tokenscripts/w_3_3_bird_flying.txt @@ -1,7 +1,7 @@ Name:Bird Token ManaCost:no cost -Types:Creature Bird Colors:white +Types:Creature Bird PT:3/3 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/w_3_3_bird_flying_attacks.txt b/forge-gui/res/tokenscripts/w_3_3_bird_flying_attacks.txt index 6a8856f7c6a..177b8a1a142 100644 --- a/forge-gui/res/tokenscripts/w_3_3_bird_flying_attacks.txt +++ b/forge-gui/res/tokenscripts/w_3_3_bird_flying_attacks.txt @@ -1,7 +1,7 @@ Name:Bird Token ManaCost:no cost -Types:Creature Bird Colors:white +Types:Creature Bird PT:3/3 K:Flying T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ Whenever this creature attacks, target attacking creature gains flying until end of turn. diff --git a/forge-gui/res/tokenscripts/w_3_3_spirit_flying.txt b/forge-gui/res/tokenscripts/w_3_3_spirit_flying.txt index 0b6b19e9c30..9b30ccf58c4 100644 --- a/forge-gui/res/tokenscripts/w_3_3_spirit_flying.txt +++ b/forge-gui/res/tokenscripts/w_3_3_spirit_flying.txt @@ -1,7 +1,7 @@ Name:Spirit Token ManaCost:no cost -Types:Creature Spirit Colors:white +Types:Creature Spirit PT:3/3 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/w_3_4_bird_flying.txt b/forge-gui/res/tokenscripts/w_3_4_bird_flying.txt index 0bfc49d98e6..093d57f6c1a 100644 --- a/forge-gui/res/tokenscripts/w_3_4_bird_flying.txt +++ b/forge-gui/res/tokenscripts/w_3_4_bird_flying.txt @@ -1,7 +1,7 @@ Name:Bird Token ManaCost:no cost -Types:Creature Bird Colors:white +Types:Creature Bird PT:3/4 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/w_4_4_alien_rhino.txt b/forge-gui/res/tokenscripts/w_4_4_alien_rhino.txt index 13d2e76ebb3..bd50a224076 100644 --- a/forge-gui/res/tokenscripts/w_4_4_alien_rhino.txt +++ b/forge-gui/res/tokenscripts/w_4_4_alien_rhino.txt @@ -1,6 +1,6 @@ Name:Alien Rhino Token ManaCost:no cost -Types:Creature Alien Rhino Colors:white +Types:Creature Alien Rhino PT:4/4 Oracle: diff --git a/forge-gui/res/tokenscripts/w_4_4_angel_flying.txt b/forge-gui/res/tokenscripts/w_4_4_angel_flying.txt index db6830bb0cc..c7ea25d0a84 100644 --- a/forge-gui/res/tokenscripts/w_4_4_angel_flying.txt +++ b/forge-gui/res/tokenscripts/w_4_4_angel_flying.txt @@ -1,7 +1,7 @@ Name:Angel Token ManaCost:no cost -Types:Creature Angel Colors:white +Types:Creature Angel PT:4/4 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/w_4_4_angel_flying_vigilance.txt b/forge-gui/res/tokenscripts/w_4_4_angel_flying_vigilance.txt index ed2c7bb4c2e..a556c690c54 100644 --- a/forge-gui/res/tokenscripts/w_4_4_angel_flying_vigilance.txt +++ b/forge-gui/res/tokenscripts/w_4_4_angel_flying_vigilance.txt @@ -1,7 +1,7 @@ Name:Angel Token ManaCost:no cost -Types:Creature Angel Colors:white +Types:Creature Angel PT:4/4 K:Flying K:Vigilance diff --git a/forge-gui/res/tokenscripts/w_4_4_angel_warrior_flying.txt b/forge-gui/res/tokenscripts/w_4_4_angel_warrior_flying.txt index a1464e40138..dedf901e363 100644 --- a/forge-gui/res/tokenscripts/w_4_4_angel_warrior_flying.txt +++ b/forge-gui/res/tokenscripts/w_4_4_angel_warrior_flying.txt @@ -1,7 +1,7 @@ Name:Angel Warrior Token ManaCost:no cost -Types:Creature Angel Warrior Colors:white +Types:Creature Angel Warrior PT:4/4 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/w_4_4_angel_warrior_flying_vigilance.txt b/forge-gui/res/tokenscripts/w_4_4_angel_warrior_flying_vigilance.txt index 6dd596a042e..e4c4675e5b2 100644 --- a/forge-gui/res/tokenscripts/w_4_4_angel_warrior_flying_vigilance.txt +++ b/forge-gui/res/tokenscripts/w_4_4_angel_warrior_flying_vigilance.txt @@ -1,7 +1,7 @@ Name:Angel Warrior Token ManaCost:no cost -Types:Creature Angel Warrior Colors:white +Types:Creature Angel Warrior PT:4/4 K:Flying K:Vigilance diff --git a/forge-gui/res/tokenscripts/w_4_4_avatar_flying.txt b/forge-gui/res/tokenscripts/w_4_4_avatar_flying.txt index 831ba8b31b4..dacc3abc2bf 100644 --- a/forge-gui/res/tokenscripts/w_4_4_avatar_flying.txt +++ b/forge-gui/res/tokenscripts/w_4_4_avatar_flying.txt @@ -1,7 +1,7 @@ Name:Avatar Token ManaCost:no cost -Types:Creature Avatar Colors:white +Types:Creature Avatar PT:4/4 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/w_4_4_beast_lonely.txt b/forge-gui/res/tokenscripts/w_4_4_beast_lonely.txt index dd958b82ce8..bb1abe69ded 100644 --- a/forge-gui/res/tokenscripts/w_4_4_beast_lonely.txt +++ b/forge-gui/res/tokenscripts/w_4_4_beast_lonely.txt @@ -1,7 +1,7 @@ Name:Beast Token ManaCost:no cost -Types:Creature Beast Colors:white +Types:Creature Beast PT:4/4 K:CARDNAME can't attack or block alone. Oracle:This creature can't attack or block alone. diff --git a/forge-gui/res/tokenscripts/w_4_4_elemental_flying.txt b/forge-gui/res/tokenscripts/w_4_4_elemental_flying.txt index 89564587e54..f27e5360654 100644 --- a/forge-gui/res/tokenscripts/w_4_4_elemental_flying.txt +++ b/forge-gui/res/tokenscripts/w_4_4_elemental_flying.txt @@ -1,7 +1,7 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:white +Types:Creature Elemental PT:4/4 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/w_4_4_spirit_flying.txt b/forge-gui/res/tokenscripts/w_4_4_spirit_flying.txt index e14d42ee70c..657892d0738 100644 --- a/forge-gui/res/tokenscripts/w_4_4_spirit_flying.txt +++ b/forge-gui/res/tokenscripts/w_4_4_spirit_flying.txt @@ -1,7 +1,7 @@ Name:Spirit Token ManaCost:no cost -Types:Creature Spirit Colors:white +Types:Creature Spirit PT:4/4 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/w_5_5_giant_warrior.txt b/forge-gui/res/tokenscripts/w_5_5_giant_warrior.txt index 732d95c69bc..22a2b516063 100644 --- a/forge-gui/res/tokenscripts/w_5_5_giant_warrior.txt +++ b/forge-gui/res/tokenscripts/w_5_5_giant_warrior.txt @@ -1,6 +1,6 @@ Name:Giant Warrior Token ManaCost:no cost -PT:5/5 Colors:white Types:Creature Giant Warrior +PT:5/5 Oracle: From 0bf92af38bcede6d98639c4553b11c1c986b2efe Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 09:34:39 +0100 Subject: [PATCH 18/91] Edit pile cleanup: Line reordering, first pass: part 10, folder 'tokenscripts', part 6 --- forge-gui/res/tokenscripts/w_5_5_horse.txt | 2 +- .../w_x_x_a_gnome_soldier_total_artifacts_creatures.txt | 2 +- forge-gui/res/tokenscripts/w_x_x_avatar.txt | 2 +- forge-gui/res/tokenscripts/w_x_x_avatar_life_total.txt | 2 +- forge-gui/res/tokenscripts/w_x_x_reflection.txt | 2 +- forge-gui/res/tokenscripts/walker.txt | 2 +- forge-gui/res/tokenscripts/wasp.txt | 2 +- forge-gui/res/tokenscripts/wb_1_1_cleric_deathpact.txt | 2 +- forge-gui/res/tokenscripts/wb_1_1_human_cleric.txt | 2 +- forge-gui/res/tokenscripts/wb_1_1_spirit_flying.txt | 2 +- forge-gui/res/tokenscripts/wb_1_1_vampire_lifelink.txt | 2 +- forge-gui/res/tokenscripts/wb_2_1_inkling_flying.txt | 2 +- forge-gui/res/tokenscripts/wb_x_x_e_spirit_experience.txt | 2 +- forge-gui/res/tokenscripts/wirefly.txt | 2 +- forge-gui/res/tokenscripts/wood.txt | 2 +- forge-gui/res/tokenscripts/wu_1_1_bird_flying.txt | 2 +- forge-gui/res/tokenscripts/wu_2_2_detective.txt | 2 +- forge-gui/res/tokenscripts/wu_2_2_knight_vigilance.txt | 2 +- forge-gui/res/tokenscripts/wu_4_4_a_golem.txt | 2 +- forge-gui/res/tokenscripts/wu_4_4_elemental.txt | 2 +- forge-gui/res/tokenscripts/wu_4_4_sphinx_flying_vigilance.txt | 2 +- 21 files changed, 21 insertions(+), 21 deletions(-) diff --git a/forge-gui/res/tokenscripts/w_5_5_horse.txt b/forge-gui/res/tokenscripts/w_5_5_horse.txt index f3aa6160ca0..88e88c03361 100644 --- a/forge-gui/res/tokenscripts/w_5_5_horse.txt +++ b/forge-gui/res/tokenscripts/w_5_5_horse.txt @@ -1,6 +1,6 @@ Name:Horse Token ManaCost:no cost -PT:5/5 Colors:white Types:Creature Horse +PT:5/5 Oracle: diff --git a/forge-gui/res/tokenscripts/w_x_x_a_gnome_soldier_total_artifacts_creatures.txt b/forge-gui/res/tokenscripts/w_x_x_a_gnome_soldier_total_artifacts_creatures.txt index b455970e5c1..53b4fbb3f94 100644 --- a/forge-gui/res/tokenscripts/w_x_x_a_gnome_soldier_total_artifacts_creatures.txt +++ b/forge-gui/res/tokenscripts/w_x_x_a_gnome_soldier_total_artifacts_creatures.txt @@ -1,7 +1,7 @@ Name:Gnome Soldier Token ManaCost:no cost -Types:Artifact Creature Gnome Soldier Colors:white +Types:Artifact Creature Gnome Soldier PT:*/* S:Mode$ Continuous | SetPower$ X | SetToughness$ X | CharacteristicDefining$ True | Description$ This creature's power and toughness are each equal to the number of artifacts and/or creatures you control. SVar:X:Count$Valid Artifact.YouCtrl,Creature.YouCtrl diff --git a/forge-gui/res/tokenscripts/w_x_x_avatar.txt b/forge-gui/res/tokenscripts/w_x_x_avatar.txt index f23a7c38540..0fdd8c5eb42 100644 --- a/forge-gui/res/tokenscripts/w_x_x_avatar.txt +++ b/forge-gui/res/tokenscripts/w_x_x_avatar.txt @@ -1,6 +1,6 @@ Name:Avatar Token ManaCost:no cost -Types:Creature Avatar Colors:white +Types:Creature Avatar PT:*/* Oracle: diff --git a/forge-gui/res/tokenscripts/w_x_x_avatar_life_total.txt b/forge-gui/res/tokenscripts/w_x_x_avatar_life_total.txt index 6494d7df90a..359bf4bd6e9 100644 --- a/forge-gui/res/tokenscripts/w_x_x_avatar_life_total.txt +++ b/forge-gui/res/tokenscripts/w_x_x_avatar_life_total.txt @@ -1,7 +1,7 @@ Name:Avatar Token ManaCost:no cost -Types:Creature Avatar Colors:white +Types:Creature Avatar PT:*/* S:Mode$ Continuous | SetPower$ X | SetToughness$ X | CharacteristicDefining$ True | Description$ This creature's power and toughness are each equal to your life total. SVar:X:Count$YourLifeTotal diff --git a/forge-gui/res/tokenscripts/w_x_x_reflection.txt b/forge-gui/res/tokenscripts/w_x_x_reflection.txt index 04d54f07045..6cdfefdf63f 100644 --- a/forge-gui/res/tokenscripts/w_x_x_reflection.txt +++ b/forge-gui/res/tokenscripts/w_x_x_reflection.txt @@ -1,6 +1,6 @@ Name:Reflection Token ManaCost:no cost -PT:*/* Colors:white Types:Creature Reflection +PT:*/* Oracle: diff --git a/forge-gui/res/tokenscripts/walker.txt b/forge-gui/res/tokenscripts/walker.txt index c0895372a56..4a1a339032d 100644 --- a/forge-gui/res/tokenscripts/walker.txt +++ b/forge-gui/res/tokenscripts/walker.txt @@ -1,6 +1,6 @@ Name:Walker ManaCost:no cost -Types:Creature Zombie Colors:black +Types:Creature Zombie PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/wasp.txt b/forge-gui/res/tokenscripts/wasp.txt index 94bfe5bbd9d..df234ddf4d4 100644 --- a/forge-gui/res/tokenscripts/wasp.txt +++ b/forge-gui/res/tokenscripts/wasp.txt @@ -1,6 +1,6 @@ Name:Wasp ManaCost:no cost Types:Artifact Creature Insect -K:Flying PT:1/1 +K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/wb_1_1_cleric_deathpact.txt b/forge-gui/res/tokenscripts/wb_1_1_cleric_deathpact.txt index af16be80df3..9c517b7927a 100644 --- a/forge-gui/res/tokenscripts/wb_1_1_cleric_deathpact.txt +++ b/forge-gui/res/tokenscripts/wb_1_1_cleric_deathpact.txt @@ -1,7 +1,7 @@ Name:Cleric Token ManaCost:no cost -Types:Creature Cleric Colors:white,black +Types:Creature Cleric PT:1/1 A:AB$ ChangeZone | Cost$ 3 W B B T Sac<1/CARDNAME> | ChangeType$ Card.namedDeathpact Angel+YouOwn | Mandatory$ True | ChangeNum$ 1 | Origin$ Graveyard | Destination$ Battlefield | Hidden$ True | SpellDescription$ Return a card named Deathpact Angel from your graveyard to the battlefield. Oracle:{3}{W}{B}{B}, {T}, Sacrifice this creature: Return a card named Deathpact Angel from your graveyard to the battlefield. diff --git a/forge-gui/res/tokenscripts/wb_1_1_human_cleric.txt b/forge-gui/res/tokenscripts/wb_1_1_human_cleric.txt index 58856cccad2..448a3e4edc2 100644 --- a/forge-gui/res/tokenscripts/wb_1_1_human_cleric.txt +++ b/forge-gui/res/tokenscripts/wb_1_1_human_cleric.txt @@ -1,6 +1,6 @@ Name:Human Cleric Token ManaCost:no cost -Types:Creature Human Cleric Colors:white,black +Types:Creature Human Cleric PT:1/1 Oracle: diff --git a/forge-gui/res/tokenscripts/wb_1_1_spirit_flying.txt b/forge-gui/res/tokenscripts/wb_1_1_spirit_flying.txt index f1a97597036..f90741fcc97 100644 --- a/forge-gui/res/tokenscripts/wb_1_1_spirit_flying.txt +++ b/forge-gui/res/tokenscripts/wb_1_1_spirit_flying.txt @@ -1,7 +1,7 @@ Name:Spirit Token ManaCost:no cost -Types:Creature Spirit Colors:white,black +Types:Creature Spirit PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/wb_1_1_vampire_lifelink.txt b/forge-gui/res/tokenscripts/wb_1_1_vampire_lifelink.txt index a71e2e1e653..4ead4ea293a 100644 --- a/forge-gui/res/tokenscripts/wb_1_1_vampire_lifelink.txt +++ b/forge-gui/res/tokenscripts/wb_1_1_vampire_lifelink.txt @@ -1,7 +1,7 @@ Name:Vampire Token ManaCost:no cost -Types:Creature Vampire Colors:white,black +Types:Creature Vampire PT:1/1 K:Lifelink Oracle:Lifelink diff --git a/forge-gui/res/tokenscripts/wb_2_1_inkling_flying.txt b/forge-gui/res/tokenscripts/wb_2_1_inkling_flying.txt index a60f3428ed2..475d52bf328 100644 --- a/forge-gui/res/tokenscripts/wb_2_1_inkling_flying.txt +++ b/forge-gui/res/tokenscripts/wb_2_1_inkling_flying.txt @@ -1,7 +1,7 @@ Name:Inkling Token ManaCost:no cost -Types:Creature Inkling Colors:white,black +Types:Creature Inkling PT:2/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/wb_x_x_e_spirit_experience.txt b/forge-gui/res/tokenscripts/wb_x_x_e_spirit_experience.txt index 650c8baaaa0..d701aaac7df 100644 --- a/forge-gui/res/tokenscripts/wb_x_x_e_spirit_experience.txt +++ b/forge-gui/res/tokenscripts/wb_x_x_e_spirit_experience.txt @@ -1,7 +1,7 @@ Name:Spirit Token ManaCost:no cost -Types:Enchantment Creature Spirit Colors:white,black +Types:Enchantment Creature Spirit PT:*/* S:Mode$ Continuous | SetPower$ X | SetToughness$ X | CharacteristicDefining$ True | Description$ This creature's power and toughness are each equal to the number of experience counters you have. SVar:X:Count$YourCountersExperience diff --git a/forge-gui/res/tokenscripts/wirefly.txt b/forge-gui/res/tokenscripts/wirefly.txt index 780fa79d360..ba58786c6e5 100644 --- a/forge-gui/res/tokenscripts/wirefly.txt +++ b/forge-gui/res/tokenscripts/wirefly.txt @@ -1,6 +1,6 @@ Name:Wirefly ManaCost:no cost Types:Artifact Creature Insect -K:Flying PT:2/2 +K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/wood.txt b/forge-gui/res/tokenscripts/wood.txt index 9ec68b1eaff..df0fdfd88b5 100644 --- a/forge-gui/res/tokenscripts/wood.txt +++ b/forge-gui/res/tokenscripts/wood.txt @@ -1,7 +1,7 @@ Name:Wood ManaCost:no cost -Types:Creature Wall Colors:green +Types:Creature Wall PT:0/1 K:Defender Oracle:Defender diff --git a/forge-gui/res/tokenscripts/wu_1_1_bird_flying.txt b/forge-gui/res/tokenscripts/wu_1_1_bird_flying.txt index f6b6c5755b6..4047a822b45 100644 --- a/forge-gui/res/tokenscripts/wu_1_1_bird_flying.txt +++ b/forge-gui/res/tokenscripts/wu_1_1_bird_flying.txt @@ -1,7 +1,7 @@ Name:Bird Token ManaCost:no cost -Types:Creature Bird Colors:white,blue +Types:Creature Bird PT:1/1 K:Flying Oracle:Flying diff --git a/forge-gui/res/tokenscripts/wu_2_2_detective.txt b/forge-gui/res/tokenscripts/wu_2_2_detective.txt index 35ab9d38058..c680712b253 100644 --- a/forge-gui/res/tokenscripts/wu_2_2_detective.txt +++ b/forge-gui/res/tokenscripts/wu_2_2_detective.txt @@ -1,6 +1,6 @@ Name:Detective Token ManaCost:no cost -Types:Creature Detective Colors:white,blue +Types:Creature Detective PT:2/2 Oracle: diff --git a/forge-gui/res/tokenscripts/wu_2_2_knight_vigilance.txt b/forge-gui/res/tokenscripts/wu_2_2_knight_vigilance.txt index c3c7e0ab300..812953722e0 100644 --- a/forge-gui/res/tokenscripts/wu_2_2_knight_vigilance.txt +++ b/forge-gui/res/tokenscripts/wu_2_2_knight_vigilance.txt @@ -1,7 +1,7 @@ Name:Knight Token ManaCost:no cost -Types:Creature Knight Colors:white,blue +Types:Creature Knight PT:2/2 K:Vigilance Oracle:Vigilance diff --git a/forge-gui/res/tokenscripts/wu_4_4_a_golem.txt b/forge-gui/res/tokenscripts/wu_4_4_a_golem.txt index 1d2e47e98a6..14ea9ff5ef7 100644 --- a/forge-gui/res/tokenscripts/wu_4_4_a_golem.txt +++ b/forge-gui/res/tokenscripts/wu_4_4_a_golem.txt @@ -1,6 +1,6 @@ Name:Golem Token ManaCost:no cost -Types:Artifact Creature Golem Colors:white,blue +Types:Artifact Creature Golem PT:4/4 Oracle: diff --git a/forge-gui/res/tokenscripts/wu_4_4_elemental.txt b/forge-gui/res/tokenscripts/wu_4_4_elemental.txt index d88f8e11d35..11ce48459d6 100644 --- a/forge-gui/res/tokenscripts/wu_4_4_elemental.txt +++ b/forge-gui/res/tokenscripts/wu_4_4_elemental.txt @@ -1,6 +1,6 @@ Name:Elemental Token ManaCost:no cost -Types:Creature Elemental Colors:white,blue +Types:Creature Elemental PT:4/4 Oracle: diff --git a/forge-gui/res/tokenscripts/wu_4_4_sphinx_flying_vigilance.txt b/forge-gui/res/tokenscripts/wu_4_4_sphinx_flying_vigilance.txt index 6fe9ac3edf7..d493a9391fb 100644 --- a/forge-gui/res/tokenscripts/wu_4_4_sphinx_flying_vigilance.txt +++ b/forge-gui/res/tokenscripts/wu_4_4_sphinx_flying_vigilance.txt @@ -1,7 +1,7 @@ Name:Sphinx Token ManaCost:no cost -Types:Creature Sphinx Colors:white,blue +Types:Creature Sphinx PT:4/4 K:Flying K:Vigilance From 6b03f6909f9b1636ee3a5de1e4195468101c1d00 Mon Sep 17 00:00:00 2001 From: Chris H Date: Sun, 13 Oct 2024 04:45:41 -0400 Subject: [PATCH 19/91] Add Central elevator (#6292) --- .../java/forge/game/ability/AbilityUtils.java | 17 +++++++++++++++++ .../central_elevator_promising_stairs.txt | 18 ++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/central_elevator_promising_stairs.txt diff --git a/forge-game/src/main/java/forge/game/ability/AbilityUtils.java b/forge-game/src/main/java/forge/game/ability/AbilityUtils.java index 4336da4c160..a45215cbcd4 100644 --- a/forge-game/src/main/java/forge/game/ability/AbilityUtils.java +++ b/forge-game/src/main/java/forge/game/ability/AbilityUtils.java @@ -2526,6 +2526,23 @@ public class AbilityUtils { return doXMath(unlocked, expr, c, ctb); } + // Count$DistinctUnlockedDoors + // Counts the distinct names of unlocked doors. Used for the "Promising Stairs" + if (sq[0].startsWith("DistinctUnlockedDoors")) { + final String[] workingCopy = l[0].split(" ", 2); + final String validFilter = workingCopy[1]; + + Set viewedNames = new HashSet<>(); + for (Card doorCard : CardLists.getValidCards(player.getCardsIn(ZoneType.Battlefield), validFilter, player, c, ctb)) { + for(CardStateName stateName : doorCard.getUnlockedRooms()) { + viewedNames.add(doorCard.getState(stateName).getName()); + } + } + int distinctUnlocked = viewedNames.size(); + + return doXMath(distinctUnlocked, expr, c, ctb); + } + // Manapool if (sq[0].startsWith("ManaPool")) { final String color = l[0].split(":")[1]; diff --git a/forge-gui/res/cardsfolder/upcoming/central_elevator_promising_stairs.txt b/forge-gui/res/cardsfolder/upcoming/central_elevator_promising_stairs.txt new file mode 100644 index 00000000000..71b5062ce80 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/central_elevator_promising_stairs.txt @@ -0,0 +1,18 @@ +Name:Central Elevator +ManaCost:3 U +Types:Enchantment Room +T:Mode$ UnlockDoor | ValidPlayer $ You | ValidCard$ Card.Self | ThisDoor$ True | Execute$ TrigSearch | TriggerDescription$ When you unlock this door, search your library for a Room card that doesn't have the same name as a Room you control, reveal it, put it into your hand, then shuffle. +SVar:TrigSearch:DB$ ChangeZone | ChangeType$ Room.doesNotShareNameWith Room.YouCtrl | ChangeNum$ 1 | Origin$ Library | Destination$ Hand +AlternateMode:Split +Oracle:When you unlock this door, search your library for a Room card that doesn't have the same name as a Room you control, reveal it, put it into your hand, then shuffle. + +ALTERNATE + +Name:Promising Stairs +ManaCost:2 U +Types:Enchantment Room +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigSurveil | TriggerDescription$ At the beginning of your upkeep, surveil 1. You win the game if there are eight or more different names among unlocked doors of Rooms you control. +SVar:TrigSurveil:DB$ Surveil | SubAbility$ DBWin +SVar:DBWin:DB$ WinsGame | Defined$ You | ConditionCheckSVar$ RoomsUnlocked | ConditionSVarCompare$ GE8 +SVar:RoomsUnlocked:Count$DistinctUnlockedDoors Card.Room+YouCtrl +Oracle:At the beginning of your upkeep, surveil 1. You win the game if there are eight or more different names among unlocked doors of Rooms you control. \ No newline at end of file From 0e9c95e542c87e52a06cd061d1b655c780ff3cb7 Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 12:06:16 +0100 Subject: [PATCH 20/91] Edit pile cleanup: Line reordering, second pass: part 1, folders 'a' to 'b' (#6304) --- forge-gui/res/cardsfolder/a/adherent_of_hope.txt | 2 +- forge-gui/res/cardsfolder/a/akal_pakal_first_among_equals.txt | 2 +- forge-gui/res/cardsfolder/a/alistair_the_brigadier.txt | 2 +- forge-gui/res/cardsfolder/a/anavolver.txt | 2 +- forge-gui/res/cardsfolder/a/angel_of_invention.txt | 2 +- forge-gui/res/cardsfolder/a/angel_of_unity.txt | 2 +- forge-gui/res/cardsfolder/a/anikthea_hand_of_erebos.txt | 2 +- forge-gui/res/cardsfolder/a/anoint_with_affliction.txt | 2 +- forge-gui/res/cardsfolder/a/anowon_the_ruin_thief.txt | 2 +- forge-gui/res/cardsfolder/a/aquastrand_spider.txt | 4 ++-- forge-gui/res/cardsfolder/a/aragorn_and_arwen_wed.txt | 2 +- forge-gui/res/cardsfolder/a/arcane_infusion.txt | 2 +- forge-gui/res/cardsfolder/a/arcane_proxy.txt | 2 +- forge-gui/res/cardsfolder/a/arcbound_shikari.txt | 2 +- forge-gui/res/cardsfolder/a/archpriest_of_iona.txt | 2 +- forge-gui/res/cardsfolder/a/armed_and_armored.txt | 2 +- forge-gui/res/cardsfolder/a/arms_race.txt | 4 ++-- forge-gui/res/cardsfolder/a/arrogant_outlaw.txt | 2 +- forge-gui/res/cardsfolder/a/artificer_class.txt | 2 +- forge-gui/res/cardsfolder/a/arvad_the_cursed.txt | 2 +- forge-gui/res/cardsfolder/a/arwen_weaver_of_hope.txt | 2 +- forge-gui/res/cardsfolder/a/ascendant_packleader.txt | 2 +- forge-gui/res/cardsfolder/a/ash_party_crasher.txt | 2 +- forge-gui/res/cardsfolder/a/ashad_the_lone_cyberman.txt | 2 +- forge-gui/res/cardsfolder/a/ashcoat_of_the_shadow_swarm.txt | 2 +- forge-gui/res/cardsfolder/a/ashnod_flesh_mechanist.txt | 2 +- forge-gui/res/cardsfolder/a/ashnods_harvester.txt | 2 +- forge-gui/res/cardsfolder/a/atog.txt | 4 ++-- forge-gui/res/cardsfolder/a/aurelias_vindicator.txt | 2 +- forge-gui/res/cardsfolder/a/aven_courier.txt | 2 +- forge-gui/res/cardsfolder/a/axgard_armory.txt | 2 +- forge-gui/res/cardsfolder/b/baton_of_courage.txt | 2 +- forge-gui/res/cardsfolder/b/benalish_emissary.txt | 2 +- forge-gui/res/cardsfolder/b/benalish_partisan.txt | 2 +- forge-gui/res/cardsfolder/b/benthic_criminologists.txt | 2 +- forge-gui/res/cardsfolder/b/bess_soul_nourisher.txt | 4 ++-- forge-gui/res/cardsfolder/b/big_spender.txt | 2 +- forge-gui/res/cardsfolder/b/biowaste_blob.txt | 2 +- forge-gui/res/cardsfolder/b/blinding_drone.txt | 2 +- forge-gui/res/cardsfolder/b/blinding_souleater.txt | 2 +- ...blitzwing_cruel_tormentor_blitzwing_adaptive_assailant.txt | 2 +- forge-gui/res/cardsfolder/b/bloodcrazed_socialite.txt | 2 +- forge-gui/res/cardsfolder/b/blossoming_bogbeast.txt | 2 +- forge-gui/res/cardsfolder/b/borborygmos_and_fblthp.txt | 2 +- forge-gui/res/cardsfolder/b/boromir_gondors_hope.txt | 2 +- forge-gui/res/cardsfolder/b/bortuk_bonerattle.txt | 2 +- forge-gui/res/cardsfolder/b/bramblewood_paragon.txt | 2 +- forge-gui/res/cardsfolder/b/breath_of_the_sleepless.txt | 2 +- forge-gui/res/cardsfolder/b/briarblade_adept.txt | 2 +- forge-gui/res/cardsfolder/b/bribe_taker.txt | 2 +- forge-gui/res/cardsfolder/b/brilliant_restoration.txt | 2 +- forge-gui/res/cardsfolder/b/bristlebud_farmer.txt | 2 +- forge-gui/res/cardsfolder/b/brood_butcher.txt | 4 ++-- forge-gui/res/cardsfolder/b/brothers_yamazaki.txt | 2 +- forge-gui/res/cardsfolder/b/bruna_light_of_alabaster.txt | 2 +- forge-gui/res/cardsfolder/b/burakos_party_leader.txt | 2 +- forge-gui/res/cardsfolder/b/byrke_long_ear_of_the_law.txt | 2 +- 57 files changed, 62 insertions(+), 62 deletions(-) diff --git a/forge-gui/res/cardsfolder/a/adherent_of_hope.txt b/forge-gui/res/cardsfolder/a/adherent_of_hope.txt index eed8ed52adc..5fb21f161e9 100644 --- a/forge-gui/res/cardsfolder/a/adherent_of_hope.txt +++ b/forge-gui/res/cardsfolder/a/adherent_of_hope.txt @@ -4,6 +4,6 @@ Types:Creature Human Soldier PT:2/1 T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | IsPresent$ Planeswalker.Basri+YouCtrl | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ At the beginning of combat on your turn, if you control a Basri planeswalker, put a +1/+1 counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 -DeckNeeds:Type$Basri DeckHas:Ability$Counters +DeckNeeds:Type$Basri Oracle:At the beginning of combat on your turn, if you control a Basri planeswalker, put a +1/+1 counter on Adherent of Hope. diff --git a/forge-gui/res/cardsfolder/a/akal_pakal_first_among_equals.txt b/forge-gui/res/cardsfolder/a/akal_pakal_first_among_equals.txt index 895645d6cb3..d3345dd6ce3 100644 --- a/forge-gui/res/cardsfolder/a/akal_pakal_first_among_equals.txt +++ b/forge-gui/res/cardsfolder/a/akal_pakal_first_among_equals.txt @@ -5,6 +5,6 @@ PT:1/5 T:Mode$ Phase | Phase$ End of Turn | TriggerZones$ Battlefield | CheckSVar$ X | SVarCompare$ GE1 | Execute$ TrigDig | TriggerDescription$ At the beginning of each player's end step, if an artifact entered the battlefield under your control this turn, look at the top two cards of your library. Put one of them into your hand and the other into your graveyard. SVar:TrigDig:DB$ Dig | DigNum$ 2 | ChangeNum$ 1 | DestinationZone2$ Graveyard | NoReveal$ True SVar:X:Count$ThisTurnEntered_Battlefield_Artifact.YouCtrl -DeckNeeds:Type$Artifact DeckHas:Ability$Graveyard +DeckNeeds:Type$Artifact Oracle:At the beginning of each player's end step, if an artifact entered the battlefield under your control this turn, look at the top two cards of your library. Put one of them into your hand and the other into your graveyard. diff --git a/forge-gui/res/cardsfolder/a/alistair_the_brigadier.txt b/forge-gui/res/cardsfolder/a/alistair_the_brigadier.txt index 5d27dd5b05a..9b6e3f3642f 100644 --- a/forge-gui/res/cardsfolder/a/alistair_the_brigadier.txt +++ b/forge-gui/res/cardsfolder/a/alistair_the_brigadier.txt @@ -7,7 +7,7 @@ SVar:TrigToken:DB$ Token | TokenScript$ w_1_1_soldier T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigPumpAll | TriggerDescription$ Whenever NICKNAME attacks, you may pay {8}. If you do, creatures you control get +X/+X until end of turn, where X is the number of historic permanents you control. SVar:TrigPumpAll:AB$ PumpAll | Cost$ 8 | ValidCards$ Creature.YouCtrl | NumAtt$ X | NumDef$ X SVar:X:Count$Valid Permanent.YouCtrl+Historic +SVar:HasAttackEffect:TRUE DeckHas:Ability$Token DeckHints:Type$Artifact|Legendary|Saga -SVar:HasAttackEffect:TRUE Oracle:Whenever you cast a historic spell, create a 1/1 white Soldier creature token. (Artifacts, legendaries, and Sagas are historic.)\nWhenever Alistair attacks, you may pay {8}. If you do, creatures you control get +X/+X until end of turn, where X is the number of historic permanents you control. diff --git a/forge-gui/res/cardsfolder/a/anavolver.txt b/forge-gui/res/cardsfolder/a/anavolver.txt index 0e1d022aa6c..9e7f77958ab 100644 --- a/forge-gui/res/cardsfolder/a/anavolver.txt +++ b/forge-gui/res/cardsfolder/a/anavolver.txt @@ -11,6 +11,6 @@ SVar:VolverPumped:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNu SVar:VolverResilience:DB$ Animate | Defined$ Self | Abilities$ ABRegen | Duration$ Permanent SVar:ABRegen:AB$ Regenerate | Cost$ PayLife<3> | SpellDescription$ Regenerate CARDNAME. AI:RemoveDeck:Random -DeckNeeds:Color$Blue|Black DeckHas:Ability$Counters +DeckNeeds:Color$Blue|Black Oracle:Kicker {1}{U} and/or {B} (You may pay an additional {1}{U} and/or {B} as you cast this spell.)\nIf Anavolver was kicked with its {1}{U} kicker, it enters with two +1/+1 counters on it and with flying.\nIf Anavolver was kicked with its {B} kicker, it enters with a +1/+1 counter on it and with "Pay 3 life: Regenerate Anavolver." diff --git a/forge-gui/res/cardsfolder/a/angel_of_invention.txt b/forge-gui/res/cardsfolder/a/angel_of_invention.txt index 1468270285a..6c49c21e5e9 100644 --- a/forge-gui/res/cardsfolder/a/angel_of_invention.txt +++ b/forge-gui/res/cardsfolder/a/angel_of_invention.txt @@ -7,6 +7,6 @@ K:Vigilance K:Lifelink K:Fabricate:2 S:Mode$ Continuous | Affected$ Creature.Other+YouCtrl | AddPower$ 1 | AddToughness$ 1 | Description$ Other creatures you control get +1/+1. -DeckHas:Ability$Counters|Token SVar:PlayMain1:TRUE +DeckHas:Ability$Counters|Token Oracle:Flying, vigilance, lifelink\nFabricate 2 (When this creature enters, put two +1/+1 counters on it or create two 1/1 colorless Servo artifact creature tokens.)\nOther creatures you control get +1/+1. diff --git a/forge-gui/res/cardsfolder/a/angel_of_unity.txt b/forge-gui/res/cardsfolder/a/angel_of_unity.txt index ee676ef07d9..39acb8e304b 100644 --- a/forge-gui/res/cardsfolder/a/angel_of_unity.txt +++ b/forge-gui/res/cardsfolder/a/angel_of_unity.txt @@ -9,7 +9,7 @@ T:Mode$ SpellCast | ValidCard$ Card.Party | ValidActivatingPlayer$ You | Execute SVar:TrigChoose:DB$ ChooseCard | ChoiceZone$ Hand | Choices$ Creature.Party+YouOwn | ChoiceTitle$ Choose a party creature card in your hand | Amount$ 1 | SubAbility$ DBPump SVar:DBPump:DB$ Pump | Defined$ ChosenCard | PumpZone$ Hand | NumAtt$ 1 | NumDef$ 1 | Duration$ Perpetual | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearChosenCard$ True -DeckHas:Ability$Party|LifeGain SVar:BuffedBy:Cleric,Rogue,Warrior,Wizard +DeckHas:Ability$Party|LifeGain DeckHints:Type$Rogue|Warrior|Wizard Oracle:Flying, lifelink\nWhenever Angel of Unity enters or you cast a party spell, choose a party creature card in your hand. It perpetually gets +1/+1. (A party card or spell is a Cleric, Rogue, Warrior, or Wizard.) diff --git a/forge-gui/res/cardsfolder/a/anikthea_hand_of_erebos.txt b/forge-gui/res/cardsfolder/a/anikthea_hand_of_erebos.txt index 22534421f40..87adad3ece2 100644 --- a/forge-gui/res/cardsfolder/a/anikthea_hand_of_erebos.txt +++ b/forge-gui/res/cardsfolder/a/anikthea_hand_of_erebos.txt @@ -9,8 +9,8 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigExile | Secondary$ True | SVar:TrigExile:DB$ ChangeZone | ValidTgts$ Enchantment.nonAura+YouCtrl | Origin$ Graveyard | TargetMin$ 0 | TargetMax$ 1 | Destination$ Exile | TgtPrompt$ Select up to one target non-Aura enchantment card from your graveyard | RememberChanged$ True | SubAbility$ DBCopy SVar:DBCopy:DB$ CopyPermanent | Defined$ Remembered | SetPower$ 3 | SetToughness$ 3 | AddTypes$ Creature & Zombie | SetColor$ Black | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +SVar:HasAttackEffect:TRUE DeckHas:Ability$Token|Graveyard DeckHints:Ability$Graveyard|Mill DeckNeeds:Type$Enchantment -SVar:HasAttackEffect:TRUE Oracle:Menace\nOther enchantment creatures you control have menace.\nWhenever Anikthea enters or attacks, exile up to one target non-Aura enchantment card from your graveyard. Create a token that's a copy of that card, except it's a 3/3 black Zombie creature in addition to its other types. diff --git a/forge-gui/res/cardsfolder/a/anoint_with_affliction.txt b/forge-gui/res/cardsfolder/a/anoint_with_affliction.txt index 7dc501a6c70..6aabf1b0773 100644 --- a/forge-gui/res/cardsfolder/a/anoint_with_affliction.txt +++ b/forge-gui/res/cardsfolder/a/anoint_with_affliction.txt @@ -3,6 +3,6 @@ ManaCost:1 B Types:Instant A:SP$ ChangeZone | Defined$ Targeted | ValidTgts$ Creature | ConditionCheckSVar$ X | ConditionSVarCompare$ GE3 | Origin$ Battlefield | Destination$ Exile | SubAbility$ NotPoisoned | SpellDescription$ Exile target creature if it has mana value 3 or less. Corrupted — Exile that creature instead if its controller has three or more poison counters. SVar:NotPoisoned:DB$ ChangeZone | Defined$ Targeted | Origin$ Battlefield | Destination$ Exile | ConditionDefined$ Targeted | ConditionPresent$ Creature.cmcLE3 -DeckHints:Ability$Proliferate & Keyword$Infect|Toxic SVar:X:TargetedController$Counters.Poison +DeckHints:Ability$Proliferate & Keyword$Infect|Toxic Oracle:Exile target creature if it has mana value 3 or less.\nCorrupted — Exile that creature instead if its controller has three or more poison counters. diff --git a/forge-gui/res/cardsfolder/a/anowon_the_ruin_thief.txt b/forge-gui/res/cardsfolder/a/anowon_the_ruin_thief.txt index 54d586b5a61..02a0fed1e26 100644 --- a/forge-gui/res/cardsfolder/a/anowon_the_ruin_thief.txt +++ b/forge-gui/res/cardsfolder/a/anowon_the_ruin_thief.txt @@ -8,6 +8,6 @@ SVar:TrigMill:DB$ Mill | Defined$ TriggeredTarget | NumCards$ X | RememberMilled SVar:DBDraw:DB$ Draw | Defined$ You | ConditionDefined$ Remembered | ConditionPresent$ Creature | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:TriggerCount$DamageAmount -DeckNeeds:Type$Rogue DeckHas:Ability$Mill +DeckNeeds:Type$Rogue Oracle:Other Rogues you control get +1/+1.\nWhenever one or more Rogues you control deal combat damage to a player, that player mills a card for each 1 damage dealt to them. If the player mills at least one creature card this way, you draw a card. (To mill a card, a player puts the top card of their library into their graveyard.) diff --git a/forge-gui/res/cardsfolder/a/aquastrand_spider.txt b/forge-gui/res/cardsfolder/a/aquastrand_spider.txt index b842739192e..de8692dd79b 100644 --- a/forge-gui/res/cardsfolder/a/aquastrand_spider.txt +++ b/forge-gui/res/cardsfolder/a/aquastrand_spider.txt @@ -4,7 +4,7 @@ Types:Creature Spider Mutant PT:0/0 K:Graft:2 A:AB$ Pump | Cost$ G | ValidTgts$ Creature.counters_GE1_P1P1 | TgtPrompt$ Select target creature with a +1/+1 counter | KW$ Reach | SpellDescription$ Target creature with a +1/+1 counter on it gains reach until end of turn. (It can block creatures with flying.) -DeckNeeds:Ability$Counters -DeckHas:Ability$Counters SVar:AIGraftPreference:DontMoveCounterIfLethal +DeckHas:Ability$Counters +DeckNeeds:Ability$Counters Oracle:Graft 2 (This creature enters with two +1/+1 counters on it. Whenever another creature enters, you may move a +1/+1 counter from this creature onto it.)\n{G}: Target creature with a +1/+1 counter on it gains reach until end of turn. (It can block creatures with flying.) diff --git a/forge-gui/res/cardsfolder/a/aragorn_and_arwen_wed.txt b/forge-gui/res/cardsfolder/a/aragorn_and_arwen_wed.txt index 519520e1d3f..e65fc5d61ac 100644 --- a/forge-gui/res/cardsfolder/a/aragorn_and_arwen_wed.txt +++ b/forge-gui/res/cardsfolder/a/aragorn_and_arwen_wed.txt @@ -8,6 +8,6 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPutCounterAll | Secondary$ SVar:TrigPutCounterAll:DB$ PutCounterAll | ValidCards$ Creature.YouCtrl+StrictlyOther | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBGainLife SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ X SVar:X:Count$Valid Creature.YouCtrl+StrictlyOther -DeckHas:Ability$Counters|LifeGain SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters|LifeGain Oracle:Vigilance\nWhenever Aragorn and Arwen, Wed enters or attacks, put a +1/+1 counter on each other creature you control. You gain 1 life for each other creature you control. diff --git a/forge-gui/res/cardsfolder/a/arcane_infusion.txt b/forge-gui/res/cardsfolder/a/arcane_infusion.txt index 10804cc82a4..3d6c7eee3b1 100644 --- a/forge-gui/res/cardsfolder/a/arcane_infusion.txt +++ b/forge-gui/res/cardsfolder/a/arcane_infusion.txt @@ -3,6 +3,6 @@ ManaCost:U R Types:Instant A:SP$ Dig | DigNum$ 4 | ChangeNum$ 1 | Optional$ True | ForceRevealToController$ True | ChangeValid$ Card.Instant,Card.Sorcery | RestRandomOrder$ True | StackDescription$ SpellDescription | SpellDescription$ Look at the top four cards of your library. You may reveal an instant or sorcery card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. K:Flashback:3 U R -DeckNeeds:Type$Instant|Sorcery DeckHas:Ability$Graveyard +DeckNeeds:Type$Instant|Sorcery Oracle:Look at the top four cards of your library. You may reveal an instant or sorcery card from among them and put it into your hand. Put the rest on the bottom of your library in a random order.\nFlashback {3}{U}{R} (You may cast this card from your graveyard for its flashback cost. Then exile it.) diff --git a/forge-gui/res/cardsfolder/a/arcane_proxy.txt b/forge-gui/res/cardsfolder/a/arcane_proxy.txt index 05d6830d605..6918f5a3003 100644 --- a/forge-gui/res/cardsfolder/a/arcane_proxy.txt +++ b/forge-gui/res/cardsfolder/a/arcane_proxy.txt @@ -7,6 +7,6 @@ T:Mode$ ChangesZone | ValidCard$ Card.Self+wasCastByYou | Destination$ Battlefie SVar:TrigExile:DB$ ChangeZone | Origin$ Graveyard | Destination$ Exile | TgtPrompt$ Select target instant or sorcery card with mana value less than or equal to CARDNAME's power | ValidTgts$ Instant.YouOwn+cmcLEX,Sorcery.YouOwn+cmcLEX | RememberChanged$ True | SubAbility$ DBPlay SVar:DBPlay:DB$ Play | Valid$ Card.IsRemembered | ValidZone$ Exile | Controller$ You | CopyCard$ True | WithoutManaCost$ True | ValidSA$ Spell | Optional$ True | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -DeckHints:Type$Instant|Sorcery & Color$Blue SVar:X:Count$CardPower +DeckHints:Type$Instant|Sorcery & Color$Blue Oracle:Prototype {1}{U}{U} — 2/1 (You may cast this spell with different mana cost, color, and size. It keeps its abilities and types.)\nWhen Arcane Proxy enters, if you cast it, exile target instant or sorcery card with mana value less than or equal to Arcane Proxy's power from your graveyard. Copy that card. You may cast the copy without paying its mana cost. diff --git a/forge-gui/res/cardsfolder/a/arcbound_shikari.txt b/forge-gui/res/cardsfolder/a/arcbound_shikari.txt index 5e2eb6fbbf6..4690463fba0 100644 --- a/forge-gui/res/cardsfolder/a/arcbound_shikari.txt +++ b/forge-gui/res/cardsfolder/a/arcbound_shikari.txt @@ -6,6 +6,6 @@ K:First Strike T:Mode$ ChangesZone | ValidCard$ Card.Self | Destination$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ When CARDNAME enters, put a +1/+1 counter on each other artifact creature you control. SVar:TrigPutCounter:DB$ PutCounterAll | ValidCards$ Creature.Artifact+StrictlyOther+YouCtrl | CounterType$ P1P1 | CounterNum$ 1 K:Modular:2 -DeckHas:Ability$Counters SVar:PlayMain1:TRUE +DeckHas:Ability$Counters Oracle:First strike\nWhen Arcbound Shikari enters, put a +1/+1 counter on each other artifact creature you control.\nModular 2 (This creature enters with two +1/+1 counters on it. When it dies, you may put its +1/+1 counters on target artifact creature.) diff --git a/forge-gui/res/cardsfolder/a/archpriest_of_iona.txt b/forge-gui/res/cardsfolder/a/archpriest_of_iona.txt index b5fb9f86536..5988afee152 100644 --- a/forge-gui/res/cardsfolder/a/archpriest_of_iona.txt +++ b/forge-gui/res/cardsfolder/a/archpriest_of_iona.txt @@ -6,7 +6,7 @@ S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | SetPower$ T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Battlefield | CheckSVar$ X | SVarCompare$ EQ4 | Execute$ TrigPump | TriggerDescription$ At the beginning of combat on your turn, if you have a full party, target creature gets +1/+1 and gains flying until end of turn. SVar:TrigPump:DB$ Pump | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumAtt$ +1 | NumDef$ +1 | KW$ Flying SVar:X:Count$Party -DeckHas:Ability$Party SVar:BuffedBy:Rogue,Warrior,Wizard +DeckHas:Ability$Party DeckHints:Type$Rogue|Warrior|Wizard Oracle:Archpriest of Iona's power is equal to the number of creatures in your party. (Your party consists of up to one each of Cleric, Rogue, Warrior, and Wizard.)\nAt the beginning of combat on your turn, if you have a full party, target creature gets +1/+1 and gains flying until end of turn. diff --git a/forge-gui/res/cardsfolder/a/armed_and_armored.txt b/forge-gui/res/cardsfolder/a/armed_and_armored.txt index 595c0b3369a..565f9692d48 100644 --- a/forge-gui/res/cardsfolder/a/armed_and_armored.txt +++ b/forge-gui/res/cardsfolder/a/armed_and_armored.txt @@ -4,6 +4,6 @@ Types:Instant A:SP$ AnimateAll | Types$ Creature,Artifact | ValidCards$ Vehicle.YouCtrl | SubAbility$ ArmDwarf | StackDescription$ Vehicles {p:You} controls become artifact creatures until end of turn. | SpellDescription$ Vehicles you control become artifact creatures until end of turn. Choose a Dwarf you control. Attach any number of Equipment you control to it. SVar:ArmDwarf:DB$ Attach | Object$ Valid Equipment.YouCtrl | Defined$ Valid Dwarf.YouCtrl | Optional$ True | StackDescription$ {p:You} chooses a Dwarf they control and attaches any number of Equipment they control to it. AI:RemoveDeck:All -DeckNeeds:Type$Vehicle|Dwarf DeckHints:Type$Equipment +DeckNeeds:Type$Vehicle|Dwarf Oracle:Vehicles you control become artifact creatures until end of turn. Choose a Dwarf you control. Attach any number of Equipment you control to it. diff --git a/forge-gui/res/cardsfolder/a/arms_race.txt b/forge-gui/res/cardsfolder/a/arms_race.txt index ca4d0a34697..a7388a5966a 100644 --- a/forge-gui/res/cardsfolder/a/arms_race.txt +++ b/forge-gui/res/cardsfolder/a/arms_race.txt @@ -5,8 +5,8 @@ A:AB$ ChangeZone | Cost$ 3 R | Origin$ Hand | Destination$ Battlefield | ChangeT SVar:DBPump:DB$ Animate | Keywords$ Haste | Defined$ Remembered | Duration$ Permanent | AtEOT$ Sacrifice | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:NonStackingEffect:True -AI:RemoveDeck:Random SVar:PlayMain1:ALWAYS -DeckNeeds:Type$Artifact +AI:RemoveDeck:Random DeckHas:Keyword$Haste & Ability$Sacrifice +DeckNeeds:Type$Artifact Oracle:{3}{R}: You may put an artifact card from your hand onto the battlefield. The artifact gains haste. Sacrifice it at the beginning of the next end step. diff --git a/forge-gui/res/cardsfolder/a/arrogant_outlaw.txt b/forge-gui/res/cardsfolder/a/arrogant_outlaw.txt index e5867abf1a0..9ba5104db7e 100644 --- a/forge-gui/res/cardsfolder/a/arrogant_outlaw.txt +++ b/forge-gui/res/cardsfolder/a/arrogant_outlaw.txt @@ -5,6 +5,6 @@ PT:3/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | CheckSVar$ X | SVarCompare$ GE1 | Execute$ TrigDrain | TriggerDescription$ When CARDNAME enters, if an opponent lost life this turn, each opponent loses 2 life and you gain 2 life. SVar:TrigDrain:DB$ LoseLife | Defined$ Player.Opponent | LifeAmount$ 2 | SubAbility$ DBGainLife SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ 2 -DeckHas:Ability$LifeGain SVar:X:Count$LifeOppsLostThisTurn +DeckHas:Ability$LifeGain Oracle:When Arrogant Outlaw enters, if an opponent lost life this turn, each opponent loses 2 life and you gain 2 life. diff --git a/forge-gui/res/cardsfolder/a/artificer_class.txt b/forge-gui/res/cardsfolder/a/artificer_class.txt index 19ebf0bde96..efa98369598 100644 --- a/forge-gui/res/cardsfolder/a/artificer_class.txt +++ b/forge-gui/res/cardsfolder/a/artificer_class.txt @@ -8,6 +8,6 @@ SVar:TrigDigUntil:DB$ DigUntil | Valid$ Artifact | FoundDestination$ Hand | Reve K:Class:3:5 U:AddTrigger$ TriggerEndTurn SVar:TriggerEndTurn:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ CopyArtifact | Secondary$ True | TriggerDescription$ At the beginning of your end step, create a token that's a copy of target artifact you control. SVar:CopyArtifact:DB$ CopyPermanent | ValidTgts$ Artifact.YouCtrl | TgtPrompt$ Select target artifact you control to copy -DeckNeeds:Type$Artifact DeckHas:Ability$Token +DeckNeeds:Type$Artifact Oracle:(Gain the next level as a sorcery to add its ability.)\nThe first artifact spell you cast each turn costs {1} less to cast.\n{1}{U}: Level 2\nWhen this Class becomes level 2, reveal cards from the top of your library until you reveal an artifact card. Put that card into your hand and the rest on the bottom of your library in a random order.\n{5}{U}: Level 3\nAt the beginning of your end step, create a token that's a copy of target artifact you control. diff --git a/forge-gui/res/cardsfolder/a/arvad_the_cursed.txt b/forge-gui/res/cardsfolder/a/arvad_the_cursed.txt index f615bd4fc91..b2bf226d830 100644 --- a/forge-gui/res/cardsfolder/a/arvad_the_cursed.txt +++ b/forge-gui/res/cardsfolder/a/arvad_the_cursed.txt @@ -5,7 +5,7 @@ PT:3/3 K:Deathtouch K:Lifelink S:Mode$ Continuous | Affected$ Creature.Legendary+Other+YouCtrl | AddPower$ 2 | AddToughness$ 2 | Description$ Other legendary creatures you control get +2/+2. -AI:RemoveDeck:Random SVar:PlayMain1:TRUE +AI:RemoveDeck:Random DeckHints:Type$Legendary Oracle:Deathtouch, lifelink\nOther legendary creatures you control get +2/+2. diff --git a/forge-gui/res/cardsfolder/a/arwen_weaver_of_hope.txt b/forge-gui/res/cardsfolder/a/arwen_weaver_of_hope.txt index c154ff67b67..f0ec8da61ef 100644 --- a/forge-gui/res/cardsfolder/a/arwen_weaver_of_hope.txt +++ b/forge-gui/res/cardsfolder/a/arwen_weaver_of_hope.txt @@ -4,6 +4,6 @@ Types:Legendary Creature Elf Noble PT:2/1 K:ETBReplacement:Other:AddExtraCounter:Mandatory:Battlefield:Creature.Other+YouCtrl SVar:AddExtraCounter:DB$ PutCounter | ETB$ True | Defined$ ReplacedCard | CounterType$ P1P1 | CounterNum$ X | SpellDescription$ Each other creature you control enters with a number of additional +1/+1 counters on it equal to CARDNAME's toughness. -DeckHas:Ability$Counters SVar:X:Count$CardToughness +DeckHas:Ability$Counters Oracle:Each other creature you control enters with a number of additional +1/+1 counters on it equal to Arwen, Weaver of Hope's toughness. diff --git a/forge-gui/res/cardsfolder/a/ascendant_packleader.txt b/forge-gui/res/cardsfolder/a/ascendant_packleader.txt index 47e6453ea6f..fac131bcc25 100644 --- a/forge-gui/res/cardsfolder/a/ascendant_packleader.txt +++ b/forge-gui/res/cardsfolder/a/ascendant_packleader.txt @@ -5,6 +5,6 @@ PT:2/1 K:etbCounter:P1P1:1:IsPresent$ Permanent.YouCtrl+cmcGE4:CARDNAME enters with a +1/+1 counter on it if you control a permanent with mana value 4 or greater. T:Mode$ SpellCast | ValidCard$ Card.cmcGE4 | ValidActivatingPlayer$ You | Execute$ TrigCounter | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast a spell with mana value 4 or greater, put a +1/+1 counter on CARDNAME. SVar:TrigCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 -DeckHas:Ability$Counters SVar:BuffedBy:Permanent.cmcGE4 +DeckHas:Ability$Counters Oracle:Ascendant Packleader enters with a +1/+1 counter on it if you control a permanent with mana value 4 or greater.\nWhenever you cast a spell with mana value 4 or greater, put a +1/+1 counter on Ascendant Packleader. diff --git a/forge-gui/res/cardsfolder/a/ash_party_crasher.txt b/forge-gui/res/cardsfolder/a/ash_party_crasher.txt index 7b2a8fa6fa2..801054209eb 100644 --- a/forge-gui/res/cardsfolder/a/ash_party_crasher.txt +++ b/forge-gui/res/cardsfolder/a/ash_party_crasher.txt @@ -6,6 +6,6 @@ K:Haste T:Mode$ Attacks | ValidCard$ Creature.Self | CheckSVar$ Celebration | SVarCompare$ GE2 | Execute$ TrigPutCounter | TriggerDescription$ Celebration — Whenever CARDNAME attacks, if two or more nonland permanents entered the battlefield under your control this turn, put a +1/+1 counter on NICKNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 SVar:Celebration:Count$ThisTurnEntered_Battlefield_Permanent.nonLand+YouCtrl -DeckHas:Ability$Counters SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters Oracle:Haste\nCelebration — Whenever Ash, Party Crasher attacks, if two or more nonland permanents entered the battlefield under your control this turn, put a +1/+1 counter on Ash. diff --git a/forge-gui/res/cardsfolder/a/ashad_the_lone_cyberman.txt b/forge-gui/res/cardsfolder/a/ashad_the_lone_cyberman.txt index 54fcca339f4..103791faaa6 100644 --- a/forge-gui/res/cardsfolder/a/ashad_the_lone_cyberman.txt +++ b/forge-gui/res/cardsfolder/a/ashad_the_lone_cyberman.txt @@ -6,7 +6,7 @@ S:Mode$ Continuous | Affected$ Card.Artifact+nonLegendary+YouCtrl | AffectedZone SVar:X:Count$ThisTurnCast_Artifact.nonLegendary+YouCtrl T:Mode$ Sacrificed | ValidCard$ Creature.Other | ValidPlayer$ You | Execute$ TrigPutCounter | TriggerZones$ Battlefield | TriggerDescription$ Whenever you sacrifice another creature, put a +1/+1 counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 +SVar:AIDontSacToCasualty:TRUE DeckHas:Ability$Sacrifice|Counters DeckHints:Type$Artifact -SVar:AIDontSacToCasualty:TRUE Oracle:The first nonlegendary artifact spell you cast each turn has casualty 2. (As you cast it, you may sacrifice a creature with power 2 or greater. When you do, copy it. A copy of an artifact spell becomes a token.)\nWhenever you sacrifice another creature, put a +1/+1 counter on Ashad, the Lone Cyberman. diff --git a/forge-gui/res/cardsfolder/a/ashcoat_of_the_shadow_swarm.txt b/forge-gui/res/cardsfolder/a/ashcoat_of_the_shadow_swarm.txt index aaf3d7c1ccc..524fb8270c3 100644 --- a/forge-gui/res/cardsfolder/a/ashcoat_of_the_shadow_swarm.txt +++ b/forge-gui/res/cardsfolder/a/ashcoat_of_the_shadow_swarm.txt @@ -10,6 +10,6 @@ T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefiel SVar:TrigChange:AB$ ChangeZone | Cost$ Mill<4> | Origin$ Graveyard | Destination$ Hand | ChangeType$ Rat.Creature+YouOwn | ChangeNum$ 2 | Hidden$ True | SelectPrompt$ Select up to two Rat creature cards SVar:HasAttackEffect:TRUE SVar:HasBlockEffect:TRUE -DeckNeeds:Type$Rat DeckHas:Ability$Mill|Graveyard +DeckNeeds:Type$Rat Oracle:Whenever Ashcoat of the Shadow Swarm attacks or blocks, other Rats you control get +X/+X where X is the number of Rats you control.\nAt the beginning of your end step, you may mill four cards. If you do, return up to two Rat creature cards from your graveyard to your hand. (To mill a card, put the top card of your library into your graveyard.) diff --git a/forge-gui/res/cardsfolder/a/ashnod_flesh_mechanist.txt b/forge-gui/res/cardsfolder/a/ashnod_flesh_mechanist.txt index a5488fd6d40..6cf51561771 100644 --- a/forge-gui/res/cardsfolder/a/ashnod_flesh_mechanist.txt +++ b/forge-gui/res/cardsfolder/a/ashnod_flesh_mechanist.txt @@ -6,6 +6,6 @@ K:Deathtouch T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigToken | OptionalDecider$ You | TriggerDescription$ Whenever CARDNAME attacks, you may sacrifice another creature. If you do, create a tapped Powerstone token. SVar:TrigToken:AB$ Token | Cost$ Sac<1/Creature.Other/another creature> | TokenTapped$ True | TokenScript$ c_a_powerstone A:AB$ Token | Cost$ 5 ExileFromGrave<1/Creature/creature card> | TokenTapped$ True | TokenScript$ c_3_3_a_zombie | SpellDescription$ Create a tapped 3/3 colorless Zombie artifact creature token. -DeckHas:Ability$Sacrifice|Token|Graveyard & Type$Zombie|Artifact SVar:HasAttackEffect:TRUE +DeckHas:Ability$Sacrifice|Token|Graveyard & Type$Zombie|Artifact Oracle:Deathtouch\nWhenever Ashnod, Flesh Mechanist attacks, you may sacrifice another creature. If you do, create a tapped Powerstone token.\n{5}, Exile a creature card from your graveyard: Create a tapped 3/3 colorless Zombie artifact creature token. diff --git a/forge-gui/res/cardsfolder/a/ashnods_harvester.txt b/forge-gui/res/cardsfolder/a/ashnods_harvester.txt index ec3df7eaa76..0c17fd6cf41 100644 --- a/forge-gui/res/cardsfolder/a/ashnods_harvester.txt +++ b/forge-gui/res/cardsfolder/a/ashnods_harvester.txt @@ -5,7 +5,7 @@ PT:3/1 T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigExile | TriggerDescription$ Whenever CARDNAME attacks, exile target card from a graveyard. SVar:TrigExile:DB$ ChangeZone | Origin$ Graveyard | Destination$ Exile | ValidTgts$ Card K:Unearth:1 B +SVar:HasAttackEffect:TRUE DeckHas:Ability$Graveyard DeckHints:Color$Black -SVar:HasAttackEffect:TRUE Oracle:Whenever Ashnod's Harvester attacks, exile target card from a graveyard.\nUnearth {1}{B} ({1}{B}: Return this card from your graveyard to the battlefield. It gains haste. Exile it at the beginning of the next end step or if it would leave the battlefield. Unearth only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/a/atog.txt b/forge-gui/res/cardsfolder/a/atog.txt index 3aa552e3659..579a54ad87f 100644 --- a/forge-gui/res/cardsfolder/a/atog.txt +++ b/forge-gui/res/cardsfolder/a/atog.txt @@ -3,7 +3,7 @@ ManaCost:1 R Types:Creature Atog PT:1/2 A:AB$ Pump | Cost$ Sac<1/Artifact> | Defined$ Self | NumAtt$ 2 | NumDef$ 2 | SpellDescription$ CARDNAME gets +2/+2 until end of turn. -DeckNeeds:Type$Artifact -DeckHas:Ability$Sacrifice SVar:AIPreference:SacCost$Artifact.token,Artifact.cmcEQ0+nonLegendary+notnamedBlack Lotus,Artifact.cmcEQ1,Artifact.cmcEQ2,Artifact.cmcEQ3 +DeckHas:Ability$Sacrifice +DeckNeeds:Type$Artifact Oracle:Sacrifice an artifact: Atog gets +2/+2 until end of turn. diff --git a/forge-gui/res/cardsfolder/a/aurelias_vindicator.txt b/forge-gui/res/cardsfolder/a/aurelias_vindicator.txt index 03b9de4b3f1..139e8dbb584 100644 --- a/forge-gui/res/cardsfolder/a/aurelias_vindicator.txt +++ b/forge-gui/res/cardsfolder/a/aurelias_vindicator.txt @@ -10,6 +10,6 @@ T:Mode$ TurnFaceUp | ValidCard$ Card.Self | Execute$ TrigExile | TriggerDescript SVar:TrigExile:DB$ ChangeZone | TargetMin$ 0 | TargetMax$ X | IsCurse$ True | ValidTgts$ Creature.Other | TgtPrompt$ Choose up to X other target creatures from the battlefield and/or creature cards from graveyards | Origin$ Battlefield,Graveyard | Destination$ Exile T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ TrigReturn | TriggerDescription$ When CARDNAME leaves the battlefield, return the exiled cards to their owners' hands. SVar:TrigReturn:DB$ ChangeZoneAll | ChangeType$ Card.ExiledWithSource | Origin$ Exile | Destination$ Hand -DeckHas:Ability$Graveyard SVar:X:Count$xPaid +DeckHas:Ability$Graveyard Oracle:Flying, lifelink, ward {2}\nDisguise {X}{3}{W}\nWhen Aurelia's Vindicator is turned face up, exile up to X other target creatures from the battlefield and/or creature cards from graveyards.\nWhen Aurelia's Vindicator leaves the battlefield, return the exiled cards to their owners' hands. diff --git a/forge-gui/res/cardsfolder/a/aven_courier.txt b/forge-gui/res/cardsfolder/a/aven_courier.txt index e52bc50b890..e29599a0652 100644 --- a/forge-gui/res/cardsfolder/a/aven_courier.txt +++ b/forge-gui/res/cardsfolder/a/aven_courier.txt @@ -5,6 +5,6 @@ PT:1/1 K:Flying T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPutCounter | TriggerDescription$ Whenever CARDNAME attacks, choose a counter on a permanent you control. Put a counter of that kind on target permanent you control if it doesn't have a counter of that kind on it. SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Permanent.YouCtrl | TgtPrompt$ Select target permanent you control | CounterType$ ExistingCounter | Choices$ Permanent.YouCtrl+HasCounters | PutOnDefined$ Targeted | OnlyNewKind$ True -DeckNeeds:Ability$Counters SVar:HasAttackEffect:TRUE +DeckNeeds:Ability$Counters Oracle:Flying\nWhenever Aven Courier attacks, choose a counter on a permanent you control. Put a counter of that kind on target permanent you control if it doesn't have a counter of that kind on it. diff --git a/forge-gui/res/cardsfolder/a/axgard_armory.txt b/forge-gui/res/cardsfolder/a/axgard_armory.txt index e0364a0974a..babb14402c0 100644 --- a/forge-gui/res/cardsfolder/a/axgard_armory.txt +++ b/forge-gui/res/cardsfolder/a/axgard_armory.txt @@ -6,6 +6,6 @@ SVar:ETBTapped:DB$ Tap | Defined$ Self | ETB$ True A:AB$ Mana | Cost$ T | Produced$ W | SpellDescription$ Add {W}. A:AB$ ChangeZone | Cost$ 1 R R W T Sac<1/CARDNAME> | Origin$ Library | Destination$ Hand | ChangeType$ EACH Aura & Equipment | StackDescription$ {p:You} searches their library for an Aura card and/or an Equipment card, reveals them, puts them into their hand, then shuffles their library. | SpellDescription$ Search your library for an Aura card and/or an Equipment card, reveal them, put them into your hand, then shuffle. AI:RemoveDeck:Random -DeckNeeds:Type$Aura|Equipment DeckHas:Ability$Sacrifice +DeckNeeds:Type$Aura|Equipment Oracle:Axgard Armory enters tapped.\n{T}: Add {W}.\n{1}{R}{R}{W}, {T}, Sacrifice Axgard Armory: Search your library for an Aura card and/or an Equipment card, reveal them, put them into your hand, then shuffle. diff --git a/forge-gui/res/cardsfolder/b/baton_of_courage.txt b/forge-gui/res/cardsfolder/b/baton_of_courage.txt index 39a3356bb1c..6bc84e64b20 100644 --- a/forge-gui/res/cardsfolder/b/baton_of_courage.txt +++ b/forge-gui/res/cardsfolder/b/baton_of_courage.txt @@ -4,8 +4,8 @@ Types:Artifact K:Flash K:Sunburst A:AB$ Pump | Cost$ SubCounter<1/CHARGE> | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumDef$ 1 | NumAtt$ 1 | SpellDescription$ Target creature gets +1/+1 until end of turn. -AI:RemoveDeck:Random SVar:NeedsToPlayVar:Z GE1 SVar:Z:Count$UniqueManaColorsProduced.ByUntappedSources +AI:RemoveDeck:Random DeckHints:Ability$Proliferate Oracle:Flash\nSunburst (This enters with a charge counter on it for each color of mana spent to cast it.)\nRemove a charge counter from Baton of Courage: Target creature gets +1/+1 until end of turn. diff --git a/forge-gui/res/cardsfolder/b/benalish_emissary.txt b/forge-gui/res/cardsfolder/b/benalish_emissary.txt index 709039b5a25..3407c99eff6 100644 --- a/forge-gui/res/cardsfolder/b/benalish_emissary.txt +++ b/forge-gui/res/cardsfolder/b/benalish_emissary.txt @@ -5,6 +5,6 @@ PT:1/4 K:Kicker:1 G T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked | Execute$ TrigKicker | TriggerDescription$ When CARDNAME enters, if it was kicked, destroy target land. SVar:TrigKicker:DB$ Destroy | ValidTgts$ Land | TgtPrompt$ Select target land -DeckHints:Color$Green SVar:NeedsToPlayKicked:Land.OppCtrl +DeckHints:Color$Green Oracle:Kicker {1}{G} (You may pay an additional {1}{G} as you cast this spell.)\nWhen Benalish Emissary enters, if it was kicked, destroy target land. diff --git a/forge-gui/res/cardsfolder/b/benalish_partisan.txt b/forge-gui/res/cardsfolder/b/benalish_partisan.txt index 90d83e89ce5..aede1810917 100644 --- a/forge-gui/res/cardsfolder/b/benalish_partisan.txt +++ b/forge-gui/res/cardsfolder/b/benalish_partisan.txt @@ -8,7 +8,7 @@ SVar:TrigReturn:AB$ ChangeZone | Cost$ 1 W | Origin$ Graveyard | Destination$ Ba SVar:DBPump:DB$ Pump | Defined$ Remembered | NumAtt$ 1 | Duration$ Perpetual | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True K:Cycling:1 W +SVar:SacMe:2 DeckHas:Ability$LifeGain|Graveyard DeckNeeds:Keyword$Cycling -SVar:SacMe:2 Oracle:Lifelink\nWhenever you cycle another card, you may pay {1}{W}. If you do, return Benalish Partisan from your graveyard to the battlefield tapped and it perpetually gets +1/+0.\nCycling {1}{W} diff --git a/forge-gui/res/cardsfolder/b/benthic_criminologists.txt b/forge-gui/res/cardsfolder/b/benthic_criminologists.txt index f00f6e460d8..99bbd156b58 100644 --- a/forge-gui/res/cardsfolder/b/benthic_criminologists.txt +++ b/forge-gui/res/cardsfolder/b/benthic_criminologists.txt @@ -5,7 +5,7 @@ PT:4/5 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDraw | TriggerDescription$ Whenever CARDNAME enters or attacks, you may sacrifice an artifact. If you do, draw a card. T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigDraw | Secondary$ True | TriggerDescription$ Whenever CARDNAME enters or attacks, you may sacrifice an artifact. If you do, draw a card. SVar:TrigDraw:AB$ Draw | Cost$ Sac<1/Artifact> -DeckHas:Ability$Sacrifice SVar:HasAttackEffect:TRUE +DeckHas:Ability$Sacrifice DeckHints:Type$Artifact|Treasure|Food|Map|Clue Oracle:Whenever Benthic Criminologists enters or attacks, you may sacrifice an artifact. If you do, draw a card. diff --git a/forge-gui/res/cardsfolder/b/bess_soul_nourisher.txt b/forge-gui/res/cardsfolder/b/bess_soul_nourisher.txt index 1bcb91caf50..7a3797ee527 100644 --- a/forge-gui/res/cardsfolder/b/bess_soul_nourisher.txt +++ b/forge-gui/res/cardsfolder/b/bess_soul_nourisher.txt @@ -7,8 +7,8 @@ SVar:TrigPutCounter:DB$ PutCounter | CounterType$ P1P1 T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPumpAll | TriggerDescription$ Whenever NICKNAME attacks, each other creature you control with base power and toughness 1/1 gets +X/+X until end of turn, where X is the number of +1/+1 counters on NICKNAME. SVar:TrigPumpAll:DB$ PumpAll | ValidCards$ Creature.basePowerEQ1+baseToughnessEQ1+Other+YouCtrl | NumAtt$ +X | NumDef$ +X SVar:X:Count$CardCounters.P1P1 -DeckHas:Ability$Counters -DeckHints:Type$Citizen SVar:HasAttackEffect:TRUE SVar:BuffedBy:Creature.powerEQ1,Creature.toughnessEQ1 +DeckHas:Ability$Counters +DeckHints:Type$Citizen Oracle:Whenever one or more other creatures you control with base power and toughness 1/1 enter, put a +1/+1 counter on Bess, Soul Nourisher.\nWhenever Bess attacks, each other creature you control with base power and toughness 1/1 gets +X/+X until end of turn, where X is the number of +1/+1 counters on Bess. diff --git a/forge-gui/res/cardsfolder/b/big_spender.txt b/forge-gui/res/cardsfolder/b/big_spender.txt index 0c63a491e51..c37bccf5703 100644 --- a/forge-gui/res/cardsfolder/b/big_spender.txt +++ b/forge-gui/res/cardsfolder/b/big_spender.txt @@ -6,7 +6,7 @@ K:Haste T:Mode$ AttackerBlockedOnce | ValidCard$ Creature.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigTreasure | TriggerDescription$ Whenever one or more creatures you control become blocked, create a Treasure token. SVar:TrigTreasure:DB$ Token | TokenScript$ c_a_treasure_sac A:AB$ Draft | Cost$ Sac<2/Artifact> | Spellbook$ Arcane Encyclopedia,Daredevil Dragster,Diamond Mare,Filigree Familiar,Fountain of Renewal,Gilded Lotus,Golden Egg,Guild Globe,Heraldic Banner,Honored Heirloom,Key to the City,Prophetic Prism,Stuffed Bear,Treasure Vault,Zephyr Boots | SpellDescription$ Draft a card from CARDNAME's spellbook. +SVar:AIPreference:SacCost$Treasure.Token,Artifact.Token DeckHas:Ability$Sacrifice|Token|Discard|LifeGain & Type$Treasure|Artifact|Horse|Fox|Food|Equipment|Bear DeckHints:Type$Treasure -SVar:AIPreference:SacCost$Treasure.Token,Artifact.Token Oracle:Haste\nWhenever one or more creatures you control become blocked, create a Treasure token.\nSacrifice two artifacts: Draft a card from Big Spender's spellbook. diff --git a/forge-gui/res/cardsfolder/b/biowaste_blob.txt b/forge-gui/res/cardsfolder/b/biowaste_blob.txt index f12c43c411b..acb00473231 100644 --- a/forge-gui/res/cardsfolder/b/biowaste_blob.txt +++ b/forge-gui/res/cardsfolder/b/biowaste_blob.txt @@ -6,6 +6,6 @@ S:Mode$ Continuous | Affected$ Ooze.YouCtrl | AddPower$ 1 | AddToughness$ 1 | De T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ TrigCopy | TriggerZones$ Battlefield | IsPresent$ Card.IsCommander+YouCtrl | PresentCompare$ GE1 | TriggerDescription$ At the beginning of your upkeep, if you control a commander, create a token that's a copy of CARDNAME. SVar:TrigCopy:DB$ CopyPermanent | Defined$ Self | NumCopies$ 1 AI:RemoveDeck:NonCommander -DeckNeeds:Type$Ooze DeckHas:Ability$Token +DeckNeeds:Type$Ooze Oracle:Oozes you control get +1/+1.\nAt the beginning of your upkeep, if you control a commander, create a token that's a copy of Biowaste Blob. diff --git a/forge-gui/res/cardsfolder/b/blinding_drone.txt b/forge-gui/res/cardsfolder/b/blinding_drone.txt index a27e022e080..87ed80e375a 100644 --- a/forge-gui/res/cardsfolder/b/blinding_drone.txt +++ b/forge-gui/res/cardsfolder/b/blinding_drone.txt @@ -4,6 +4,6 @@ Types:Creature Eldrazi Drone PT:1/3 K:Devoid A:AB$ Tap | Cost$ C T | ValidTgts$ Creature | TgtPrompt$ Select target creature | SpellDescription$ Tap target creature. -DeckHints:Ability$Mana.Colorless SVar:NonCombatPriority:1 +DeckHints:Ability$Mana.Colorless Oracle:Devoid (This card has no color.)\n{C}, {T}: Tap target creature. ({C} represents colorless mana.) diff --git a/forge-gui/res/cardsfolder/b/blinding_souleater.txt b/forge-gui/res/cardsfolder/b/blinding_souleater.txt index 7093c8e226a..0a1681515bb 100644 --- a/forge-gui/res/cardsfolder/b/blinding_souleater.txt +++ b/forge-gui/res/cardsfolder/b/blinding_souleater.txt @@ -3,7 +3,7 @@ ManaCost:3 Types:Artifact Creature Phyrexian Cleric PT:1/3 A:AB$ Tap | Cost$ WP T | ValidTgts$ Creature | TgtPrompt$ Select target creature | AIPhyrexianPayment$ Never | SpellDescription$ Tap target creature. +SVar:NonCombatPriority:1 AI:RemoveDeck:Random DeckNeeds:Color$White -SVar:NonCombatPriority:1 Oracle:{W/P}, {T}: Tap target creature. ({W/P} can be paid with either {W} or 2 life.) diff --git a/forge-gui/res/cardsfolder/b/blitzwing_cruel_tormentor_blitzwing_adaptive_assailant.txt b/forge-gui/res/cardsfolder/b/blitzwing_cruel_tormentor_blitzwing_adaptive_assailant.txt index 2183da172fc..2ee5576a18d 100644 --- a/forge-gui/res/cardsfolder/b/blitzwing_cruel_tormentor_blitzwing_adaptive_assailant.txt +++ b/forge-gui/res/cardsfolder/b/blitzwing_cruel_tormentor_blitzwing_adaptive_assailant.txt @@ -24,6 +24,6 @@ T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | Execute$ TrigRandomPump SVar:TrigRandomPump:DB$ Pump | Defined$ Self | KW$ Flying & Indestructible | RandomKeyword$ True T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ TrigConvert | TriggerDescription$ Whenever NICKNAME deals combat damage to a player, convert it. SVar:TrigConvert:DB$ SetState | Mode$ Transform -DeckHas:Keyword$Flying|Indestructible SVar:HasAttackEffect:TRUE +DeckHas:Keyword$Flying|Indestructible Oracle:Living metal (As long as it's your turn, this Vehicle is also a creature.)\nAt the beginning of combat on your turn, choose flying or indestructible at random. Blitzwing gains that ability until end of turn.\nWhenever Blitzwing deals combat damage to a player, convert it. diff --git a/forge-gui/res/cardsfolder/b/bloodcrazed_socialite.txt b/forge-gui/res/cardsfolder/b/bloodcrazed_socialite.txt index b9172f72acf..0ca4b037a5e 100644 --- a/forge-gui/res/cardsfolder/b/bloodcrazed_socialite.txt +++ b/forge-gui/res/cardsfolder/b/bloodcrazed_socialite.txt @@ -7,7 +7,7 @@ T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefi SVar:DBToken:DB$ Token | TokenScript$ c_a_blood_draw T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ Whenever CARDNAME attacks, you may sacrifice a Blood token. If you do, it gets +2/+2 until end of turn. SVar:TrigPump:AB$ Pump | Cost$ Sac<1/Blood.token/Blood token> | Defined$ Self | NumAtt$ +2 | NumDef$ +2 | SpellDescription$ CARDNAME gets +2/+2 until end of turn. +SVar:HasAttackEffect:TRUE DeckHas:Ability$Token|Sacrifice & Type$Blood DeckHints:Type$Blood -SVar:HasAttackEffect:TRUE Oracle:Menace\nWhen Bloodcrazed Socialite enters, create a Blood token. (It's an artifact with "{1}, {T}, Discard a card, Sacrifice this artifact: Draw a card.")\nWhenever Bloodcrazed Socialite attacks, you may sacrifice a Blood token. If you do, it gets +2/+2 until end of turn. diff --git a/forge-gui/res/cardsfolder/b/blossoming_bogbeast.txt b/forge-gui/res/cardsfolder/b/blossoming_bogbeast.txt index 340eed229bf..35afc31be78 100644 --- a/forge-gui/res/cardsfolder/b/blossoming_bogbeast.txt +++ b/forge-gui/res/cardsfolder/b/blossoming_bogbeast.txt @@ -6,6 +6,6 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigGainLife | TriggerDescript SVar:TrigGainLife:DB$ GainLife | Defined$ You | LifeAmount$ 2 | SubAbility$ DBPumpAll SVar:DBPumpAll:DB$ PumpAll | ValidCards$ Creature.YouCtrl | NumAtt$ X | NumDef$ X | KW$ Trample SVar:X:Count$LifeYouGainedThisTurn -DeckHas:Ability$LifeGain SVar:HasAttackEffect:TRUE +DeckHas:Ability$LifeGain Oracle:Whenever Blossoming Bogbeast attacks, you gain 2 life. Then creatures you control gain trample and get +X/+X until end of turn, where X is the amount of life you gained this turn. diff --git a/forge-gui/res/cardsfolder/b/borborygmos_and_fblthp.txt b/forge-gui/res/cardsfolder/b/borborygmos_and_fblthp.txt index e1dbae9d976..d99b089ba87 100644 --- a/forge-gui/res/cardsfolder/b/borborygmos_and_fblthp.txt +++ b/forge-gui/res/cardsfolder/b/borborygmos_and_fblthp.txt @@ -11,6 +11,6 @@ SVar:TrigDoubleDamage:DB$ DealDamage | NumDmg$ Count$TriggerRememberAmount | Val SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Count$RememberedSize/Twice A:AB$ ChangeZone | Cost$ 1 U | Origin$ Battlefield | Destination$ Library | LibraryPosition$ 2 | SpellDescription$ Put CARDNAME into its owner's library third from the top. -DeckHas:Ability$Discard SVar:HasAttackEffect:TRUE +DeckHas:Ability$Discard Oracle:Whenever Borborygmos and Fblthp enters or attacks, draw a card, then you may discard any number of land cards. When you discard one or more cards this way, Borborygmos and Fblthp deals twice that much damage to target creature.\n{1}{U}: Put Borborygmos and Fblthp into its owner's library third from the top. diff --git a/forge-gui/res/cardsfolder/b/boromir_gondors_hope.txt b/forge-gui/res/cardsfolder/b/boromir_gondors_hope.txt index aaa94717c85..39e99845a0b 100644 --- a/forge-gui/res/cardsfolder/b/boromir_gondors_hope.txt +++ b/forge-gui/res/cardsfolder/b/boromir_gondors_hope.txt @@ -5,6 +5,6 @@ PT:3/4 T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigDig | TriggerDescription$ Whenever CARDNAME enters or attacks, look at the top six cards of your library. You may reveal a Human or artifact card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigDig | Secondary$ True | TriggerDescription$ Whenever CARDNAME enters or attacks, look at the top six cards of your library. You may reveal a Human or artifact card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. SVar:TrigDig:DB$ Dig | DigNum$ 6 | ChangeNum$ 1 | Optional$ True | ForceRevealToController$ True | ChangeValid$ Human,Artifact | RestRandomOrder$ True -DeckHints:Type$Human|Artifact SVar:HasAttackEffect:TRUE +DeckHints:Type$Human|Artifact Oracle:Whenever Boromir, Gondor's Hope enters or attacks, look at the top six cards of your library. You may reveal a Human or artifact card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. diff --git a/forge-gui/res/cardsfolder/b/bortuk_bonerattle.txt b/forge-gui/res/cardsfolder/b/bortuk_bonerattle.txt index a0bca5c515d..2c602b7a119 100644 --- a/forge-gui/res/cardsfolder/b/bortuk_bonerattle.txt +++ b/forge-gui/res/cardsfolder/b/bortuk_bonerattle.txt @@ -6,6 +6,6 @@ T:Mode$ ChangesZone | ValidCard$ Card.wasCastByYou+Self | Destination$ Battlefie SVar:TrigChangeZone:DB$ ChangeZone | ValidTgts$ Creature.YouOwn | Origin$ Graveyard | Destination$ Battlefield | ConditionDefined$ Targeted | ConditionPresent$ Card.cmcLEX | SubAbility$ DBChangeZone SVar:DBChangeZone:DB$ ChangeZone | Defined$ Targeted | Origin$ Graveyard | Destination$ Hand | ConditionDefined$ Targeted | ConditionPresent$ Card.cmcGTX SVar:X:Count$Domain -RemoveDeck:Random +AI:RemoveDeck:Random DeckHas:Ability$Graveyard Oracle:Domain — When Bortuk Bonerattle enters, if you cast it, choose target creature card in your graveyard. Return that card to the battlefield if its mana value is less than or equal to the number of basic land types among lands you control. Otherwise, put it into your hand. diff --git a/forge-gui/res/cardsfolder/b/bramblewood_paragon.txt b/forge-gui/res/cardsfolder/b/bramblewood_paragon.txt index 9ff1af8139d..92db8fae25c 100644 --- a/forge-gui/res/cardsfolder/b/bramblewood_paragon.txt +++ b/forge-gui/res/cardsfolder/b/bramblewood_paragon.txt @@ -5,6 +5,6 @@ PT:2/2 K:ETBReplacement:Other:AddExtraCounter:Mandatory:Battlefield:Creature.Warrior+YouCtrl+Other SVar:AddExtraCounter:DB$ PutCounter | ETB$ True | Defined$ ReplacedCard | CounterType$ P1P1 | CounterNum$ 1 | SpellDescription$ Each other Warrior creature you control enters with an additional +1/+1 counter on it. S:Mode$ Continuous | Affected$ Creature.YouCtrl+counters_GE1_P1P1 | AddKeyword$ Trample | Description$ Each creature you control with a +1/+1 counter on it has trample. -DeckNeeds:Type$Warrior DeckHas:Ability$Counters +DeckNeeds:Type$Warrior Oracle:Each other Warrior creature you control enters with an additional +1/+1 counter on it.\nEach creature you control with a +1/+1 counter on it has trample. diff --git a/forge-gui/res/cardsfolder/b/breath_of_the_sleepless.txt b/forge-gui/res/cardsfolder/b/breath_of_the_sleepless.txt index 77b00673dde..131920f33fb 100644 --- a/forge-gui/res/cardsfolder/b/breath_of_the_sleepless.txt +++ b/forge-gui/res/cardsfolder/b/breath_of_the_sleepless.txt @@ -4,6 +4,6 @@ Types:Enchantment S:Mode$ CastWithFlash | ValidCard$ Spirit | ValidSA$ Spell | EffectZone$ Battlefield | Caster$ You | Description$ You may cast Spirit spells as though they had flash. T:Mode$ SpellCast | ValidCard$ Creature | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | OpponentTurn$ True | Execute$ TrigTap | TriggerDescription$ Whenever you cast a creature spell during an opponent's turn, tap up to one target creature. SVar:TrigTap:DB$ Tap | TargetMin$ 0 | TargetMax$ 1 | ValidTgts$ Creature | TgtPrompt$ Select up to one target creature -DeckHints:Type$Spirit SVar:BuffedBy:Creature.withFlash +DeckHints:Type$Spirit Oracle:You may cast Spirit spells as though they had flash.\nWhenever you cast a creature spell during an opponent's turn, tap up to one target creature. diff --git a/forge-gui/res/cardsfolder/b/briarblade_adept.txt b/forge-gui/res/cardsfolder/b/briarblade_adept.txt index 8af87403f17..bfd44f26e0a 100644 --- a/forge-gui/res/cardsfolder/b/briarblade_adept.txt +++ b/forge-gui/res/cardsfolder/b/briarblade_adept.txt @@ -5,6 +5,6 @@ PT:3/4 K:Encore:3 B T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ Whenever CARDNAME attacks, target creature an opponent controls gets -1/-1 until end of turn. SVar:TrigPump:DB$ Pump | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Select target creature an opponent controls | NumAtt$ -1 | NumDef$ -1 | IsCurse$ True -DeckHas:Ability$Token SVar:HasAttackEffect:TRUE +DeckHas:Ability$Token Oracle:Whenever Briarblade Adept attacks, target creature an opponent controls gets -1/-1 until end of turn.\nEncore {3}{B} ({3}{B}, Exile this card from your graveyard: For each opponent, create a token copy that attacks that opponent this turn if able. They gain haste. Sacrifice them at the beginning of the next end step. Activate only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/b/bribe_taker.txt b/forge-gui/res/cardsfolder/b/bribe_taker.txt index 5df6abf5437..d68a8fc829c 100644 --- a/forge-gui/res/cardsfolder/b/bribe_taker.txt +++ b/forge-gui/res/cardsfolder/b/bribe_taker.txt @@ -5,6 +5,6 @@ PT:6/6 K:Trample T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigPutCounter | TriggerDescription$ When CARDNAME enters, for each kind of counter on permanents you control, you may put your choice of a +1/+1 counter or a counter of that kind on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | CounterTypes$ EachType_Permanent.YouCtrl | AltChoiceForEach$ P1P1 -DeckNeeds:Ability$Counters DeckHas:Ability$Counters +DeckNeeds:Ability$Counters Oracle:Trample\nWhen Bribe Taker enters, for each kind of counter on permanents you control, you may put your choice of a +1/+1 counter or a counter of that kind on Bribe Taker. diff --git a/forge-gui/res/cardsfolder/b/brilliant_restoration.txt b/forge-gui/res/cardsfolder/b/brilliant_restoration.txt index 010b4273f97..a8f8ad9f02a 100644 --- a/forge-gui/res/cardsfolder/b/brilliant_restoration.txt +++ b/forge-gui/res/cardsfolder/b/brilliant_restoration.txt @@ -2,6 +2,6 @@ Name:Brilliant Restoration ManaCost:3 W W W W Types:Sorcery A:SP$ ChangeZoneAll | ChangeType$ Artifact.YouOwn,Enchantment.YouOwn | Origin$ Graveyard | Destination$ Battlefield | SpellDescription$ Return all artifact and enchantment cards from your graveyard to the battlefield. -DeckNeeds:Type$Artifact|Enchantment DeckHas:Ability$Graveyard +DeckNeeds:Type$Artifact|Enchantment Oracle:Return all artifact and enchantment cards from your graveyard to the battlefield. diff --git a/forge-gui/res/cardsfolder/b/bristlebud_farmer.txt b/forge-gui/res/cardsfolder/b/bristlebud_farmer.txt index d93eb4a3a38..66c9bcec999 100644 --- a/forge-gui/res/cardsfolder/b/bristlebud_farmer.txt +++ b/forge-gui/res/cardsfolder/b/bristlebud_farmer.txt @@ -9,7 +9,7 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigMill | TriggerDescription$ SVar:TrigMill:AB$ Mill | Cost$ Sac<1/Food> | NumCards$ 3 | Defined$ You | RememberMilled$ True | SubAbility$ DBChangeZone SVar:DBChangeZone:DB$ ChangeZone | Hidden$ True | Origin$ Graveyard,Exile | Destination$ Hand | ChangeType$ Card.Permanent+YouOwn+IsRemembered | Optional$ True | SelectPrompt$ You may select a permanent milled this way | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +SVar:HasAttackEffect:TRUE DeckHas:Ability$Token|LifeGain|Sacrifice|Mill & Type$Food DeckHints:Type$Food -SVar:HasAttackEffect:TRUE Oracle:Trample\nWhen Bristlebud Farmer enters, create two Food tokens. (They're artifacts with "{2}, {T}, Sacrifice this artifact: You gain 3 life.")\nWhenever Bristlebud Farmer attacks, you may sacrifice a Food. If you do, mill three cards. You may put a permanent card from among them into your hand. diff --git a/forge-gui/res/cardsfolder/b/brood_butcher.txt b/forge-gui/res/cardsfolder/b/brood_butcher.txt index f32c364aa0e..35fe0f6234f 100644 --- a/forge-gui/res/cardsfolder/b/brood_butcher.txt +++ b/forge-gui/res/cardsfolder/b/brood_butcher.txt @@ -6,7 +6,7 @@ K:Devoid T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME enters, create a 1/1 colorless Eldrazi Scion creature token. It has "Sacrifice this creature: Add {C}." SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_1_1_eldrazi_scion_sac | TokenOwner$ You A:AB$ Pump | Cost$ B G Sac<1/Creature> | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumAtt$ -2 | NumDef$ -2 | IsCurse$ True | SpellDescription$ Target creature gets -2/-2 until end of turn. -DeckHints:Type$Eldrazi -DeckHas:Ability$Mana.Colorless|Token SVar:AIPreference:SacCost$Creature.token +DeckHas:Ability$Mana.Colorless|Token +DeckHints:Type$Eldrazi Oracle:Devoid (This card has no color.)\nWhen Brood Butcher enters, create a 1/1 colorless Eldrazi Scion creature token. It has "Sacrifice this creature: Add {C}."\n{B}{G}, Sacrifice a creature: Target creature gets -2/-2 until end of turn. diff --git a/forge-gui/res/cardsfolder/b/brothers_yamazaki.txt b/forge-gui/res/cardsfolder/b/brothers_yamazaki.txt index 042d9287d06..a007beb5a90 100644 --- a/forge-gui/res/cardsfolder/b/brothers_yamazaki.txt +++ b/forge-gui/res/cardsfolder/b/brothers_yamazaki.txt @@ -5,7 +5,7 @@ PT:2/1 K:Bushido:1 S:Mode$ IgnoreLegendRule | ValidCard$ Permanent.namedBrothers Yamazaki | IsPresent$ Permanent.namedBrothers Yamazaki | PresentCompare$ EQ2 | Description$ If there are exactly two permanents named Brothers Yamazaki on the battlefield, the "legend rule" doesn't apply to them. S:Mode$ Continuous | Affected$ Creature.Other+namedBrothers Yamazaki | AddPower$ 2 | AddToughness$ 2 | AddKeyword$ Haste | Description$ Each other creature named Brothers Yamazaki gets +2/+2 and has haste. -DeckHints:Name$Brothers Yamazaki SVar:AILegendaryException:TwoCopiesAllowed SVar:PlayMain1:TRUE +DeckHints:Name$Brothers Yamazaki Oracle:Bushido 1 (Whenever this creature blocks or becomes blocked, it gets +1/+1 until end of turn.)\nIf there are exactly two permanents named Brothers Yamazaki on the battlefield, the "legend rule" doesn't apply to them.\nEach other creature named Brothers Yamazaki gets +2/+2 and has haste. diff --git a/forge-gui/res/cardsfolder/b/bruna_light_of_alabaster.txt b/forge-gui/res/cardsfolder/b/bruna_light_of_alabaster.txt index 9e1bc7a06d0..9bf06da3daf 100644 --- a/forge-gui/res/cardsfolder/b/bruna_light_of_alabaster.txt +++ b/forge-gui/res/cardsfolder/b/bruna_light_of_alabaster.txt @@ -12,6 +12,6 @@ SVar:ZoneAuras:DB$ ChangeZone | Origin$ Hand,Graveyard | Destination$ Battlefiel SVar:CountAuras:Count$ValidHand,Graveyard Aura.CanEnchantSource+YouOwn SVar:HasAttackEffect:TRUE SVar:HasBlockEffect:TRUE -DeckNeeds:Type$Aura DeckHas:Ability$Graveyard +DeckNeeds:Type$Aura Oracle:Flying, vigilance\nWhenever Bruna, Light of Alabaster attacks or blocks, you may attach to it any number of Auras on the battlefield and you may put onto the battlefield attached to it any number of Aura cards that could enchant it from your graveyard and/or hand. diff --git a/forge-gui/res/cardsfolder/b/burakos_party_leader.txt b/forge-gui/res/cardsfolder/b/burakos_party_leader.txt index 6c461efd64f..84d4f9bc745 100644 --- a/forge-gui/res/cardsfolder/b/burakos_party_leader.txt +++ b/forge-gui/res/cardsfolder/b/burakos_party_leader.txt @@ -8,7 +8,7 @@ T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ Tr SVar:TrigLoseLife:DB$ LoseLife | Defined$ TriggeredDefendingPlayer | LifeAmount$ X | SubAbility$ DBTreasureTokens SVar:DBTreasureTokens:DB$ Token | TokenAmount$ X | TokenScript$ c_a_treasure_sac | TokenOwner$ You SVar:X:Count$Party -DeckHints:Ability$Party & Type$Cleric|Rogue|Warrior|Wizard SVar:PlayMain1:TRUE +DeckHints:Ability$Party & Type$Cleric|Rogue|Warrior|Wizard DeckHas:Ability$Token|Sacrifice & Type$Cleric|Rogue|Warrior|Wizard|Treasure|Artifact Oracle:Burakos, Party Leader is also a Cleric, Rogue, Warrior, and Wizard.\nWhenever Burakos attacks, defending player loses X life and you create X Treasure tokens, where X is the number of creatures in your party.\nChoose a Background diff --git a/forge-gui/res/cardsfolder/b/byrke_long_ear_of_the_law.txt b/forge-gui/res/cardsfolder/b/byrke_long_ear_of_the_law.txt index 66857026faf..6648660b760 100644 --- a/forge-gui/res/cardsfolder/b/byrke_long_ear_of_the_law.txt +++ b/forge-gui/res/cardsfolder/b/byrke_long_ear_of_the_law.txt @@ -7,7 +7,7 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigPutCounters:DB$ PutCounter | CounterType$ P1P1 | CounterNum$ 1 | TargetMin$ 0 | TargetMax$ 2 | ValidTgts$ Creature | TgtPrompt$ Select up to two target creatures T:Mode$ Attacks | ValidCard$ Creature.YouCtrl+counters_GE1_P1P1 | Execute$ TrigDoubleCounters | TriggerZones$ Battlefield | TriggerDescription$ Whenever a creature you control with a +1/+1 counter on it attacks, double the number of +1/+1 counters on it. SVar:TrigDoubleCounters:DB$ MultiplyCounter | Defined$ TriggeredAttackerLKICopy | CounterType$ P1P1 +SVar:HasAttackEffect:TRUE DeckHas:Ability$Counters DeckHints:Ability$Counters -SVar:HasAttackEffect:TRUE Oracle:Vigilance\nWhen Byrke, Long Ear of the Law enters, put a +1/+1 counter on each of up to two target creatures.\nWhenever a creature you control with a +1/+1 counter on it attacks, double the number of +1/+1 counters on it. From add0e812a22991f0860eae8cc4ffe6aa5d1ece2e Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 12:06:57 +0100 Subject: [PATCH 21/91] Edit pile cleanup: Line reordering, second pass: part 2, folders 'c' to 'd' --- forge-gui/res/cardsfolder/c/caesar_legions_emperor.txt | 2 +- forge-gui/res/cardsfolder/c/capricious_sliver.txt | 2 +- forge-gui/res/cardsfolder/c/careening_mine_cart.txt | 2 +- forge-gui/res/cardsfolder/c/catti_brie_of_mithral_hall.txt | 2 +- forge-gui/res/cardsfolder/c/cephalid_inkshrouder.txt | 2 +- forge-gui/res/cardsfolder/c/cetavolver.txt | 2 +- forge-gui/res/cardsfolder/c/chain_devil.txt | 2 +- forge-gui/res/cardsfolder/c/chainweb_aracnir.txt | 2 +- forge-gui/res/cardsfolder/c/chandra_flamecaller.txt | 2 +- forge-gui/res/cardsfolder/c/charisma_bobblehead.txt | 2 +- forge-gui/res/cardsfolder/c/chief_jim_hopper.txt | 2 +- forge-gui/res/cardsfolder/c/chisei_heart_of_oceans.txt | 2 +- forge-gui/res/cardsfolder/c/clan_crafter.txt | 2 +- .../res/cardsfolder/c/clavileno_first_of_the_blessed.txt | 2 +- forge-gui/res/cardsfolder/c/clay_revenant.txt | 2 +- forge-gui/res/cardsfolder/c/cleaver_skaab.txt | 4 ++-- forge-gui/res/cardsfolder/c/cleric_class.txt | 2 +- forge-gui/res/cardsfolder/c/coastal_bulwark.txt | 2 +- forge-gui/res/cardsfolder/c/coercive_recruiter.txt | 4 ++-- forge-gui/res/cardsfolder/c/combine_chrysalis.txt | 2 +- forge-gui/res/cardsfolder/c/commence_the_endgame.txt | 4 ++-- forge-gui/res/cardsfolder/c/commissar_severina_raine.txt | 2 +- forge-gui/res/cardsfolder/c/commodore_guff.txt | 2 +- forge-gui/res/cardsfolder/c/conclave_cavalier.txt | 2 +- forge-gui/res/cardsfolder/c/conscripted_infantry.txt | 2 +- forge-gui/res/cardsfolder/c/consecrate_land.txt | 2 +- forge-gui/res/cardsfolder/c/contagion_clasp.txt | 2 +- forge-gui/res/cardsfolder/c/cornered_crook.txt | 2 +- forge-gui/res/cardsfolder/c/cosmic_epiphany.txt | 2 +- forge-gui/res/cardsfolder/c/cosmium_confluence.txt | 2 +- forge-gui/res/cardsfolder/c/crash_the_party.txt | 2 +- forge-gui/res/cardsfolder/c/crashing_tide.txt | 2 +- forge-gui/res/cardsfolder/c/criminal_past.txt | 2 +- forge-gui/res/cardsfolder/c/crown_of_empires.txt | 4 ++-- forge-gui/res/cardsfolder/c/crucias_titan_of_the_waves.txt | 2 +- forge-gui/res/cardsfolder/c/cryptbreaker.txt | 2 +- forge-gui/res/cardsfolder/c/cutthroat_centurion.txt | 2 +- forge-gui/res/cardsfolder/c/cytoplast_manipulator.txt | 2 +- forge-gui/res/cardsfolder/c/cytoplast_root_kin.txt | 2 +- forge-gui/res/cardsfolder/c/cytospawn_shambler.txt | 4 ++-- forge-gui/res/cardsfolder/d/dan_lewis.txt | 2 +- forge-gui/res/cardsfolder/d/daring_fiendbonder.txt | 2 +- .../d/daring_sleuth_bearer_of_overwhelming_truths.txt | 2 +- forge-gui/res/cardsfolder/d/dark_heart_of_the_wood.txt | 2 +- forge-gui/res/cardsfolder/d/dark_supplicant.txt | 2 +- forge-gui/res/cardsfolder/d/dawnhart_disciple.txt | 2 +- forge-gui/res/cardsfolder/d/dawnhart_geist.txt | 2 +- forge-gui/res/cardsfolder/d/day_of_destiny.txt | 2 +- forge-gui/res/cardsfolder/d/dearly_departed.txt | 2 +- forge-gui/res/cardsfolder/d/death_priest_of_myrkul.txt | 2 +- forge-gui/res/cardsfolder/d/defiler_of_faith.txt | 2 +- forge-gui/res/cardsfolder/d/defiler_of_vigor.txt | 2 +- forge-gui/res/cardsfolder/d/degavolver.txt | 2 +- forge-gui/res/cardsfolder/d/demonic_embrace.txt | 2 +- forge-gui/res/cardsfolder/d/demons_disciple.txt | 2 +- forge-gui/res/cardsfolder/d/desert_warfare.txt | 2 +- forge-gui/res/cardsfolder/d/desperate_castaways.txt | 2 +- forge-gui/res/cardsfolder/d/desperate_sentry.txt | 4 ++-- forge-gui/res/cardsfolder/d/determined_iteration.txt | 2 +- forge-gui/res/cardsfolder/d/dire_fleet_captain.txt | 2 +- forge-gui/res/cardsfolder/d/dire_wolves.txt | 2 +- forge-gui/res/cardsfolder/d/distinguished_conjurer.txt | 2 +- forge-gui/res/cardsfolder/d/djinn_of_the_fountain.txt | 2 +- forge-gui/res/cardsfolder/d/dokuchi_silencer.txt | 2 +- forge-gui/res/cardsfolder/d/dominating_vampire.txt | 2 +- forge-gui/res/cardsfolder/d/donal_herald_of_wings.txt | 2 +- forge-gui/res/cardsfolder/d/dragonsguard_elite.txt | 2 +- forge-gui/res/cardsfolder/d/dranas_silencer.txt | 2 +- forge-gui/res/cardsfolder/d/draugr_necromancer.txt | 2 +- forge-gui/res/cardsfolder/d/dreadmalkin.txt | 2 +- forge-gui/res/cardsfolder/d/dream_spoilers.txt | 2 +- forge-gui/res/cardsfolder/d/drey_keeper.txt | 2 +- forge-gui/res/cardsfolder/d/dross_skullbomb.txt | 2 +- forge-gui/res/cardsfolder/d/drover_of_the_mighty.txt | 2 +- forge-gui/res/cardsfolder/d/duggan_private_detective.txt | 2 +- forge-gui/res/cardsfolder/d/dusk_mangler.txt | 2 +- forge-gui/res/cardsfolder/d/dwynen_gilt_leaf_daen.txt | 2 +- 77 files changed, 83 insertions(+), 83 deletions(-) diff --git a/forge-gui/res/cardsfolder/c/caesar_legions_emperor.txt b/forge-gui/res/cardsfolder/c/caesar_legions_emperor.txt index 79ad718b8e9..7bffc1bd003 100644 --- a/forge-gui/res/cardsfolder/c/caesar_legions_emperor.txt +++ b/forge-gui/res/cardsfolder/c/caesar_legions_emperor.txt @@ -9,7 +9,7 @@ SVar:DBToken:DB$ Token | TokenAmount$ 2 | TokenScript$ rw_1_1_soldier_haste | To SVar:DBDraw:DB$ Draw | SubAbility$ DBLoseLife | SpellDescription$ You draw a card and you lose 1 life. SVar:DBLoseLife:DB$ LoseLife | LifeAmount$ 1 SVar:DBDamage:DB$ DealDamage | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | NumDmg$ X | SpellDescription$ CARDNAME deals damage equal to the number of creature tokens you control to target opponent. +SVar:X:Count$Valid Creature.token+YouCtrl DeckHas:Ability$Token|Sacrifice DeckHints:Type$Token -SVar:X:Count$Valid Creature.token+YouCtrl Oracle:Whenever you attack, you may sacrifice another creature. When you do, choose two —\n• Create two 1/1 red and white Soldier creature tokens with haste that are tapped and attacking.\n• You draw a card and you lose 1 life.\n• Caesar, Legion's Emperor deals damage equal to the number of creature tokens you control to target opponent. diff --git a/forge-gui/res/cardsfolder/c/capricious_sliver.txt b/forge-gui/res/cardsfolder/c/capricious_sliver.txt index e6ffdbb0b30..43393b0ec1c 100644 --- a/forge-gui/res/cardsfolder/c/capricious_sliver.txt +++ b/forge-gui/res/cardsfolder/c/capricious_sliver.txt @@ -9,6 +9,6 @@ SVar:DBEffect:DB$ Effect | StaticAbilities$ STPlay | RememberObjects$ Remembered SVar:STPlay:Mode$ Continuous | MayPlay$ True | EffectZone$ Command | Affected$ Card.IsRemembered | AffectedZone$ Exile | Description$ You may play this card this turn. SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:PlayMain1:TRUE -DeckHints:Type$Sliver SVar:BuffedBy:Sliver +DeckHints:Type$Sliver Oracle:Sliver creatures you control have "Whenever this creature deals combat damage to a player, exile the top card of your library. You may play that card this turn." diff --git a/forge-gui/res/cardsfolder/c/careening_mine_cart.txt b/forge-gui/res/cardsfolder/c/careening_mine_cart.txt index 4ed18251610..239042bf78e 100644 --- a/forge-gui/res/cardsfolder/c/careening_mine_cart.txt +++ b/forge-gui/res/cardsfolder/c/careening_mine_cart.txt @@ -5,6 +5,6 @@ PT:3/3 T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ Whenever CARDNAME attacks, create a Treasure token. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_treasure_sac | TokenOwner$ You K:Crew:1 -DeckHas:Ability$Token & Type$Treasure SVar:HasAttackEffect:TRUE +DeckHas:Ability$Token & Type$Treasure Oracle:Whenever Careening Mine Cart attacks, create a Treasure token. (It's an artifact with "{T}, Sacrifice this artifact: Add one mana of any color.")\nCrew 1 (Tap any number of creatures you control with total power 1 or more: This Vehicle becomes an artifact creature until end of turn.) diff --git a/forge-gui/res/cardsfolder/c/catti_brie_of_mithral_hall.txt b/forge-gui/res/cardsfolder/c/catti_brie_of_mithral_hall.txt index db45175716b..de8c1be8c13 100644 --- a/forge-gui/res/cardsfolder/c/catti_brie_of_mithral_hall.txt +++ b/forge-gui/res/cardsfolder/c/catti_brie_of_mithral_hall.txt @@ -11,6 +11,6 @@ A:AB$ DealDamage | Cost$ 1 SubCounter | NumDmg$ X | ValidTgts SVar:X:SVar$CostCountersRemoved SVar:HasAttackEffect:TRUE SVar:EquipMe:Multiple -DeckNeeds:Type$Equipment DeckHas:Ability$Counters +DeckNeeds:Type$Equipment Oracle:First strike, reach\nWhenever Catti-brie of Mithral Hall attacks, put a +1/+1 counter on it for each Equipment attached to it.\n{1}, Remove all +1/+1 counters from Catti-brie: It deals X damage to target attacking or blocking creature an opponent controls, where X is the number of counters removed this way. diff --git a/forge-gui/res/cardsfolder/c/cephalid_inkshrouder.txt b/forge-gui/res/cardsfolder/c/cephalid_inkshrouder.txt index 9549fe44f53..4a9acb35d2b 100644 --- a/forge-gui/res/cardsfolder/c/cephalid_inkshrouder.txt +++ b/forge-gui/res/cardsfolder/c/cephalid_inkshrouder.txt @@ -5,7 +5,7 @@ PT:2/1 A:AB$ Pump | Cost$ Discard<1/Card> | KW$ Shroud | SubAbility$ DBUnblockable | StackDescription$ CARDNAME gains shroud until end of turn and can't be blocked this turn. | SpellDescription$ CARDNAME gains shroud until end of turn and can't be blocked this turn. (A creature with shroud can't be the target of spells or abilities.) SVar:DBUnblockable:DB$ Effect | RememberObjects$ Self | ExileOnMoved$ Battlefield | StaticAbilities$ Unblockable SVar:Unblockable:Mode$ CantBlockBy | ValidAttacker$ Card.IsRemembered | Description$ EFFECTSOURCE can't be blocked this turn. -AI:RemoveDeck:Random SVar:AIPreference:DiscardCost$Card.cmcLE2 +AI:RemoveDeck:Random DeckHas:Ability$Discard Oracle:Discard a card: Cephalid Inkshrouder gains shroud until end of turn and can't be blocked this turn. (A creature with shroud can't be the target of spells or abilities.) diff --git a/forge-gui/res/cardsfolder/c/cetavolver.txt b/forge-gui/res/cardsfolder/c/cetavolver.txt index f2a75775695..feaf8e02fdc 100644 --- a/forge-gui/res/cardsfolder/c/cetavolver.txt +++ b/forge-gui/res/cardsfolder/c/cetavolver.txt @@ -10,6 +10,6 @@ SVar:VolverSpeed:DB$ Animate | Defined$ Self | Keywords$ First Strike | Duration SVar:VolverPumped:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 | ETB$ True | SubAbility$ VolverStomp | SpellDescription$ If CARDNAME was kicked with its {G} kicker, it enters with a +1/+1 counter on it and with trample. SVar:VolverStomp:DB$ Animate | Defined$ Self | Keywords$ Trample | Duration$ Permanent AI:RemoveDeck:Random -DeckNeeds:Color$Red|Green DeckHas:Ability$Counters +DeckNeeds:Color$Red|Green Oracle:Kicker {1}{R} and/or {G} (You may pay an additional {1}{R} and/or {G} as you cast this spell.)\nIf Cetavolver was kicked with its {1}{R} kicker, it enters with two +1/+1 counters on it and with first strike.\nIf Cetavolver was kicked with its {G} kicker, it enters with a +1/+1 counter on it and with trample. diff --git a/forge-gui/res/cardsfolder/c/chain_devil.txt b/forge-gui/res/cardsfolder/c/chain_devil.txt index 190bc277770..8ab03a92b93 100644 --- a/forge-gui/res/cardsfolder/c/chain_devil.txt +++ b/forge-gui/res/cardsfolder/c/chain_devil.txt @@ -4,6 +4,6 @@ Types:Creature Devil PT:4/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigSac | TriggerDescription$ Animate Chains — When CARDNAME enters, each player sacrifices a nontoken creature. SVar:TrigSac:DB$ Sacrifice | Defined$ Player | SacValid$ Creature.nonToken -DeckHas:Ability$Sacrifice SVar:NeedsToPlay:Creature.YouDontCtrl +DeckHas:Ability$Sacrifice Oracle:Animate Chains — When Chain Devil enters, each player sacrifices a nontoken creature. diff --git a/forge-gui/res/cardsfolder/c/chainweb_aracnir.txt b/forge-gui/res/cardsfolder/c/chainweb_aracnir.txt index 5c60b60fdc8..ce2eac3e85d 100644 --- a/forge-gui/res/cardsfolder/c/chainweb_aracnir.txt +++ b/forge-gui/res/cardsfolder/c/chainweb_aracnir.txt @@ -8,6 +8,6 @@ SVar:TrigDamage:DB$ DealDamage | ValidTgts$ Creature.OppCtrl+withFlying | TgtPro SVar:X:Count$CardPower K:Escape:3 G G ExileFromGrave<4/Card.Other/other> K:etbCounter:P1P1:3:ValidCard$ Card.Self+escaped:CARDNAME escapes with three +1/+1 counters on it. -DeckHas:Ability$Counters SVar:AIPreference:ExileFromGraveCost$Card.YouOwn+Other+inZoneGraveyard +DeckHas:Ability$Counters Oracle:Reach\nWhen Chainweb Aracnir enters, it deals damage equal to its power to target creature with flying an opponent controls.\nEscape—{3}{G}{G}, Exile four other cards from your graveyard. (You may cast this card from your graveyard for its escape cost.)\nChainweb Aracnir escapes with three +1/+1 counters on it. diff --git a/forge-gui/res/cardsfolder/c/chandra_flamecaller.txt b/forge-gui/res/cardsfolder/c/chandra_flamecaller.txt index 70adef5dbf9..5000d9b816d 100644 --- a/forge-gui/res/cardsfolder/c/chandra_flamecaller.txt +++ b/forge-gui/res/cardsfolder/c/chandra_flamecaller.txt @@ -9,6 +9,6 @@ SVar:Y:Remembered$Amount/Plus.1 SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True A:AB$ DamageAll | Cost$ SubCounter | NumDmg$ X | ValidCards$ Creature | Planeswalker$ True | Ultimate$ True | ValidDescription$ each creature. | SpellDescription$ CARDNAME deals X damage to each creature. SVar:X:Count$xPaid -DeckHas:Ability$Token SVar:PlayMain1:ALWAYS +DeckHas:Ability$Token Oracle:[+1]: Create two 3/1 red Elemental creature tokens with haste. Exile them at the beginning of the next end step.\n[0]: Discard all the cards in your hand, then draw that many cards plus one.\n[-X]: Chandra, Flamecaller deals X damage to each creature. diff --git a/forge-gui/res/cardsfolder/c/charisma_bobblehead.txt b/forge-gui/res/cardsfolder/c/charisma_bobblehead.txt index 8226f519e5b..34dbadda1e6 100644 --- a/forge-gui/res/cardsfolder/c/charisma_bobblehead.txt +++ b/forge-gui/res/cardsfolder/c/charisma_bobblehead.txt @@ -4,6 +4,6 @@ Types:Artifact Bobblehead A:AB$ Mana | Cost$ T | Produced$ Any | SpellDescription$ Add one mana of any color. A:AB$ Token | Cost$ 4 T | TokenAmount$ X | TokenScript$ w_1_1_soldier | SorcerySpeed$ True | TokenOwner$ You | SpellDescription$ Create X 1/1 white Soldier creature tokens, where X is the number of Bobbleheads you control. Activate only as a sorcery. SVar:X:Count$Valid Bobblehead.YouCtrl -DeckNeeds:Type$Bobblehead DeckHas:Ability$Token & Type$Soldier +DeckNeeds:Type$Bobblehead Oracle:{T}: Add one mana of any color.\n{4}, {T}: Create X 1/1 white Soldier creature tokens, where X is the number of Bobbleheads you control. Activate only as a sorcery. diff --git a/forge-gui/res/cardsfolder/c/chief_jim_hopper.txt b/forge-gui/res/cardsfolder/c/chief_jim_hopper.txt index be5bd44c60c..80f27974d90 100644 --- a/forge-gui/res/cardsfolder/c/chief_jim_hopper.txt +++ b/forge-gui/res/cardsfolder/c/chief_jim_hopper.txt @@ -8,6 +8,6 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigInvestigate | TriggerZones SVar:TrigInvestigate:DB$ Investigate | Num$ X SVar:X:Count$Valid Creature.attacking+nonToken K:Friends forever -DeckHas:Ability$Investigate|Token|Sacrifice SVar:HasAttackEffect:TRUE +DeckHas:Ability$Investigate|Token|Sacrifice Oracle:Menace\nWhenever Chief Jim Hopper attacks, investigate once for each nontoken attacking creature.\nFriends forever (You can have two commanders if both have friends forever.) diff --git a/forge-gui/res/cardsfolder/c/chisei_heart_of_oceans.txt b/forge-gui/res/cardsfolder/c/chisei_heart_of_oceans.txt index 0b9ee538c2a..4867fa730ca 100644 --- a/forge-gui/res/cardsfolder/c/chisei_heart_of_oceans.txt +++ b/forge-gui/res/cardsfolder/c/chisei_heart_of_oceans.txt @@ -5,7 +5,7 @@ PT:4/4 K:Flying T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigSac | TriggerDescription$ At the beginning of your upkeep, sacrifice CARDNAME unless you remove a counter from a permanent you control. SVar:TrigSac:DB$ Sacrifice | UnlessPayer$ You | UnlessCost$ RemoveAnyCounter<1/Any/Permanent.YouCtrl/a permanent you control> -DeckNeeds:Ability$Counters SVar:NeedsToPlay:Creature.YouCtrl+HasCounters SVar:AIRemoveCounterCostPriority:ANY +DeckNeeds:Ability$Counters Oracle:Flying\nAt the beginning of your upkeep, sacrifice Chisei, Heart of Oceans unless you remove a counter from a permanent you control. diff --git a/forge-gui/res/cardsfolder/c/clan_crafter.txt b/forge-gui/res/cardsfolder/c/clan_crafter.txt index 15a67c52df2..77d75799c29 100644 --- a/forge-gui/res/cardsfolder/c/clan_crafter.txt +++ b/forge-gui/res/cardsfolder/c/clan_crafter.txt @@ -6,6 +6,6 @@ SVar:SacArt:AB$ PutCounter | Cost$ 2 Sac<1/Artifact> | Defined$ Self | CounterTy SVar:DBDraw:DB$ Draw | Defined$ You | NumCards$ 1 SVar:BuffedBy:Artifact AI:RemoveDeck:NonCommander -DeckHints:Type$Artifact DeckHas:Ability$Sacrifice|Counters +DeckHints:Type$Artifact Oracle:Commander creatures you own have "{2}, Sacrifice an artifact: Put a +1/+1 counter on this creature and draw a card." diff --git a/forge-gui/res/cardsfolder/c/clavileno_first_of_the_blessed.txt b/forge-gui/res/cardsfolder/c/clavileno_first_of_the_blessed.txt index 6abe2dc7542..b791010621d 100644 --- a/forge-gui/res/cardsfolder/c/clavileno_first_of_the_blessed.txt +++ b/forge-gui/res/cardsfolder/c/clavileno_first_of_the_blessed.txt @@ -7,6 +7,6 @@ SVar:TrigAnimate:DB$ Animate | ValidTgts$ Creature.Vampire+YouCtrl+attacking+non SVar:TrigDie:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigDraw | TriggerDescription$ When this creature dies, draw a card and create a tapped 4/3 white and black Vampire Demon creature token with flying. SVar:TrigDraw:DB$ Draw | Defined$ You | NumCards$ 1 | SubAbility$ TrigToken SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ wb_4_3_vampire_demon_flying | TokenOwner$ You | TokenTapped$ True -DeckHas:Type$Vampire SVar:PlayMain1:TRUE +DeckHas:Type$Vampire Oracle:Whenever you attack, target attacking Vampire that isn't a Demon becomes a Demon in addition to its other types. It gains "When this creature dies, draw a card and create a tapped 4/3 white and black Vampire Demon creature token with flying." diff --git a/forge-gui/res/cardsfolder/c/clay_revenant.txt b/forge-gui/res/cardsfolder/c/clay_revenant.txt index b9c18ccfc4b..bf78be6410f 100644 --- a/forge-gui/res/cardsfolder/c/clay_revenant.txt +++ b/forge-gui/res/cardsfolder/c/clay_revenant.txt @@ -5,7 +5,7 @@ PT:1/2 R:Event$ Moved | ValidCard$ Card.Self | Destination$ Battlefield | ReplacementResult$ Updated | ReplaceWith$ ETBTapped | Description$ CARDNAME enters tapped. SVar:ETBTapped:DB$ Tap | Defined$ Self | ETB$ True A:AB$ ChangeZone | Cost$ 2 B | Origin$ Graveyard | Destination$ Hand | ActivationZone$ Graveyard | SpellDescription$ Return CARDNAME from your graveyard to your hand. +SVar:SacMe:1 DeckHas:Ability$Graveyard DeckHints:Color$Black -SVar:SacMe:1 Oracle:Clay Revenant enters tapped.\n{2}{B}: Return Clay Revenant from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/c/cleaver_skaab.txt b/forge-gui/res/cardsfolder/c/cleaver_skaab.txt index d0eeb448a99..8da698260da 100644 --- a/forge-gui/res/cardsfolder/c/cleaver_skaab.txt +++ b/forge-gui/res/cardsfolder/c/cleaver_skaab.txt @@ -3,8 +3,8 @@ ManaCost:3 U Types:Creature Zombie Horror PT:2/4 A:AB$ CopyPermanent | Cost$ 3 T Sac<1/Zombie.Other/another zombie> | Defined$ Sacrificed | NumCopies$ 2 | AILogic$ AtOppEOT | SpellDescription$ Create two tokens that are copies of the sacrificed creature. -DeckNeeds:Type$Zombie -DeckHas:Ability$Sacrifice|Token SVar:AIPreference:SacCost$Zombie.Other SVar:AIPreferBestCard:TRUE +DeckHas:Ability$Sacrifice|Token +DeckNeeds:Type$Zombie Oracle:{3}, {T}, Sacrifice another Zombie: Create two tokens that are copies of the sacrificed creature. diff --git a/forge-gui/res/cardsfolder/c/cleric_class.txt b/forge-gui/res/cardsfolder/c/cleric_class.txt index 264dea64b3a..759927df581 100644 --- a/forge-gui/res/cardsfolder/c/cleric_class.txt +++ b/forge-gui/res/cardsfolder/c/cleric_class.txt @@ -14,6 +14,6 @@ SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ Y | SubAbility$ DBClea SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:Y:Remembered$CardToughness SVar:PlayMain1:True -DeckNeeds:Ability$LifeGain DeckHas:Ability$Counters|Graveyard +DeckNeeds:Ability$LifeGain Oracle:(Gain the next level as a sorcery to add its ability.)\nIf you would gain life, you gain that much life plus 1 instead.\n{3}{W}: Level 2\nWhenever you gain life, put a +1/+1 counter on target creature you control.\n{4}{W}: Level 3\nWhen this Class becomes level 3, return target creature card from your graveyard to the battlefield. You gain life equal to its toughness. diff --git a/forge-gui/res/cardsfolder/c/coastal_bulwark.txt b/forge-gui/res/cardsfolder/c/coastal_bulwark.txt index 03b12881707..c9e5d7517f9 100644 --- a/forge-gui/res/cardsfolder/c/coastal_bulwark.txt +++ b/forge-gui/res/cardsfolder/c/coastal_bulwark.txt @@ -5,6 +5,6 @@ PT:1/3 K:Defender S:Mode$ Continuous | Affected$ Card.Self | IsPresent$ Island.YouCtrl | AddPower$ 2 | Description$ CARDNAME gets +2/+0 as long as you control an Island. A:AB$ Surveil | Cost$ 2 T | Amount$ 1 | SpellDescription$ Surveil 1. (To surveil 1, look at the top card of your library. You may put that card into your graveyard.) -DeckHints:Ability$Graveyard SVar:BuffedBy:Island +DeckHints:Ability$Graveyard Oracle:Defender\nCoastal Bulwark gets +2/+0 as long as you control an Island.\n{2}, {T}: Surveil 1. (Look at the top card of your library. You may put that card into your graveyard.) diff --git a/forge-gui/res/cardsfolder/c/coercive_recruiter.txt b/forge-gui/res/cardsfolder/c/coercive_recruiter.txt index 627af5af075..52e7273cbf0 100644 --- a/forge-gui/res/cardsfolder/c/coercive_recruiter.txt +++ b/forge-gui/res/cardsfolder/c/coercive_recruiter.txt @@ -5,8 +5,8 @@ PT:4/3 T:Mode$ ChangesZone | ValidCard$ Card.Self,Pirate.Other+YouCtrl | Origin$ Any | Destination$ Battlefield | Execute$ TrigGainControl | TriggerDescription$ Whenever CARDNAME or another Pirate you control enters, gain control of target creature until end of turn. Untap that creature. Until end of turn, it gains haste and becomes a Pirate in addition to its other types. SVar:TrigGainControl:DB$ GainControl | ValidTgts$ Creature | TgtPrompt$ Select target creature | LoseControl$ EOT | Untap$ True | AddKWs$ Haste | SubAbility$ DBAnimate SVar:DBAnimate:DB$ Animate | Defined$ Targeted | Types$ Pirate | UntilEndOfTurn$ True -DeckNeeds:Type$Pirate -DeckHints:Ability$Sacrifice SVar:PlayMain1:ALWAYS SVar:NeedsToPlay:Creature.OppCtrl+powerGE5 +DeckHints:Ability$Sacrifice +DeckNeeds:Type$Pirate Oracle:Whenever Coercive Recruiter or another Pirate you control enters, gain control of target creature until end of turn. Untap that creature. Until end of turn, it gains haste and becomes a Pirate in addition to its other types. diff --git a/forge-gui/res/cardsfolder/c/combine_chrysalis.txt b/forge-gui/res/cardsfolder/c/combine_chrysalis.txt index b26c06d2a68..79d14a88bf3 100644 --- a/forge-gui/res/cardsfolder/c/combine_chrysalis.txt +++ b/forge-gui/res/cardsfolder/c/combine_chrysalis.txt @@ -3,6 +3,6 @@ ManaCost:G U Types:Artifact S:Mode$ Continuous | Affected$ Creature.token+YouCtrl | AddKeyword$ Flying | Description$ Creature tokens you control have flying. A:AB$ Token | Cost$ 2 G U T Sac<1/Permanent.token/token> | SorcerySpeed$ True | TokenScript$ g_4_4_beast | SpellDescription$ Create a 4/4 green Beast creature token. Activate only as a sorcery. -DeckNeeds:Ability$Token DeckHas:Ability$Token +DeckNeeds:Ability$Token Oracle:Creature tokens you control have flying.\n{2}{G}{U}, {T}, Sacrifice a token: Create a 4/4 green Beast creature token. Activate only as a sorcery. diff --git a/forge-gui/res/cardsfolder/c/commence_the_endgame.txt b/forge-gui/res/cardsfolder/c/commence_the_endgame.txt index 05ffcf2fd2c..d7077a058cd 100644 --- a/forge-gui/res/cardsfolder/c/commence_the_endgame.txt +++ b/forge-gui/res/cardsfolder/c/commence_the_endgame.txt @@ -4,7 +4,7 @@ Types:Instant R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered. A:SP$ Draw | NumCards$ 2 | SpellDescription$ Draw two cards, then amass Zombies X, where X is the number of cards in your hand. (Put X +1/+1 counters on an Army you control. If you don't control one, create a 0/0 black Zombie Army creature token first.) | SubAbility$ DBAmass SVar:DBAmass:DB$ Amass | Type$ Zombie | Num$ X -DeckHints:Ability$Amass & Type$Zombie -DeckHas:Ability$Amass|Counters|Token SVar:X:Count$InYourHand +DeckHas:Ability$Amass|Counters|Token +DeckHints:Ability$Amass & Type$Zombie Oracle:This spell can't be countered.\nDraw two cards, then amass Zombies X, where X is the number of cards in your hand. (Put X +1/+1 counters on an Army you control. If you don't control one, create a 0/0 black Zombie Army creature token first.) diff --git a/forge-gui/res/cardsfolder/c/commissar_severina_raine.txt b/forge-gui/res/cardsfolder/c/commissar_severina_raine.txt index 640018c3389..9d2dcf3ef2c 100644 --- a/forge-gui/res/cardsfolder/c/commissar_severina_raine.txt +++ b/forge-gui/res/cardsfolder/c/commissar_severina_raine.txt @@ -7,6 +7,6 @@ SVar:TrigLoseLife:DB$ LoseLife | Defined$ Opponent | LifeAmount$ X A:AB$ GainLife | Cost$ 2 Sac<1/Creature.Other/another creature> | PrecostDesc$ Summary Execution — | LifeAmount$ 2 | SubAbility$ DBDraw | SpellDescription$ You gain 2 life and draw a card. SVar:DBDraw:DB$ Draw SVar:X:Count$Valid Creature.attacking+Other -DeckHas:Ability$Sacrifice|LifeGain SVar:HasAttackEffect:TRUE +DeckHas:Ability$Sacrifice|LifeGain Oracle:Leading from the Front — Whenever Commissar Severina Raine attacks, each opponent loses X life, where X is the number of other attacking creatures.\nSummary Execution — {2}, Sacrifice another creature: You gain 2 life and draw a card. diff --git a/forge-gui/res/cardsfolder/c/commodore_guff.txt b/forge-gui/res/cardsfolder/c/commodore_guff.txt index 4b95d0c891f..b611f1f6564 100644 --- a/forge-gui/res/cardsfolder/c/commodore_guff.txt +++ b/forge-gui/res/cardsfolder/c/commodore_guff.txt @@ -9,6 +9,6 @@ A:AB$ Token | Cost$ AddCounter<1/LOYALTY> | Planeswalker$ True | TokenAmount$ 1 A:AB$ Draw | Cost$ SubCounter<3/LOYALTY> | Planeswalker$ True | NumCards$ X | SubAbility$ DBDamage | SpellDescription$ You draw X cards and CARDNAME deals X damage to each opponent, where X is the number of planeswalkers you control. SVar:DBDamage:DB$ DealDamage | Defined$ Opponent | NumDmg$ X SVar:X:Count$Valid Planeswalker.YouCtrl -DeckNeeds:Type$Planeswalker DeckHas:Ability$Token & Type$Wizard +DeckNeeds:Type$Planeswalker Oracle:At the beginning of your end step, put a loyalty counter on another target planeswalker you control.\n[+1]: Create a 1/1 red Wizard creature token with "{T}: Add {R}. Spend this mana only to cast a planeswalker spell."\n[-3]:You draw X cards and Commodore Guff deals X damage to each opponent, where X is the number of planeswalkers you control.\nCommodore Guff can be your commander. diff --git a/forge-gui/res/cardsfolder/c/conclave_cavalier.txt b/forge-gui/res/cardsfolder/c/conclave_cavalier.txt index de7f8eba578..4fafad4c613 100644 --- a/forge-gui/res/cardsfolder/c/conclave_cavalier.txt +++ b/forge-gui/res/cardsfolder/c/conclave_cavalier.txt @@ -5,6 +5,6 @@ PT:4/4 K:Vigilance T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME dies, create two green and green 2/2 Elf Knight creature tokens with vigilance. SVar:TrigToken:DB$ Token | TokenAmount$ 2 | TokenScript$ gw_2_2_elf_knight_vigilance -DeckHas:Ability$Token SVar:SacMe:4 +DeckHas:Ability$Token Oracle:Vigilance\nWhen Conclave Cavalier dies, create two 2/2 green and white Elf Knight creature tokens with vigilance. diff --git a/forge-gui/res/cardsfolder/c/conscripted_infantry.txt b/forge-gui/res/cardsfolder/c/conscripted_infantry.txt index c9868408f42..c376a065866 100644 --- a/forge-gui/res/cardsfolder/c/conscripted_infantry.txt +++ b/forge-gui/res/cardsfolder/c/conscripted_infantry.txt @@ -4,6 +4,6 @@ Types:Creature Human Soldier PT:3/1 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME dies, create a 1/1 colorless Soldier artifact creature token. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_1_1_a_soldier -DeckHas:Ability$Token & Type$Artifact SVar:SacMe:3 +DeckHas:Ability$Token & Type$Artifact Oracle:When Conscripted Infantry dies, create a 1/1 colorless Soldier artifact creature token. diff --git a/forge-gui/res/cardsfolder/c/consecrate_land.txt b/forge-gui/res/cardsfolder/c/consecrate_land.txt index 1a1da27a4ad..aae226d3979 100644 --- a/forge-gui/res/cardsfolder/c/consecrate_land.txt +++ b/forge-gui/res/cardsfolder/c/consecrate_land.txt @@ -5,7 +5,7 @@ K:Enchant land A:SP$ Attach | Cost$ W | ValidTgts$ Land | AILogic$ Pump S:Mode$ Continuous | Affected$ Land.EnchantedBy | AddKeyword$ Indestructible | Description$ Enchanted land has indestructible. S:Mode$ CantAttach | ValidCard$ Aura.Other | Target$ Land.EnchantedBy | Description$ Enchanted land can't be enchanted by other Auras. -AI:RemoveDeck:Random SVar:NonStackingAttachEffect:True +AI:RemoveDeck:Random DeckHas:Keyword$Indestructible Oracle:Enchant land\nEnchanted land has indestructible and can't be enchanted by other Auras. diff --git a/forge-gui/res/cardsfolder/c/contagion_clasp.txt b/forge-gui/res/cardsfolder/c/contagion_clasp.txt index 9afeb95dbdd..8be7731fca1 100644 --- a/forge-gui/res/cardsfolder/c/contagion_clasp.txt +++ b/forge-gui/res/cardsfolder/c/contagion_clasp.txt @@ -3,7 +3,7 @@ ManaCost:2 Types:Artifact T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigPutCounter | TriggerDescription$ When CARDNAME enters, put a -1/-1 counter on target creature. A:AB$ Proliferate | Cost$ 4 T | SpellDescription$ Proliferate. +SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature | TgtPrompt$ Select target creature | CounterType$ M1M1 | CounterNum$ 1 | IsCurse$ True DeckHas:Ability$Proliferate DeckNeeds:Ability$Counters -SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature | TgtPrompt$ Select target creature | CounterType$ M1M1 | CounterNum$ 1 | IsCurse$ True Oracle:When Contagion Clasp enters, put a -1/-1 counter on target creature.\n{4}, {T}: Proliferate. (Choose any number of permanents and/or players, then give each another counter of each kind already there.) diff --git a/forge-gui/res/cardsfolder/c/cornered_crook.txt b/forge-gui/res/cardsfolder/c/cornered_crook.txt index e97bbd4b5dc..cf43d034b0c 100644 --- a/forge-gui/res/cardsfolder/c/cornered_crook.txt +++ b/forge-gui/res/cardsfolder/c/cornered_crook.txt @@ -6,6 +6,6 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigImmediateTrig:AB$ ImmediateTrigger | Cost$ Sac<1/Artifact> | Execute$ TrigDamage | SpellDescription$ When you do, CARDNAME deals 3 damage to any target. SVar:TrigDamage:DB$ DealDamage | NumDmg$ 3 | ValidTgts$ Any AI:RemoveDeck:Random -DeckNeeds:Type$Artifact DeckHas:Ability$Sacrifice +DeckNeeds:Type$Artifact Oracle:When Cornered Crook enters, you may sacrifice an artifact. When you do, Cornered Crook deals 3 damage to any target. diff --git a/forge-gui/res/cardsfolder/c/cosmic_epiphany.txt b/forge-gui/res/cardsfolder/c/cosmic_epiphany.txt index 04537388761..93c01461f83 100644 --- a/forge-gui/res/cardsfolder/c/cosmic_epiphany.txt +++ b/forge-gui/res/cardsfolder/c/cosmic_epiphany.txt @@ -3,6 +3,6 @@ ManaCost:4 U U Types:Sorcery A:SP$ Draw | NumCards$ X | SpellDescription$ Draw cards equal to the number of instant and sorcery cards in your graveyard. SVar:X:Count$ValidGraveyard Instant.YouOwn,Sorcery.YouOwn -DeckNeeds:Type$Instant|Sorcery DeckHas:Ability$Graveyard +DeckNeeds:Type$Instant|Sorcery Oracle:Draw cards equal to the number of instant and sorcery cards in your graveyard. diff --git a/forge-gui/res/cardsfolder/c/cosmium_confluence.txt b/forge-gui/res/cardsfolder/c/cosmium_confluence.txt index 34f6d21de8d..bfd3b503f01 100644 --- a/forge-gui/res/cardsfolder/c/cosmium_confluence.txt +++ b/forge-gui/res/cardsfolder/c/cosmium_confluence.txt @@ -8,6 +8,6 @@ SVar:DBPutCounter:DB$ PutCounter | CounterType$ P1P1 | Defined$ ChosenCard | Cou SVar:DBAnimate:DB$ Animate | Defined$ ChosenCard | Power$ 0 | Toughness$ 0 | Types$ Creature,Elemental | Keywords$ Haste | Duration$ Permanent | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearChosenCard$ True SVar:DBDestroy:DB$ Destroy | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment | SpellDescription$ Destroy target enchantment. -DeckNeeds:Type$Cave DeckHas:Ability$Counters +DeckNeeds:Type$Cave Oracle:Choose three. You may choose the same mode more than once.\n• Search your library for a Cave card, put it onto the battlefield tapped, then shuffle.\n• Put three +1/+1 counters on a Cave you control. It becomes a 0/0 Elemental creature with haste. It's still a land.\n• Destroy target enchantment. diff --git a/forge-gui/res/cardsfolder/c/crash_the_party.txt b/forge-gui/res/cardsfolder/c/crash_the_party.txt index e7f23f0cc9d..3bd8e348758 100644 --- a/forge-gui/res/cardsfolder/c/crash_the_party.txt +++ b/forge-gui/res/cardsfolder/c/crash_the_party.txt @@ -2,7 +2,7 @@ Name:Crash the Party ManaCost:5 G Types:Instant A:SP$ Token | TokenAmount$ X | TokenScript$ g_4_4_rhino_warrior | TokenTapped$ True | SpellDescription$ Create a tapped 4/4 green Rhino Warrior creature token for each tapped creature you control. -DeckHas:Ability$Token & Type$Rhino|Warrior SVar:X:Count$Valid Creature.YouCtrl+tapped SVar:NeedsToPlayVar:X GT2 +DeckHas:Ability$Token & Type$Rhino|Warrior Oracle:Create a tapped 4/4 green Rhino Warrior creature token for each tapped creature you control. diff --git a/forge-gui/res/cardsfolder/c/crashing_tide.txt b/forge-gui/res/cardsfolder/c/crashing_tide.txt index 16bfa0be2cd..ce296725090 100644 --- a/forge-gui/res/cardsfolder/c/crashing_tide.txt +++ b/forge-gui/res/cardsfolder/c/crashing_tide.txt @@ -4,6 +4,6 @@ Types:Sorcery S:Mode$ Continuous | CharacteristicDefining$ True | AddKeyword$ Flash | IsPresent$ Merfolk.YouCtrl | Description$ This spell has flash as long as you control a Merfolk. A:SP$ ChangeZone | ValidTgts$ Creature | TgtPrompt$ Select target creature | Origin$ Battlefield | Destination$ Hand | SubAbility$ DBDraw | SpellDescription$ Return target creature to its owner's hand. Draw a card. SVar:DBDraw:DB$ Draw | Defined$ You | NumCards$ 1 -DeckHints:Type$Merfolk SVar:BuffedBy:Merfolk +DeckHints:Type$Merfolk Oracle:This spell has flash as long as you control a Merfolk.\nReturn target creature to its owner's hand.\nDraw a card. diff --git a/forge-gui/res/cardsfolder/c/criminal_past.txt b/forge-gui/res/cardsfolder/c/criminal_past.txt index d689e0004db..6829ef9772e 100644 --- a/forge-gui/res/cardsfolder/c/criminal_past.txt +++ b/forge-gui/res/cardsfolder/c/criminal_past.txt @@ -5,6 +5,6 @@ S:Mode$ Continuous | Affected$ Creature.IsCommander+YouOwn | AddKeyword$ Menace SVar:PowerGrave:Mode$ Continuous | Affected$ Card.Self | AddPower$ X | This creature gets +X/+0, where X is the number of creature cards in your graveyard. SVar:X:Count$TypeInYourYard.Creature AI:RemoveDeck:NonCommander -DeckHints:Ability$Discard|Mill|Sacrifice DeckHas:Ability$Graveyard +DeckHints:Ability$Discard|Mill|Sacrifice Oracle:Commander creatures you own have menace and "This creature gets +X/+0, where X is the number of creature cards in your graveyard." (A creature with menace can't be blocked except by two or more creatures.) diff --git a/forge-gui/res/cardsfolder/c/crown_of_empires.txt b/forge-gui/res/cardsfolder/c/crown_of_empires.txt index 9046ccd19ba..15799102262 100644 --- a/forge-gui/res/cardsfolder/c/crown_of_empires.txt +++ b/forge-gui/res/cardsfolder/c/crown_of_empires.txt @@ -3,10 +3,10 @@ ManaCost:2 Types:Artifact A:AB$ Tap | Cost$ 3 T | ValidTgts$ Creature | TgtPrompt$ Select target creature | ConditionCheckSVar$ M12Complete | ConditionSVarCompare$ EQ0 | SubAbility$ DBControl | SpellDescription$ Tap target creature. Gain control of that creature instead if you control artifacts named Scepter of Empires and Throne of Empires. SVar:DBControl:DB$ GainControl | Defined$ Targeted | ConditionCheckSVar$ M12Complete -AI:RemoveDeck:Random -DeckHints:Name$Scepter of Empires|Throne of Empires SVar:M12Complete:Count$Compare AllM12Empires GT0.1.0 SVar:AllM12Empires:SVar$X/Times.Y SVar:X:Count$Valid Artifact.namedScepter of Empires+YouCtrl SVar:Y:Count$Valid Artifact.namedThrone of Empires+YouCtrl +AI:RemoveDeck:Random +DeckHints:Name$Scepter of Empires|Throne of Empires Oracle:{3}, {T}: Tap target creature. Gain control of that creature instead if you control artifacts named Scepter of Empires and Throne of Empires. diff --git a/forge-gui/res/cardsfolder/c/crucias_titan_of_the_waves.txt b/forge-gui/res/cardsfolder/c/crucias_titan_of_the_waves.txt index 95b0a2625c3..b3012802093 100644 --- a/forge-gui/res/cardsfolder/c/crucias_titan_of_the_waves.txt +++ b/forge-gui/res/cardsfolder/c/crucias_titan_of_the_waves.txt @@ -7,6 +7,6 @@ SVar:TrigToken:AB$ Token | Cost$ Discard<1/Card> | TokenScript$ c_a_treasure_sac SVar:DBChoose:DB$ GenericChoice | Choices$ Ambitious,Expedient | Defined$ You | AILogic$ Random SVar:Ambitious:DB$ Seek | Type$ Card.cmcGTX | SpellDescription$ Ambitious — Seek a card with greater mana value than the discarded card. SVar:Expedient:DB$ Seek | Type$ Card.cmcLTX | SpellDescription$ Expedient — Seek a card with lesser mana value than the discarded card. -DeckHas:Ability$Sacrifice|Token|Discard & Type$Treasure|Artifact SVar:X:Discarded$CardManaCost +DeckHas:Ability$Sacrifice|Token|Discard & Type$Treasure|Artifact Oracle:At the beginning of your end step, you may discard a card. If you do, create a Treasure token and choose ambitious or expedient. If you chose ambitious, seek a card with greater mana value than the discarded card. If you chose expedient, seek a card with lesser mana value than the discarded card. diff --git a/forge-gui/res/cardsfolder/c/cryptbreaker.txt b/forge-gui/res/cardsfolder/c/cryptbreaker.txt index e5adbf91f57..dd955723590 100644 --- a/forge-gui/res/cardsfolder/c/cryptbreaker.txt +++ b/forge-gui/res/cardsfolder/c/cryptbreaker.txt @@ -7,6 +7,6 @@ A:AB$ Draw | Cost$ tapXType<3/Zombie> | NumCards$ 1 | AILogic$ AtOppEOT | SpellD SVar:DBLoseLife:DB$ LoseLife | LifeAmount$ 1 SVar:AIPreference:DiscardCost$Card AI:RemoveDeck:Random -DeckNeeds:Type$Zombie DeckHas:Ability$Token +DeckNeeds:Type$Zombie Oracle:{1}{B}, {T}, Discard a card: Create a 2/2 black Zombie creature token.\nTap three untapped Zombies you control: You draw a card and you lose 1 life. diff --git a/forge-gui/res/cardsfolder/c/cutthroat_centurion.txt b/forge-gui/res/cardsfolder/c/cutthroat_centurion.txt index 7d5de87fa66..6644779e119 100644 --- a/forge-gui/res/cardsfolder/c/cutthroat_centurion.txt +++ b/forge-gui/res/cardsfolder/c/cutthroat_centurion.txt @@ -3,6 +3,6 @@ ManaCost:2 B Types:Artifact Creature Phyrexian Warrior PT:2/2 A:AB$ Pump | Cost$ Sac<1/Creature.Other;Artifact.Other/another creature or artifact> | Defined$ Self | NumDef$ 2 | NumAtt$ +2 | AILogic$ Aristocrat | ActivationLimit$ 1 | SpellDescription$ CARDNAME gets +2/+2 until end of turn. Activate only once each turn. -DeckHas:Ability$Sacrifice SVar:AIPreference:SacCost$Artifact.token,Creature.token,Artifact.cmcEQ0+nonLegendary+notnamedBlack Lotus,Artifact.cmcEQ1,Artifact.cmcEQ2,Artifact.cmcEQ3,Creature.cmcLE3 +DeckHas:Ability$Sacrifice Oracle:Sacrifice another artifact or creature: Cutthroat Centurion gets +2/+2 until end of turn. Activate only once each turn. diff --git a/forge-gui/res/cardsfolder/c/cytoplast_manipulator.txt b/forge-gui/res/cardsfolder/c/cytoplast_manipulator.txt index 5c0c500b3a8..304c021a6e6 100644 --- a/forge-gui/res/cardsfolder/c/cytoplast_manipulator.txt +++ b/forge-gui/res/cardsfolder/c/cytoplast_manipulator.txt @@ -5,6 +5,6 @@ PT:0/0 K:Graft:2 A:AB$ GainControl | Cost$ U T | ValidTgts$ Creature.counters_GE1_P1P1 | TgtPrompt$ Select target creature with a +1/+1 counter | LoseControl$ LeavesPlay | SpellDescription$ Gain control of target creature with a +1/+1 counter on it for as long as CARDNAME remains on the battlefield. AI:RemoveDeck:All -DeckNeeds:Ability$Counters DeckHas:Ability$Counters +DeckNeeds:Ability$Counters Oracle:Graft 2 (This creature enters with two +1/+1 counters on it. Whenever another creature enters, you may move a +1/+1 counter from this creature onto it.)\n{U}, {T}: Gain control of target creature with a +1/+1 counter on it for as long as Cytoplast Manipulator remains on the battlefield. diff --git a/forge-gui/res/cardsfolder/c/cytoplast_root_kin.txt b/forge-gui/res/cardsfolder/c/cytoplast_root_kin.txt index 1fa01c5842b..99b30b288e5 100644 --- a/forge-gui/res/cardsfolder/c/cytoplast_root_kin.txt +++ b/forge-gui/res/cardsfolder/c/cytoplast_root_kin.txt @@ -6,6 +6,6 @@ K:Graft:4 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigPutCounterAll | TriggerDescription$ When CARDNAME enters, put a +1/+1 counter on each other creature you control with a +1/+1 counter on it. SVar:TrigPutCounterAll:DB$ PutCounterAll | ValidCards$ Creature.StrictlyOther+YouCtrl+counters_GE1_P1P1 | CounterType$ P1P1 | CounterNum$ 1 A:AB$ MoveCounter | Cost$ 2 | Defined$ Self | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterType$ P1P1 | CounterNum$ 1 | SpellDescription$ Move a +1/+1 counter from target creature you control onto CARDNAME. -DeckNeeds:Ability$Counters DeckHas:Ability$Counters +DeckNeeds:Ability$Counters Oracle:Graft 4 (This creature enters with four +1/+1 counters on it. Whenever another creature enters, you may move a +1/+1 counter from this creature onto it.)\nWhen Cytoplast Root-Kin enters, put a +1/+1 counter on each other creature you control with a +1/+1 counter on it.\n{2}: Move a +1/+1 counter from target creature you control onto Cytoplast Root-Kin. diff --git a/forge-gui/res/cardsfolder/c/cytospawn_shambler.txt b/forge-gui/res/cardsfolder/c/cytospawn_shambler.txt index e34a8022f6d..f97e1d881a7 100644 --- a/forge-gui/res/cardsfolder/c/cytospawn_shambler.txt +++ b/forge-gui/res/cardsfolder/c/cytospawn_shambler.txt @@ -4,7 +4,7 @@ Types:Creature Elemental Mutant PT:0/0 K:Graft:6 A:AB$ Pump | Cost$ G | ValidTgts$ Creature.counters_GE1_P1P1 | TgtPrompt$ Select target creature with a +1/+1 counter | KW$ Trample | SpellDescription$ Target creature with a +1/+1 counter on it gains trample until end of turn. -DeckNeeds:Ability$Counters -DeckHas:Ability$Counters SVar:AIGraftPreference:DontMoveCounterIfLethal +DeckHas:Ability$Counters +DeckNeeds:Ability$Counters Oracle:Graft 6 (This creature enters with six +1/+1 counters on it. Whenever another creature enters, you may move a +1/+1 counter from this creature onto it.)\n{G}: Target creature with a +1/+1 counter on it gains trample until end of turn. diff --git a/forge-gui/res/cardsfolder/d/dan_lewis.txt b/forge-gui/res/cardsfolder/d/dan_lewis.txt index 94cd1965bc2..76dfaafc91d 100644 --- a/forge-gui/res/cardsfolder/d/dan_lewis.txt +++ b/forge-gui/res/cardsfolder/d/dan_lewis.txt @@ -6,6 +6,6 @@ S:Mode$ Continuous | Affected$ Artifact.nonCreature+nonEquipment+YouCtrl | AddTy SVar:EquipAB:Mode$ Continuous | Affected$ Creature.EquippedBy | AddPower$ 1 | Description$ Equipped creature gets +1/+0. K:Doctor's companion AI:RemoveDeck:Random -DeckNeeds:Type$Artifact DeckHas:Type$Equipment +DeckNeeds:Type$Artifact Oracle:Noncreature, non-Equipment artifacts you control are Equipment in addition to their other types and have "Equipped creature gets +1/+0" and equip {1}.\nDoctor's companion (You can have two commanders if the other is the Doctor.) diff --git a/forge-gui/res/cardsfolder/d/daring_fiendbonder.txt b/forge-gui/res/cardsfolder/d/daring_fiendbonder.txt index 94e95804686..72a9521ca42 100644 --- a/forge-gui/res/cardsfolder/d/daring_fiendbonder.txt +++ b/forge-gui/res/cardsfolder/d/daring_fiendbonder.txt @@ -5,6 +5,6 @@ PT:5/1 K:Haste S:Mode$ MustAttack | ValidCreature$ Card.Self | Description$ CARDNAME attacks each combat if able. A:AB$ PutCounter | Cost$ 1 B ExileFromGrave<1/CARDNAME> | ActivationZone$ Graveyard | ValidTgts$ Creature | TgtPrompt$ Select target creature | CounterType$ Indestructible | CounterNum$ 1 | SorcerySpeed$ True | SpellDescription$ Put an indestructible counter on target creature. Activate only as a sorcery. -DeckHas:Ability$Counters|Graveyard SVar:AIPreference:ExileFromGraveCost$Card.Self +DeckHas:Ability$Counters|Graveyard Oracle:Haste\nDaring Fiendbonder attacks each combat if able.\n{1}{B}, Exile Daring Fiendbonder from your graveyard: Put an indestructible counter on target creature. Activate only as a sorcery. diff --git a/forge-gui/res/cardsfolder/d/daring_sleuth_bearer_of_overwhelming_truths.txt b/forge-gui/res/cardsfolder/d/daring_sleuth_bearer_of_overwhelming_truths.txt index 9ffc591beca..29bd10edaa0 100644 --- a/forge-gui/res/cardsfolder/d/daring_sleuth_bearer_of_overwhelming_truths.txt +++ b/forge-gui/res/cardsfolder/d/daring_sleuth_bearer_of_overwhelming_truths.txt @@ -4,8 +4,8 @@ Types:Creature Human Rogue PT:2/1 T:Mode$ Sacrificed | ValidCard$ Clue.YouCtrl | Execute$ TrigTransform | TriggerZones$ Battlefield | TriggerDescription$ When you sacrifice a Clue, transform CARDNAME. SVar:TrigTransform:DB$ SetState | Defined$ Self | Mode$ Transform -DeckNeeds:Ability$Investigate DeckHas:Ability$Investigate|Token +DeckNeeds:Ability$Investigate AlternateMode:DoubleFaced Oracle:When you sacrifice a Clue, transform Daring Sleuth. diff --git a/forge-gui/res/cardsfolder/d/dark_heart_of_the_wood.txt b/forge-gui/res/cardsfolder/d/dark_heart_of_the_wood.txt index d0db6f14542..1650da4ea36 100644 --- a/forge-gui/res/cardsfolder/d/dark_heart_of_the_wood.txt +++ b/forge-gui/res/cardsfolder/d/dark_heart_of_the_wood.txt @@ -2,7 +2,7 @@ Name:Dark Heart of the Wood ManaCost:B G Types:Enchantment A:AB$ GainLife | Cost$ Sac<1/Forest> | LifeAmount$ 3 | SpellDescription$ You gain 3 life. -AI:RemoveDeck:All SVar:NonStackingEffect:True +AI:RemoveDeck:All DeckHas:Ability$Sacrifice|LifeGain Oracle:Sacrifice a Forest: You gain 3 life. diff --git a/forge-gui/res/cardsfolder/d/dark_supplicant.txt b/forge-gui/res/cardsfolder/d/dark_supplicant.txt index 6cef974d577..5842b6329f6 100644 --- a/forge-gui/res/cardsfolder/d/dark_supplicant.txt +++ b/forge-gui/res/cardsfolder/d/dark_supplicant.txt @@ -5,6 +5,6 @@ PT:1/1 A:AB$ ChangeZone | Cost$ T Sac<3/Cleric> | Hidden$ True | Origin$ Library | OriginAlternative$ Graveyard,Hand | Destination$ Battlefield | ChangeType$ Card.YouOwn+namedScion of Darkness | SpellDescription$ Search your graveyard, hand, and/or library for a card named Scion of Darkness and put it onto the battlefield. If you search your library this way, shuffle. AI:RemoveDeck:All AI:RemoveDeck:Random -DeckNeeds:Name$Scion of Darkness & Type$Cleric DeckHas:Ability$Sacrifice +DeckNeeds:Name$Scion of Darkness & Type$Cleric Oracle:{T}, Sacrifice three Clerics: Search your graveyard, hand, and/or library for a card named Scion of Darkness and put it onto the battlefield. If you search your library this way, shuffle. diff --git a/forge-gui/res/cardsfolder/d/dawnhart_disciple.txt b/forge-gui/res/cardsfolder/d/dawnhart_disciple.txt index dcb85133443..a9b962211f4 100644 --- a/forge-gui/res/cardsfolder/d/dawnhart_disciple.txt +++ b/forge-gui/res/cardsfolder/d/dawnhart_disciple.txt @@ -4,6 +4,6 @@ Types:Creature Human Warlock PT:2/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Human.Other+YouCtrl | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ Whenever another Human you control enters, CARDNAME gets +1/+1 until end of turn. SVar:TrigPump:DB$ Pump | Defined$ Self | NumAtt$ +1 | NumDef$ +1 -DeckHints:Type$Human SVar:BuffedBy:Human +DeckHints:Type$Human Oracle:Whenever another Human you control enters, Dawnhart Disciple gets +1/+1 until end of turn. diff --git a/forge-gui/res/cardsfolder/d/dawnhart_geist.txt b/forge-gui/res/cardsfolder/d/dawnhart_geist.txt index c0878bba2df..4d2012f0bcc 100644 --- a/forge-gui/res/cardsfolder/d/dawnhart_geist.txt +++ b/forge-gui/res/cardsfolder/d/dawnhart_geist.txt @@ -4,6 +4,6 @@ Types:Creature Spirit Warlock PT:1/3 T:Mode$ SpellCast | ValidCard$ Enchantment | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigGainLife | TriggerDescription$ Whenever you cast an enchantment spell, you gain 2 life. SVar:TrigGainLife:DB$ GainLife | Defined$ You | LifeAmount$ 2 -DeckNeeds:Type$Enchantment DeckHas:Ability$LifeGain +DeckNeeds:Type$Enchantment Oracle:Whenever you cast an enchantment spell, you gain 2 life. diff --git a/forge-gui/res/cardsfolder/d/day_of_destiny.txt b/forge-gui/res/cardsfolder/d/day_of_destiny.txt index 787cbf2954e..bd93efb1c23 100644 --- a/forge-gui/res/cardsfolder/d/day_of_destiny.txt +++ b/forge-gui/res/cardsfolder/d/day_of_destiny.txt @@ -2,7 +2,7 @@ Name:Day of Destiny ManaCost:3 W Types:Legendary Enchantment S:Mode$ Continuous | Affected$ Creature.Legendary+YouCtrl | AddPower$ 2 | AddToughness$ 2 | Description$ Legendary creatures you control get +2/+2. -AI:RemoveDeck:Random SVar:PlayMain1:TRUE +AI:RemoveDeck:Random DeckHints:Type$Legendary Oracle:Legendary creatures you control get +2/+2. diff --git a/forge-gui/res/cardsfolder/d/dearly_departed.txt b/forge-gui/res/cardsfolder/d/dearly_departed.txt index 83d7cf756da..2a3eb55ea3e 100644 --- a/forge-gui/res/cardsfolder/d/dearly_departed.txt +++ b/forge-gui/res/cardsfolder/d/dearly_departed.txt @@ -5,6 +5,6 @@ PT:5/5 K:Flying K:ETBReplacement:Other:AddExtraCounter:Mandatory:Graveyard:Creature.Human+YouCtrl SVar:AddExtraCounter:DB$ PutCounter | ETB$ True | Defined$ ReplacedCard | CounterType$ P1P1 | CounterNum$ 1 | SpellDescription$ As long as CARDNAME is in your graveyard, each Human creature you control enters with an additional +1/+1 counter on it. -DeckNeeds:Type$Human DeckHas:Ability$Counters +DeckNeeds:Type$Human Oracle:Flying\nAs long as Dearly Departed is in your graveyard, each Human creature you control enters with an additional +1/+1 counter on it. diff --git a/forge-gui/res/cardsfolder/d/death_priest_of_myrkul.txt b/forge-gui/res/cardsfolder/d/death_priest_of_myrkul.txt index ebc4ee0d527..a2bfa4036ff 100644 --- a/forge-gui/res/cardsfolder/d/death_priest_of_myrkul.txt +++ b/forge-gui/res/cardsfolder/d/death_priest_of_myrkul.txt @@ -6,7 +6,7 @@ S:Mode$ Continuous | Affected$ Zombie.YouCtrl,Skeleton.YouCtrl,Vampire.YouCtrl | T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | CheckSVar$ X | SVarCompare$ GE1 | OptionalDecider$ You | Execute$ TrigToken | TriggerDescription$ At the beginning of your end step, if a creature died this turn, you may pay {1}. If you do, create a 1/1 black Skeleton creature token. SVar:TrigToken:AB$ Token | Cost$ 1 | TokenAmount$ 1 | TokenScript$ b_1_1_skeleton | TokenOwner$ You SVar:X:Count$ThisTurnEntered_Graveyard_from_Battlefield_Creature -DeckHas:Ability$Token SVar:PlayMain1:TRUE +DeckHas:Ability$Token DeckHints:Type$Skeleton|Zombie|Vampire Oracle:Skeletons, Vampires, and Zombies you control get +1/+1.\nAt the beginning of your end step, if a creature died this turn, you may pay {1}. If you do, create a 1/1 black Skeleton creature token. diff --git a/forge-gui/res/cardsfolder/d/defiler_of_faith.txt b/forge-gui/res/cardsfolder/d/defiler_of_faith.txt index cf62fd8cc2f..1e3395f6b7d 100644 --- a/forge-gui/res/cardsfolder/d/defiler_of_faith.txt +++ b/forge-gui/res/cardsfolder/d/defiler_of_faith.txt @@ -6,6 +6,6 @@ K:Vigilance S:Mode$ OptionalCost | ValidCard$ Permanent.White | ValidSA$ Spell | Activator$ You | Cost$ PayLife<2> | ReduceColor$ W | Description$ As an additional cost to cast white permanent spells, you may pay 2 life. Those spells cost {W} less to cast if you paid life this way. This effect reduces only the amount of white mana you pay. T:Mode$ SpellCast | ValidCard$ Permanent.White | ValidActivatingPlayer$ You | Execute$ TrigToken | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast a white permanent spell, create a 1/1 white Soldier creature token. SVar:TrigToken:DB$ Token | TokenScript$ w_1_1_soldier -DeckHas:Ability$Token & Type$Soldier SVar:BuffedBy:Permanent.White +DeckHas:Ability$Token & Type$Soldier Oracle:Vigilance\nAs an additional cost to cast white permanent spells, you may pay 2 life. Those spells cost {W} less to cast if you paid life this way. This effect reduces only the amount of white mana you pay.\nWhenever you cast a white permanent spell, create a 1/1 white Soldier creature token. diff --git a/forge-gui/res/cardsfolder/d/defiler_of_vigor.txt b/forge-gui/res/cardsfolder/d/defiler_of_vigor.txt index bc19394eb31..22b08fbd704 100644 --- a/forge-gui/res/cardsfolder/d/defiler_of_vigor.txt +++ b/forge-gui/res/cardsfolder/d/defiler_of_vigor.txt @@ -6,6 +6,6 @@ K:Trample S:Mode$ OptionalCost | ValidCard$ Permanent.Green | ValidSA$ Spell | Activator$ You | Cost$ PayLife<2> | ReduceColor$ G | Description$ As an additional cost to cast green permanent spells, you may pay 2 life. Those spells cost {G} less to cast if you paid life this way. This effect reduces only the amount of green mana you pay. T:Mode$ SpellCast | ValidCard$ Permanent.Green | ValidActivatingPlayer$ You | Execute$ TrigCounters | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast a green permanent spell, put a +1/+1 counter on each creature you control. SVar:TrigCounters:DB$ PutCounterAll | ValidCards$ Creature.YouCtrl | CounterType$ P1P1 -DeckHas:Ability$Counters SVar:BuffedBy:Permanent.Green +DeckHas:Ability$Counters Oracle:Trample\nAs an additional cost to cast green permanent spells, you may pay 2 life. Those spells cost {G} less to cast if you paid life this way. This effect reduces only the amount of green mana you pay.\nWhenever you cast a green permanent spell, put a +1/+1 counter on each creature you control. diff --git a/forge-gui/res/cardsfolder/d/degavolver.txt b/forge-gui/res/cardsfolder/d/degavolver.txt index b6d140823be..7b44a4f1e78 100644 --- a/forge-gui/res/cardsfolder/d/degavolver.txt +++ b/forge-gui/res/cardsfolder/d/degavolver.txt @@ -11,6 +11,6 @@ SVar:ABRegen:AB$ Regenerate | Cost$ PayLife<3> | SpellDescription$ Regenerate CA SVar:VolverPumped:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 | ETB$ True | SubAbility$ VolverSpeed | SpellDescription$ If CARDNAME was kicked with its {R} kicker, it enters with a +1/+1 counter on it and with first strike. SVar:VolverSpeed:DB$ Animate | Defined$ Self | Keywords$ First Strike | Duration$ Permanent AI:RemoveDeck:Random -DeckNeeds:Color$Black|Red DeckHas:Ability$Counters +DeckNeeds:Color$Black|Red Oracle:Kicker {1}{B} and/or {R} (You may pay an additional {1}{B} and/or {R} as you cast this spell.)\nIf Degavolver was kicked with its {1}{B} kicker, it enters with two +1/+1 counters on it and with "Pay 3 life: Regenerate Degavolver."\nIf Degavolver was kicked with its {R} kicker, it enters with a +1/+1 counter on it and with first strike. diff --git a/forge-gui/res/cardsfolder/d/demonic_embrace.txt b/forge-gui/res/cardsfolder/d/demonic_embrace.txt index c044346f410..03289c88d25 100644 --- a/forge-gui/res/cardsfolder/d/demonic_embrace.txt +++ b/forge-gui/res/cardsfolder/d/demonic_embrace.txt @@ -5,6 +5,6 @@ K:Enchant creature A:SP$ Attach | Cost$ 1 B B | ValidTgts$ Creature | AILogic$ Pump S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddPower$ 3 | AddToughness$ 1 | AddKeyword$ Flying | AddType$ Demon | Description$ Enchanted creature gets +3/+1, has flying, and is a Demon in addition to its other types. S:Mode$ Continuous | Affected$ Card.Self | MayPlay$ True | AffectedZone$ Graveyard | EffectZone$ Graveyard | RaiseCost$ PayLife<3> Discard<1/Card> | Description$ You may cast CARDNAME from your graveyard by paying 3 life and discarding a card in addition to paying its other costs. -DeckHas:Ability$Discard|Graveyard SVar:DiscardMe:1 +DeckHas:Ability$Discard|Graveyard Oracle:Enchant creature\nEnchanted creature gets +3/+1, has flying, and is a Demon in addition to its other types.\nYou may cast Demonic Embrace from your graveyard by paying 3 life and discarding a card in addition to paying its other costs. diff --git a/forge-gui/res/cardsfolder/d/demons_disciple.txt b/forge-gui/res/cardsfolder/d/demons_disciple.txt index 021de219c81..a9b1048a294 100644 --- a/forge-gui/res/cardsfolder/d/demons_disciple.txt +++ b/forge-gui/res/cardsfolder/d/demons_disciple.txt @@ -4,8 +4,8 @@ Types:Creature Human Cleric PT:3/1 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigSac | TriggerDescription$ When CARDNAME enters, each player sacrifices a creature or planeswalker. SVar:TrigSac:DB$ Sacrifice | Defined$ Player | SacValid$ Creature,Planeswalker | SacMessage$ creature or planeswalker -DeckHas:Ability$Sacrifice SVar:X:Count$Valid Creature.OppCtrl/Plus.Y SVar:Y:Count$Valid Planeswalker.OppCtrl SVar:NeedsToPlayVar:X GE1 +DeckHas:Ability$Sacrifice Oracle:When Demon's Disciple enters, each player sacrifices a creature or planeswalker. diff --git a/forge-gui/res/cardsfolder/d/desert_warfare.txt b/forge-gui/res/cardsfolder/d/desert_warfare.txt index 21f0dd2ddfc..4d634319b46 100644 --- a/forge-gui/res/cardsfolder/d/desert_warfare.txt +++ b/forge-gui/res/cardsfolder/d/desert_warfare.txt @@ -8,6 +8,6 @@ SVar:TrigReturn:DB$ ChangeZone | Defined$ Spawner>TriggeredCard | GainControl$ T T:Mode$ Phase | IsPresent$ Desert.YouCtrl | PresentCompare$ GE5 | Phase$ BeginCombat | ValidPlayer$ You | Execute$ TrigToken | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of combat on your turn, if you control five or more Deserts, create that many 1/1 red, green, and white Sand Warrior creature tokens. They gain haste. SVar:TrigToken:DB$ Token | TokenAmount$ X | PumpKeywords$ Haste | TokenScript$ rgw_1_1_sand_warrior | TokenOwner$ You SVar:X:Count$Valid Desert.YouCtrl -DeckNeeds:Type$Desert DeckHas:Ability$Token & Type$Sand|Warrior +DeckNeeds:Type$Desert Oracle:Whenever you sacrifice a Desert and whenever a Desert card is put into your graveyard from your hand or library, put that card onto the battlefield under your control at the beginning of your next end step.\nAt the beginning of combat on your turn, if you control five or more Deserts, create that many 1/1 red, green, and white Sand Warrior creature tokens. They gain haste. diff --git a/forge-gui/res/cardsfolder/d/desperate_castaways.txt b/forge-gui/res/cardsfolder/d/desperate_castaways.txt index a0ae8ce1495..5ff89bbd69f 100644 --- a/forge-gui/res/cardsfolder/d/desperate_castaways.txt +++ b/forge-gui/res/cardsfolder/d/desperate_castaways.txt @@ -3,6 +3,6 @@ ManaCost:1 B Types:Creature Human Pirate PT:2/3 S:Mode$ Continuous | Affected$ Card.Self | AddHiddenKeyword$ CARDNAME can't attack. | IsPresent$ Artifact.YouCtrl | PresentCompare$ EQ0 | Description$ CARDNAME can't attack unless you control an artifact. -DeckHints:Type$Artifact SVar:BuffedBy:Artifact +DeckHints:Type$Artifact Oracle:Desperate Castaways can't attack unless you control an artifact. diff --git a/forge-gui/res/cardsfolder/d/desperate_sentry.txt b/forge-gui/res/cardsfolder/d/desperate_sentry.txt index ca8e7f75879..cea9fdf4e77 100644 --- a/forge-gui/res/cardsfolder/d/desperate_sentry.txt +++ b/forge-gui/res/cardsfolder/d/desperate_sentry.txt @@ -5,7 +5,7 @@ PT:1/2 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME dies, create a 3/2 colorless Eldrazi Horror creature token. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_3_2_eldrazi_horror | TokenOwner$ You S:Mode$ Continuous | Affected$ Card.Self | AddPower$ 3 | Condition$ Delirium | Description$ Delirium — CARDNAME gets +3/+0 as long as there are four or more card types among cards in your graveyard. -DeckHints:Ability$Graveyard|Discard & Type$Eldrazi|Horror -DeckHas:Ability$Token|Delirium SVar:SacMe:2 +DeckHas:Ability$Token|Delirium +DeckHints:Ability$Graveyard|Discard & Type$Eldrazi|Horror Oracle:When Desperate Sentry dies, create a 3/2 colorless Eldrazi Horror creature token.\nDelirium — Desperate Sentry gets +3/+0 as long as there are four or more card types among cards in your graveyard. diff --git a/forge-gui/res/cardsfolder/d/determined_iteration.txt b/forge-gui/res/cardsfolder/d/determined_iteration.txt index 07af4f9a82b..0dab854c6cc 100644 --- a/forge-gui/res/cardsfolder/d/determined_iteration.txt +++ b/forge-gui/res/cardsfolder/d/determined_iteration.txt @@ -3,6 +3,6 @@ ManaCost:1 R Types:Enchantment T:Mode$ Phase | Phase$ BeginCombat | TriggerZones$ Battlefield | ValidPlayer$ You | Execute$ TrigPopulate | TriggerDescription$ At the beginning of combat on your turn, populate. The token created this way gains haste. Sacrifice it at the beginning of the next end step. (To populate, create a token that's a copy of a creature token you control.) SVar:TrigPopulate:DB$ CopyPermanent | Choices$ Creature.token+YouCtrl | Populate$ True | PumpKeywords$ Haste | AtEOT$ Sacrifice -DeckNeeds:Ability$Token DeckHas:Ability$Token|Sacrifice +DeckNeeds:Ability$Token Oracle:At the beginning of combat on your turn, populate. The token created this way gains haste. Sacrifice it at the beginning of the next end step. (To populate, create a token that's a copy of a creature token you control.) diff --git a/forge-gui/res/cardsfolder/d/dire_fleet_captain.txt b/forge-gui/res/cardsfolder/d/dire_fleet_captain.txt index 131e9223c64..8a643f01735 100644 --- a/forge-gui/res/cardsfolder/d/dire_fleet_captain.txt +++ b/forge-gui/res/cardsfolder/d/dire_fleet_captain.txt @@ -5,6 +5,6 @@ PT:2/2 T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ Whenever CARDNAME attacks, it gets +1/+1 until end of turn for each other attacking Pirate. SVar:TrigPump:DB$ Pump | Defined$ Self | NumAtt$ X | NumDef$ X SVar:X:Count$Valid Pirate.attacking+Other -DeckHints:Type$Pirate SVar:HasAttackEffect:TRUE +DeckHints:Type$Pirate Oracle:Whenever Dire Fleet Captain attacks, it gets +1/+1 until end of turn for each other attacking Pirate. diff --git a/forge-gui/res/cardsfolder/d/dire_wolves.txt b/forge-gui/res/cardsfolder/d/dire_wolves.txt index c3534507820..06c4859339b 100644 --- a/forge-gui/res/cardsfolder/d/dire_wolves.txt +++ b/forge-gui/res/cardsfolder/d/dire_wolves.txt @@ -3,7 +3,7 @@ ManaCost:2 G Types:Creature Wolf PT:2/2 S:Mode$ Continuous | Affected$ Card.Self | AddKeyword$ Banding | IsPresent$ Plains.YouCtrl | Description$ CARDNAME has banding as long as you control a Plains. -AI:RemoveDeck:All SVar:BuffedBy:Plains +AI:RemoveDeck:All DeckNeeds:Type$Plains Oracle:Dire Wolves has banding as long as you control a Plains. (Any creatures with banding, and up to one without, can attack in a band. Bands are blocked as a group. If any creatures with banding you control are blocking or being blocked by a creature, you divide that creature's combat damage, not its controller, among any of the creatures it's being blocked by or is blocking.) diff --git a/forge-gui/res/cardsfolder/d/distinguished_conjurer.txt b/forge-gui/res/cardsfolder/d/distinguished_conjurer.txt index b66ede3dcf7..03ad8e98f70 100644 --- a/forge-gui/res/cardsfolder/d/distinguished_conjurer.txt +++ b/forge-gui/res/cardsfolder/d/distinguished_conjurer.txt @@ -7,6 +7,6 @@ SVar:TrigGainLife:DB$ GainLife | LifeAmount$ 1 A:AB$ ChangeZone | Cost$ 4 W T | ValidTgts$ Creature.Other+YouCtrl | Origin$ Battlefield | Destination$ Exile | TgtPrompt$ Select another target creature you control | RememberChanged$ True | SubAbility$ DBReturn | SpellDescription$ Exile another target creature you control, then return it to the battlefield under its owner's control. SVar:DBReturn:DB$ ChangeZone | Defined$ Remembered | Origin$ All | Destination$ Battlefield | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -DeckHas:Ability$LifeGain SVar:BuffedBy:Creature +DeckHas:Ability$LifeGain Oracle:Whenever another creature you control enters, you gain 1 life.\n{4}{W}, {T}: Exile another target creature you control, then return it to the battlefield under its owner's control. diff --git a/forge-gui/res/cardsfolder/d/djinn_of_the_fountain.txt b/forge-gui/res/cardsfolder/d/djinn_of_the_fountain.txt index b44399ddb01..bb314e52f27 100644 --- a/forge-gui/res/cardsfolder/d/djinn_of_the_fountain.txt +++ b/forge-gui/res/cardsfolder/d/djinn_of_the_fountain.txt @@ -10,6 +10,6 @@ SVar:DBExile:DB$ ChangeZone | Defined$ Self | Origin$ Battlefield | Destination$ SVar:DelTrig:DB$ DelayedTrigger | Mode$ Phase | Phase$ End of Turn | Execute$ TrigReturn | RememberObjects$ Remembered | ConditionDefined$ Remembered | ConditionPresent$ Card | TriggerDescription$ Return CARDNAME to the battlefield under its owner's control at the beginning of the next end step. SVar:TrigReturn:DB$ ChangeZone | Defined$ DelayTriggerRememberedLKI | Origin$ Exile | Destination$ Battlefield SVar:DBScry:DB$ Scry | ScryNum$ 1 | SpellDescription$ Scry 1. -DeckNeeds:Type$Instant|Sorcery SVar:BuffedBy:Spell.Instant,Spell.Sorcery +DeckNeeds:Type$Instant|Sorcery Oracle:Flying\nWhenever you cast an instant or sorcery spell, choose one —\n• Djinn of the Fountain gets +1/+1 until end of turn.\n• Exile Djinn of the Fountain. Return it to the battlefield under its owner's control at the beginning of the next end step.\n• Scry 1. diff --git a/forge-gui/res/cardsfolder/d/dokuchi_silencer.txt b/forge-gui/res/cardsfolder/d/dokuchi_silencer.txt index f62cf4ceafd..304b79fcfbe 100644 --- a/forge-gui/res/cardsfolder/d/dokuchi_silencer.txt +++ b/forge-gui/res/cardsfolder/d/dokuchi_silencer.txt @@ -6,6 +6,6 @@ K:Ninjutsu:1 B T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | Execute$ TrigImmediateTrig | CombatDamage$ True | OptionalDecider$ You | TriggerDescription$ Whenever CARDNAME deals combat damage to a player, you may discard a creature card. When you do, destroy target creature or planeswalker that player controls. SVar:TrigImmediateTrig:AB$ ImmediateTrigger | Cost$ Discard<1/Creature> | Execute$ TrigDestroy | TriggerDescription$ When you do, destroy target creature or planeswalker that player controls. SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.ControlledBy Spawner>TriggeredTarget,Planeswalker.ControlledBy Spawner>TriggeredTarget | TgtPrompt$ Select target creature or planeswalker damaged player controls -DeckHas:Ability$Discard SVar:AIPreference:DiscardCost$Creature.cmcLE3 +DeckHas:Ability$Discard Oracle:Ninjutsu {1}{B} ({1}{B}, Return an unblocked attacker you control to hand: Put this card onto the battlefield from your hand tapped and attacking.)\nWhenever Dokuchi Silencer deals combat damage to a player, you may discard a creature card. When you do, destroy target creature or planeswalker that player controls. diff --git a/forge-gui/res/cardsfolder/d/dominating_vampire.txt b/forge-gui/res/cardsfolder/d/dominating_vampire.txt index 8e25df3ec03..0b2b09638f6 100644 --- a/forge-gui/res/cardsfolder/d/dominating_vampire.txt +++ b/forge-gui/res/cardsfolder/d/dominating_vampire.txt @@ -5,6 +5,6 @@ PT:3/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigGainControl | TriggerDescription$ When CARDNAME enters, gain control of target creature an opponent controls with mana value less than or equal to the number of Vampires you control until end of turn. Untap that creature. It gains haste until end of turn. SVar:TrigGainControl:DB$ GainControl | TgtPrompt$ Select target creature with mana value less than or equal to the number of Vampires you control | ValidTgts$ Creature.cmcLEX | LoseControl$ EOT | Untap$ True | AddKWs$ Haste SVar:X:Count$Valid Vampire.YouCtrl -DeckHints:Type$Vampire SVar:PlayMain1:OPPONENTCREATURES +DeckHints:Type$Vampire Oracle:When Dominating Vampire enters, gain control of target creature with mana value less than or equal to the number of Vampires you control until end of turn. Untap that creature. It gains haste until end of turn. diff --git a/forge-gui/res/cardsfolder/d/donal_herald_of_wings.txt b/forge-gui/res/cardsfolder/d/donal_herald_of_wings.txt index 2388fe1dc4b..98028ae8e37 100644 --- a/forge-gui/res/cardsfolder/d/donal_herald_of_wings.txt +++ b/forge-gui/res/cardsfolder/d/donal_herald_of_wings.txt @@ -4,7 +4,7 @@ Types:Legendary Creature Human Wizard PT:3/3 T:Mode$ SpellCast | TriggerZones$ Battlefield | ValidCard$ Creature.withFlying+nonLegendary | ValidActivatingPlayer$ You | ResolvedLimit$ 1 | Execute$ TrigCopy | OptionalDecider$ You | TriggerDescription$ Whenever you cast a nonlegendary creature spell with flying, you may copy it, except the copy is a 1/1 Spirit in addition to its other types. Do this only once each turn. (The copy becomes a token.) SVar:TrigCopy:DB$ CopySpellAbility | Defined$ TriggeredSpellAbility | SetPower$ 1 | SetToughness$ 1 | AddTypes$ Spirit +SVar:BuffedBy:Creature.withFlying DeckHas:Ability$Token DeckHints:Keyword$Flying -SVar:BuffedBy:Creature.withFlying Oracle:Whenever you cast a nonlegendary creature spell with flying, you may copy it, except the copy is a 1/1 Spirit in addition to its other types. Do this only once each turn. (The copy becomes a token.) diff --git a/forge-gui/res/cardsfolder/d/dragonsguard_elite.txt b/forge-gui/res/cardsfolder/d/dragonsguard_elite.txt index 0f0e24fe7b5..ece62b82745 100644 --- a/forge-gui/res/cardsfolder/d/dragonsguard_elite.txt +++ b/forge-gui/res/cardsfolder/d/dragonsguard_elite.txt @@ -5,7 +5,7 @@ PT:2/2 T:Mode$ SpellCastOrCopy | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Magecraft — Whenever you cast or copy an instant or sorcery spell, put a +1/+1 counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | CounterType$ P1P1 | CounterNum$ 1 A:AB$ MultiplyCounter | Cost$ 4 G G | Defined$ Self | CounterType$ P1P1 | SpellDescription$ Double the number of +1/+1 counters on CARDNAME. -DeckHas:Ability$Counters SVar:BuffedBy:Instant,Sorcery +DeckHas:Ability$Counters DeckHints:Type$Instant|Sorcery Oracle:Magecraft — Whenever you cast or copy an instant or sorcery spell, put a +1/+1 counter on Dragonsguard Elite.\n{4}{G}{G}: Double the number of +1/+1 counters on Dragonsguard Elite. diff --git a/forge-gui/res/cardsfolder/d/dranas_silencer.txt b/forge-gui/res/cardsfolder/d/dranas_silencer.txt index fe9bdc1119f..03facd696cd 100644 --- a/forge-gui/res/cardsfolder/d/dranas_silencer.txt +++ b/forge-gui/res/cardsfolder/d/dranas_silencer.txt @@ -5,7 +5,7 @@ PT:3/2 T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigPump | TriggerDescription$ When CARDNAME enters, target creature an opponent controls gets -X/-X until end of turn, where X is the number of creatures in your party. (Your party consists of up to one each of Cleric, Rogue, Warrior, and Wizard.) SVar:TrigPump:DB$ Pump | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Select target creature an opponent controls | IsCurse$ True | NumAtt$ -X | NumDef$ -X SVar:X:Count$Party +SVar:PlayMain1:TRUE DeckHas:Ability$Party DeckHints:Type$Cleric|Warrior|Wizard -SVar:PlayMain1:TRUE Oracle:When Drana's Silencer enters, target creature an opponent controls gets -X/-X until end of turn, where X is the number of creatures in your party. (Your party consists of up to one each of Cleric, Rogue, Warrior, and Wizard.) diff --git a/forge-gui/res/cardsfolder/d/draugr_necromancer.txt b/forge-gui/res/cardsfolder/d/draugr_necromancer.txt index db3994be061..4c2d5483269 100644 --- a/forge-gui/res/cardsfolder/d/draugr_necromancer.txt +++ b/forge-gui/res/cardsfolder/d/draugr_necromancer.txt @@ -5,6 +5,6 @@ PT:4/4 R:Event$ Moved | ActiveZones$ Battlefield | Origin$ Battlefield | Destination$ Graveyard | ValidLKI$ Creature.nonToken+OppCtrl | ReplaceWith$ Exile | Description$ If a nontoken creature an opponent controls would die, exile that card with an ice counter on it instead. SVar:Exile:DB$ ChangeZone | Origin$ Battlefield | Destination$ Exile | Defined$ ReplacedCard | WithCountersType$ ICE S:Mode$ Continuous | Affected$ Card.OppOwn+counters_GE1_ICE+nonLand | AffectedZone$ Exile | MayPlay$ True | MayPlaySnowIgnoreColor$ True | Description$ You may cast spells from among cards in exile your opponents own with ice counters on them, and you may spend mana from snow sources as though it were mana of any color to cast those spells. -DeckNeeds:Type$Snow DeckHas:Ability$Counters +DeckNeeds:Type$Snow Oracle:If a nontoken creature an opponent controls would die, exile that card with an ice counter on it instead.\nYou may cast spells from among cards in exile your opponents own with ice counters on them, and you may spend mana from snow sources as though it were mana of any color to cast those spells. diff --git a/forge-gui/res/cardsfolder/d/dreadmalkin.txt b/forge-gui/res/cardsfolder/d/dreadmalkin.txt index c5955eae7db..04dd2c1288e 100644 --- a/forge-gui/res/cardsfolder/d/dreadmalkin.txt +++ b/forge-gui/res/cardsfolder/d/dreadmalkin.txt @@ -4,6 +4,6 @@ Types:Creature Zombie Cat PT:1/1 K:Menace A:AB$ PutCounter | Cost$ 2 B Sac<1/Creature.Other;Planeswalker.Other/another creature or planeswalker> | CounterType$ P1P1 | CounterNum$ 2 | AILogic$ AristocratCounters | SpellDescription$ Put two +1/+1 counters on CARDNAME. -DeckHas:Ability$Counters SVar:AIPreference:SacCost$Creature.Other +DeckHas:Ability$Counters Oracle:Menace (This creature can't be blocked except by two or more creatures.)\n{2}{B}, Sacrifice another creature or planeswalker: Put two +1/+1 counters on Dreadmalkin. diff --git a/forge-gui/res/cardsfolder/d/dream_spoilers.txt b/forge-gui/res/cardsfolder/d/dream_spoilers.txt index 3721db9037d..9655df5adf1 100644 --- a/forge-gui/res/cardsfolder/d/dream_spoilers.txt +++ b/forge-gui/res/cardsfolder/d/dream_spoilers.txt @@ -5,6 +5,6 @@ PT:2/2 K:Flying T:Mode$ SpellCast | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | OpponentTurn$ True | Execute$ TrigPump | TriggerDescription$ Whenever you cast a spell during an opponent's turn, up to one target creature an opponent controls gets -1/-1 until end of turn. SVar:TrigPump:DB$ Pump | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Select up to one target creature an opponent controls | NumAtt$ -1 | NumDef$ -1 | IsCurse$ True | TargetMin$ 0 | TargetMax$ 1 -DeckHints:Type$Instant SVar:BuffedBy:Creature.withFlash +DeckHints:Type$Instant Oracle:Flying\nWhenever you cast a spell during an opponent's turn, up to one target creature an opponent controls gets -1/-1 until end of turn. diff --git a/forge-gui/res/cardsfolder/d/drey_keeper.txt b/forge-gui/res/cardsfolder/d/drey_keeper.txt index 8d761806691..7c6e9c9f2ba 100644 --- a/forge-gui/res/cardsfolder/d/drey_keeper.txt +++ b/forge-gui/res/cardsfolder/d/drey_keeper.txt @@ -6,6 +6,6 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigToken:DB$ Token | TokenAmount$ 2 | TokenScript$ g_1_1_squirrel | TokenOwner$ You A:AB$ PumpAll | Cost$ 3 B | ValidCards$ Squirrel.YouCtrl | NumAtt$ +1 | KW$ Menace | SpellDescription$ Squirrels you control get +1/+0 and gain menace until end of turn. SVar:PlayMain1:TRUE -DeckNeeds:Type$Squirrel DeckHas:Ability$Token +DeckNeeds:Type$Squirrel Oracle:When Drey Keeper enters, create two 1/1 green Squirrel creature tokens.\n{3}{B}: Squirrels you control get +1/+0 and gain menace until end of turn. diff --git a/forge-gui/res/cardsfolder/d/dross_skullbomb.txt b/forge-gui/res/cardsfolder/d/dross_skullbomb.txt index bb40d5def42..dbed94807bb 100644 --- a/forge-gui/res/cardsfolder/d/dross_skullbomb.txt +++ b/forge-gui/res/cardsfolder/d/dross_skullbomb.txt @@ -4,6 +4,6 @@ Types:Artifact A:AB$ Draw | Cost$ 1 Sac<1/CARDNAME> | SpellDescription$ Draw a card. A:AB$ ChangeZone | Cost$ 2 B Sac<1/CARDNAME> | Origin$ Graveyard | Destination$ Hand | TgtPrompt$ Select target creature card in your graveyard | ValidTgts$ Creature.YouCtrl | SorcerySpeed$ True | SubAbility$ DBDraw | SpellDescription$ Return target creature card from your graveyard to your hand. Draw a card. Activate only as a sorcery. SVar:DBDraw:DB$ Draw -DeckNeeds:Color$Black DeckHas:Ability$Sacrifice|Graveyard +DeckNeeds:Color$Black Oracle:{1}, Sacrifice Dross Skullbomb: Draw a card.\n{2}{B}, Sacrifice Dross Skullbomb: Return target creature card from your graveyard to your hand. Draw a card. Activate only as a sorcery. diff --git a/forge-gui/res/cardsfolder/d/drover_of_the_mighty.txt b/forge-gui/res/cardsfolder/d/drover_of_the_mighty.txt index 3c97b02020d..72cefe71fc1 100644 --- a/forge-gui/res/cardsfolder/d/drover_of_the_mighty.txt +++ b/forge-gui/res/cardsfolder/d/drover_of_the_mighty.txt @@ -4,6 +4,6 @@ Types:Creature Human Druid PT:1/1 S:Mode$ Continuous | Affected$ Card.Self | AddPower$ 2 | AddToughness$ 2 | IsPresent$ Dinosaur.YouCtrl | Description$ CARDNAME gets +2/+2 as long as you control a Dinosaur. A:AB$ Mana | Cost$ T | Produced$ Any | SpellDescription$ Add one mana of any color. -DeckHints:Type$Dinosaur SVar:BuffedBy:Dinosaur +DeckHints:Type$Dinosaur Oracle:Drover of the Mighty gets +2/+2 as long as you control a Dinosaur.\n{T}: Add one mana of any color. diff --git a/forge-gui/res/cardsfolder/d/duggan_private_detective.txt b/forge-gui/res/cardsfolder/d/duggan_private_detective.txt index d67ff2733b2..808839dae19 100644 --- a/forge-gui/res/cardsfolder/d/duggan_private_detective.txt +++ b/forge-gui/res/cardsfolder/d/duggan_private_detective.txt @@ -9,6 +9,6 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigInvestigate | Secondary$ T SVar:TrigInvestigate:DB$ Investigate A:AB$ DealDamage | Cost$ 1 G T | ValidTgts$ Creature.Other | PrecostDesc$ The Most Important Punch in History — | TgtPrompt$ Select another target creature | GameActivationLimit$ 1 | NumDmg$ Y | SpellDescription$ NICKNAME deals damage equal to twice its power to another target creature. Activate only once. SVar:Y:Count$CardPower/Twice -DeckHas:Ability$Token & Type$Clue|Artifact SVar:HasAttackEffect:TRUE +DeckHas:Ability$Token & Type$Clue|Artifact Oracle:Duggan's power and toughness are each equal to the number of cards in your hand.\nWhenever Duggan enters or attacks, investigate.\nThe Most Important Punch in History — {1}{G}, {T}: Duggan deals damage equal to twice its power to another target creature. Activate only once. diff --git a/forge-gui/res/cardsfolder/d/dusk_mangler.txt b/forge-gui/res/cardsfolder/d/dusk_mangler.txt index 4514075f1d8..6516d1ff8b9 100644 --- a/forge-gui/res/cardsfolder/d/dusk_mangler.txt +++ b/forge-gui/res/cardsfolder/d/dusk_mangler.txt @@ -7,6 +7,6 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigSac:DB$ Sacrifice | Defined$ Opponent | SacValid$ Creature | SubAbility$ DBDiscard SVar:DBDiscard:DB$ Discard | Mode$ TgtChoose | Defined$ Opponent | SubAbility$ DBLoseLife SVar:DBLoseLife:DB$ LoseLife | Defined$ Opponent | LifeAmount$ 4 -DeckHas:Ability$Sacrifice|Discard SVar:AIPreference:SacCost$Creature.token,Creature.cmcLE3 +DeckHas:Ability$Sacrifice|Discard Oracle:As an additional cost to cast this spell, sacrifice a creature, discard a card, or pay 4 life.\nWhen Dusk Mangler enters, each opponent sacrifices a creature, discards a card, and loses 4 life. diff --git a/forge-gui/res/cardsfolder/d/dwynen_gilt_leaf_daen.txt b/forge-gui/res/cardsfolder/d/dwynen_gilt_leaf_daen.txt index 95d7ad8f3f2..2caeda26f03 100644 --- a/forge-gui/res/cardsfolder/d/dwynen_gilt_leaf_daen.txt +++ b/forge-gui/res/cardsfolder/d/dwynen_gilt_leaf_daen.txt @@ -8,6 +8,6 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigGainLife | TriggerDescript SVar:TrigGainLife:DB$ GainLife | Defined$ You | LifeAmount$ X SVar:X:Count$Valid Creature.YouCtrl+Elf+attacking SVar:HasAttackEffect:TRUE -DeckHints:Type$Elf SVar:PlayMain1:TRUE +DeckHints:Type$Elf Oracle:Reach\nOther Elf creatures you control get +1/+1.\nWhenever Dwynen, Gilt-Leaf Daen attacks, you gain 1 life for each attacking Elf you control. From ae28cd17c0dc1182c5c6516f0197acea7ba5793f Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 12:07:28 +0100 Subject: [PATCH 22/91] Edit pile cleanup: Line reordering, second pass: part 3, folders 'e' to 'g' --- forge-gui/res/cardsfolder/e/eagles_of_the_north.txt | 2 +- forge-gui/res/cardsfolder/e/earthquake_dragon.txt | 2 +- forge-gui/res/cardsfolder/e/eastfarthing_farmer.txt | 4 ++-- forge-gui/res/cardsfolder/e/ecstatic_electromancer.txt | 2 +- forge-gui/res/cardsfolder/e/elder_spawn.txt | 2 +- forge-gui/res/cardsfolder/e/elderfang_ritualist.txt | 2 +- forge-gui/res/cardsfolder/e/electrostatic_infantry.txt | 2 +- forge-gui/res/cardsfolder/e/elenda_and_azor.txt | 2 +- forge-gui/res/cardsfolder/e/ellivere_of_the_wild_court.txt | 2 +- forge-gui/res/cardsfolder/e/elvish_archdruid.txt | 2 +- forge-gui/res/cardsfolder/e/emeria_captain.txt | 2 +- forge-gui/res/cardsfolder/e/emissary_green.txt | 2 +- forge-gui/res/cardsfolder/e/emrakuls_evangel.txt | 4 ++-- forge-gui/res/cardsfolder/e/emry_lurker_of_the_loch.txt | 4 ++-- forge-gui/res/cardsfolder/e/energy_chamber.txt | 2 +- forge-gui/res/cardsfolder/e/energy_flux.txt | 4 ++-- forge-gui/res/cardsfolder/e/eomer_king_of_rohan.txt | 2 +- forge-gui/res/cardsfolder/e/eomer_of_the_riddermark.txt | 2 +- forge-gui/res/cardsfolder/e/eowyn_shieldmaiden.txt | 2 +- forge-gui/res/cardsfolder/e/eriette_of_the_charmed_apple.txt | 2 +- forge-gui/res/cardsfolder/e/erinis_gloom_stalker.txt | 2 +- forge-gui/res/cardsfolder/e/etched_oracle.txt | 2 +- forge-gui/res/cardsfolder/e/etherium_spinner.txt | 2 +- forge-gui/res/cardsfolder/e/everflowing_chalice.txt | 2 +- forge-gui/res/cardsfolder/e/everglove_courier.txt | 2 +- forge-gui/res/cardsfolder/e/exalted_flamer_of_tzeentch.txt | 2 +- forge-gui/res/cardsfolder/e/experimental_synthesizer.txt | 2 +- .../e/extus_oriq_overlord_awaken_the_blood_avatar.txt | 2 +- forge-gui/res/cardsfolder/e/exuberant_fuseling.txt | 2 +- forge-gui/res/cardsfolder/f/fairgrounds_trumpeter.txt | 4 ++-- forge-gui/res/cardsfolder/f/fathom_fleet_swordjack.txt | 2 +- forge-gui/res/cardsfolder/f/felidar_retreat.txt | 2 +- forge-gui/res/cardsfolder/f/fell_beast_of_mordor.txt | 2 +- forge-gui/res/cardsfolder/f/fiend_of_the_shadows.txt | 2 +- forge-gui/res/cardsfolder/f/filigree_crawler.txt | 2 +- forge-gui/res/cardsfolder/f/flamestick_courier.txt | 2 +- forge-gui/res/cardsfolder/f/fleshgrafter.txt | 4 ++-- forge-gui/res/cardsfolder/f/food_fight.txt | 4 ++-- forge-gui/res/cardsfolder/f/foreboding_steamboat.txt | 2 +- forge-gui/res/cardsfolder/f/forerunner_of_the_legion.txt | 2 +- forge-gui/res/cardsfolder/f/forsaken_miner.txt | 2 +- forge-gui/res/cardsfolder/f/frankensteins_monster.txt | 2 +- forge-gui/res/cardsfolder/f/frantic_search.txt | 2 +- forge-gui/res/cardsfolder/f/frenzied_geistblaster.txt | 2 +- forge-gui/res/cardsfolder/f/frightshroud_courier.txt | 2 +- forge-gui/res/cardsfolder/f/frodo_determined_hero.txt | 2 +- forge-gui/res/cardsfolder/f/furtive_courier.txt | 2 +- forge-gui/res/cardsfolder/g/gadrak_the_crown_scourge.txt | 2 +- forge-gui/res/cardsfolder/g/galadriel_elven_queen.txt | 2 +- forge-gui/res/cardsfolder/g/gallifrey_stands.txt | 2 +- forge-gui/res/cardsfolder/g/gallows_at_willow_hill.txt | 2 +- forge-gui/res/cardsfolder/g/garrison_sergeant.txt | 2 +- forge-gui/res/cardsfolder/g/gate_to_phyrexia.txt | 2 +- forge-gui/res/cardsfolder/g/gatekeeper_gargoyle.txt | 2 +- forge-gui/res/cardsfolder/g/gavi_nest_warden.txt | 2 +- forge-gui/res/cardsfolder/g/geistchanneler.txt | 2 +- forge-gui/res/cardsfolder/g/general_ferrous_rokiric.txt | 2 +- forge-gui/res/cardsfolder/g/generous_visitor.txt | 2 +- forge-gui/res/cardsfolder/g/genestealer_patriarch.txt | 2 +- forge-gui/res/cardsfolder/g/ghalma_the_shaper.txt | 2 +- forge-gui/res/cardsfolder/g/ghen_arcanum_weaver.txt | 2 +- forge-gui/res/cardsfolder/g/ghosthelm_courier.txt | 2 +- forge-gui/res/cardsfolder/g/gixian_infiltrator.txt | 2 +- forge-gui/res/cardsfolder/g/glacial_crasher.txt | 2 +- forge-gui/res/cardsfolder/g/glacian_powerstone_engineer.txt | 2 +- forge-gui/res/cardsfolder/g/glimpse_the_impossible.txt | 2 +- forge-gui/res/cardsfolder/g/glissas_retriever.txt | 2 +- forge-gui/res/cardsfolder/g/goddric_cloaked_reveler.txt | 2 +- forge-gui/res/cardsfolder/g/golgothian_sylex.txt | 2 +- forge-gui/res/cardsfolder/g/grim_reapers_sprint.txt | 2 +- forge-gui/res/cardsfolder/g/grindclock.txt | 2 +- forge-gui/res/cardsfolder/g/grisly_sigil.txt | 2 +- forge-gui/res/cardsfolder/g/gruul_scrapper.txt | 2 +- forge-gui/res/cardsfolder/g/gunner_conscript.txt | 2 +- forge-gui/res/cardsfolder/g/gutwrencher_oni.txt | 2 +- 75 files changed, 82 insertions(+), 82 deletions(-) diff --git a/forge-gui/res/cardsfolder/e/eagles_of_the_north.txt b/forge-gui/res/cardsfolder/e/eagles_of_the_north.txt index aa384176dcb..6ff972edb1c 100644 --- a/forge-gui/res/cardsfolder/e/eagles_of_the_north.txt +++ b/forge-gui/res/cardsfolder/e/eagles_of_the_north.txt @@ -6,6 +6,6 @@ K:Flying T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigPumpAll | TriggerDescription$ When CARDNAME enters, creatures you control get +1/+0 and gain first strike until end of turn. SVar:TrigPumpAll:DB$ PumpAll | NumAtt$ +1 | ValidCards$ Creature.YouCtrl | KW$ First Strike K:TypeCycling:Plains:1 -DeckHas:Ability$Discard SVar:PlayMain1:TRUE +DeckHas:Ability$Discard Oracle:Flying\nWhen Eagles of the North enters, creatures you control get +1/+0 and gain first strike until end of turn.\nPlainscycling {1} ({1}, Discard this card: Search your library for a Plains card, reveal it, put it into your hand, then shuffle.) diff --git a/forge-gui/res/cardsfolder/e/earthquake_dragon.txt b/forge-gui/res/cardsfolder/e/earthquake_dragon.txt index 21e5f9d1014..5c2f657fd81 100644 --- a/forge-gui/res/cardsfolder/e/earthquake_dragon.txt +++ b/forge-gui/res/cardsfolder/e/earthquake_dragon.txt @@ -8,6 +8,6 @@ S:Mode$ ReduceCost | ValidCard$ Card.Self | Type$ Spell | Amount$ X | EffectZone A:AB$ ChangeZone | Cost$ 2 G Sac<1/Land> | Origin$ Graveyard | Destination$ Hand | ActivationZone$ Graveyard | SpellDescription$ Return CARDNAME from your graveyard to your hand. SVar:DiscardMe:1 SVar:PlayMain1:TRUE -DeckHints:Type$Dragon SVar:X:Count$Valid Creature.Dragon+YouCtrl$SumCMC +DeckHints:Type$Dragon Oracle:This spell costs {X} less to cast, where X is the total mana value of Dragons you control.\nFlying, trample\n{2}{G}, Sacrifice a land: Return Earthquake Dragon from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/e/eastfarthing_farmer.txt b/forge-gui/res/cardsfolder/e/eastfarthing_farmer.txt index 1be632ff655..12c7cc67605 100644 --- a/forge-gui/res/cardsfolder/e/eastfarthing_farmer.txt +++ b/forge-gui/res/cardsfolder/e/eastfarthing_farmer.txt @@ -8,8 +8,8 @@ SVar:DBImmediateTrig:DB$ ImmediateTrigger | TriggerAmount$ Remembered$Amount | E SVar:TrigPump:DB$ Pump | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | NumAtt$ +X | NumDef$ +X SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Count$Valid Food.YouCtrl -DeckHas:Ability$Token|LifeGain|Sacrifice & Type$Food -DeckHints:Type$Food SVar:PlayMain1:TRUE SVar:BuffedBy:Food +DeckHas:Ability$Token|LifeGain|Sacrifice & Type$Food +DeckHints:Type$Food Oracle:When Eastfarthing Farmer enters, create a Food token. When you do, target creature you control gets +1/+1 until end of turn for each Food you control. (A Food token is an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.") diff --git a/forge-gui/res/cardsfolder/e/ecstatic_electromancer.txt b/forge-gui/res/cardsfolder/e/ecstatic_electromancer.txt index 3f7c3549eae..9f51e83d809 100644 --- a/forge-gui/res/cardsfolder/e/ecstatic_electromancer.txt +++ b/forge-gui/res/cardsfolder/e/ecstatic_electromancer.txt @@ -6,6 +6,6 @@ K:Prowess T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDraw | TriggerDescription$ Whenever CARDNAME enters or attacks, you may discard a card. If you do, draw a card. T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigDraw | Secondary$ True | TriggerDescription$ Whenever CARDNAME enters or attacks, you may discard a card. If you do, draw a card. SVar:TrigDraw:AB$ Draw | Cost$ Discard<1/Card> | NumCards$ 1 -DeckHas:Ability$Discard SVar:HasAttackEffect:TRUE +DeckHas:Ability$Discard Oracle:Prowess (Whenever you cast a noncreature spell, this creature gets +1/+1 until end of turn.)\nWhenever Ecstatic Electromancer enters or attacks, you may discard a card. If you do, draw a card. diff --git a/forge-gui/res/cardsfolder/e/elder_spawn.txt b/forge-gui/res/cardsfolder/e/elder_spawn.txt index 7e07bfe7993..8aed024db1a 100644 --- a/forge-gui/res/cardsfolder/e/elder_spawn.txt +++ b/forge-gui/res/cardsfolder/e/elder_spawn.txt @@ -8,8 +8,8 @@ SVar:DBElderSpawnSacrificeMe:DB$ Sacrifice | ConditionDefined$ Remembered | Cond SVar:DBElderSpawnDamage:DB$ DealDamage | Defined$ You | NumDmg$ 6 | ConditionDefined$ Remembered | ConditionPresent$ Island | ConditionCompare$ EQ0 | SubAbility$ DBElderSpawnCleanup SVar:DBElderSpawnCleanup:DB$ Cleanup | ClearRemembered$ True S:Mode$ CantBlockBy | ValidAttacker$ Creature.Self | ValidBlocker$ Creature.Red | Description$ CARDNAME can't be blocked by red creatures. -AI:RemoveDeck:Random SVar:NeedsToPlayVar:Z GE3 SVar:Z:Count$Valid Island.YouCtrl+inZoneBattlefield +AI:RemoveDeck:Random DeckHas:Ability$Sacrifice Oracle:At the beginning of your upkeep, unless you sacrifice an Island, sacrifice Elder Spawn and it deals 6 damage to you.\nElder Spawn can't be blocked by red creatures. diff --git a/forge-gui/res/cardsfolder/e/elderfang_ritualist.txt b/forge-gui/res/cardsfolder/e/elderfang_ritualist.txt index 752f485603d..cf085ff1226 100644 --- a/forge-gui/res/cardsfolder/e/elderfang_ritualist.txt +++ b/forge-gui/res/cardsfolder/e/elderfang_ritualist.txt @@ -5,6 +5,6 @@ PT:3/1 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigChangeZone | TriggerDescription$ When CARDNAME dies, return another target Elf card from your graveyard to your hand. SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | ValidTgts$ Elf.Other+YouOwn | TgtPrompt$ Select another target Elf card from your graveyard SVar:SacMe:2 -DeckNeeds:Type$Elf DeckHas:Ability$Graveyard +DeckNeeds:Type$Elf Oracle:When Elderfang Ritualist dies, return another target Elf card from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/e/electrostatic_infantry.txt b/forge-gui/res/cardsfolder/e/electrostatic_infantry.txt index 0c0ababa505..c21aad42080 100644 --- a/forge-gui/res/cardsfolder/e/electrostatic_infantry.txt +++ b/forge-gui/res/cardsfolder/e/electrostatic_infantry.txt @@ -5,7 +5,7 @@ PT:1/2 K:Trample T:Mode$ SpellCast | TriggerZones$ Battlefield | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | Execute$ TrigPutCounter | TriggerDescription$ Whenever you cast an instant or sorcery spell, put a +1/+1 counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 +SVar:BuffedBy:Spell.Instant,Spell.Sorcery DeckHas:Ability$Counters DeckHints:Type$Instant|Sorcery -SVar:BuffedBy:Spell.Instant,Spell.Sorcery Oracle:Trample\nWhenever you cast an instant or sorcery spell, put a +1/+1 counter on Electrostatic Infantry. diff --git a/forge-gui/res/cardsfolder/e/elenda_and_azor.txt b/forge-gui/res/cardsfolder/e/elenda_and_azor.txt index 5bfc69f73a3..a96cb261f10 100644 --- a/forge-gui/res/cardsfolder/e/elenda_and_azor.txt +++ b/forge-gui/res/cardsfolder/e/elenda_and_azor.txt @@ -10,6 +10,6 @@ SVar:X:Count$xPaid T:Mode$ Phase | Phase$ End of Turn | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ At the beginning of each end step, you may pay 4 life. If you do, create a number of 1/1 black Vampire Knight creature tokens with lifelink equal to the number of cards you've drawn this turn. SVar:TrigToken:AB$ Token | Cost$ PayLife<4> | TokenAmount$ Y | TokenScript$ b_1_1_vampire_knight_lifelink | TokenOwner$ You SVar:Y:Count$YouDrewThisTurn -DeckHas:Ability$Token|LifeGain SVar:HasAttackEffect:TRUE +DeckHas:Ability$Token|LifeGain Oracle:Flying, ward {2}\nWhenever Elenda and Azor attacks, you may pay {X}{W}{U}{B}. If you do, draw X cards.\nAt the beginning of each end step, you may pay 4 life. If you do, create a number of 1/1 black Vampire Knight creature tokens with lifelink equal to the number of cards you've drawn this turn. diff --git a/forge-gui/res/cardsfolder/e/ellivere_of_the_wild_court.txt b/forge-gui/res/cardsfolder/e/ellivere_of_the_wild_court.txt index 044a14812d1..999a55d9b92 100644 --- a/forge-gui/res/cardsfolder/e/ellivere_of_the_wild_court.txt +++ b/forge-gui/res/cardsfolder/e/ellivere_of_the_wild_court.txt @@ -7,7 +7,7 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigToken | Secondary$ True | SVar:TrigToken:DB$ Token | TokenScript$ role_virtuous | AttachedTo$ Targeted | ValidTgts$ Creature.YouCtrl+Other T:Mode$ DamageDone | ValidSource$ Creature.YouCtrl+enchanted | ValidTarget$ Player | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ TrigDraw | TriggerDescription$ Whenever an enchanted creature you control deals combat damage to a player, draw a card. SVar:TrigDraw:DB$ Draw +SVar:HasAttackEffect:TRUE DeckHas:Type$Aura|Role & Ability$Token DeckHints:Type$Aura -SVar:HasAttackEffect:TRUE Oracle:Whenever Ellivere of the Wild Court enters or attacks, create a Virtuous Role token attached to another target creature you control. (If you control another Role on it, put that one into the graveyard. Enchanted creature gets +1/+1 for each enchantment you control.)\nWhenever an enchanted creature you control deals combat damage to a player, draw a card. diff --git a/forge-gui/res/cardsfolder/e/elvish_archdruid.txt b/forge-gui/res/cardsfolder/e/elvish_archdruid.txt index f414ce9a829..bcba7fb3d50 100644 --- a/forge-gui/res/cardsfolder/e/elvish_archdruid.txt +++ b/forge-gui/res/cardsfolder/e/elvish_archdruid.txt @@ -5,6 +5,6 @@ PT:2/2 S:Mode$ Continuous | Affected$ Creature.Elf+Other+YouCtrl | AddPower$ 1 | AddToughness$ 1 | Description$ Other Elf creatures you control get +1/+1. A:AB$ Mana | Cost$ T | Produced$ G | Amount$ X | SpellDescription$ Add {G} for each Elf you control. SVar:X:Count$Valid Elf.YouCtrl -DeckHints:Type$Elf SVar:PlayMain1:TRUE +DeckHints:Type$Elf Oracle:Other Elf creatures you control get +1/+1.\n{T}: Add {G} for each Elf you control. diff --git a/forge-gui/res/cardsfolder/e/emeria_captain.txt b/forge-gui/res/cardsfolder/e/emeria_captain.txt index caf7ebc28fb..6435d4c54bd 100644 --- a/forge-gui/res/cardsfolder/e/emeria_captain.txt +++ b/forge-gui/res/cardsfolder/e/emeria_captain.txt @@ -7,7 +7,7 @@ K:Vigilance T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigPutCounter | TriggerDescription$ When CARDNAME enters, put a +1/+1 counter on it for each creature in your party. SVar:TrigPutCounter:DB$ PutCounter | Defined$ TriggeredCardLKICopy | CounterNum$ X | CounterType$ P1P1 SVar:X:Count$Party -DeckHas:Ability$Party|Counters SVar:BuffedBy:Cleric,Rogue,Wizard +DeckHas:Ability$Party|Counters DeckHints:Type$Cleric|Rogue|Wizard Oracle:Flying, vigilance\nWhen Emeria Captain enters, put a +1/+1 counter on it for each creature in your party. (Your party consists of up to one each of Cleric, Rogue, Warrior, and Wizard.) diff --git a/forge-gui/res/cardsfolder/e/emissary_green.txt b/forge-gui/res/cardsfolder/e/emissary_green.txt index ff997488ef8..1b32027f1fe 100644 --- a/forge-gui/res/cardsfolder/e/emissary_green.txt +++ b/forge-gui/res/cardsfolder/e/emissary_green.txt @@ -7,6 +7,6 @@ SVar:TrigVote:DB$ Vote | Defined$ Player | StoreVoteNum$ True | VoteType$ Profit SVar:DBVoteProfit:DB$ Token | TokenAmount$ X | TokenScript$ c_a_treasure_sac | TokenOwner$ You | SubAbility$ DBVoteSecurity SVar:DBVoteSecurity:DB$ PutCounterAll | ValidCards$ Creature.YouCtrl | CounterType$ P1P1 | CounterNum$ VoteNumSecurity SVar:X:SVar$VoteNumProfit/Times.2 -DeckHas:Ability$Counters|Token & Type$Treasure|Artifact SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters|Token & Type$Treasure|Artifact Oracle:Whenever Emissary Green attacks, starting with you, each player votes for profit or security. You create a number of Treasure tokens equal to twice the number of profit votes. Put a number of +1/+1 counters on each creature you control equal to the number of security votes. diff --git a/forge-gui/res/cardsfolder/e/emrakuls_evangel.txt b/forge-gui/res/cardsfolder/e/emrakuls_evangel.txt index 712b1b82800..16aedb4b281 100644 --- a/forge-gui/res/cardsfolder/e/emrakuls_evangel.txt +++ b/forge-gui/res/cardsfolder/e/emrakuls_evangel.txt @@ -5,7 +5,7 @@ PT:3/2 A:AB$ Token | Cost$ T Sac Sac<1/CARDNAME> | CostDesc$ {T}, Sacrifice CARDNAME and any number of other non-Eldrazi creatures: | TokenAmount$ Y | TokenScript$ c_3_2_eldrazi_horror | TokenOwner$ You | SpellDescription$ Create a 3/2 colorless Eldrazi Horror creature token for each creature sacrificed this way. SVar:Y:Sacrificed$Valid Creature SVar:X:Count$xPaid -DeckHints:Ability$Token & Type$Eldrazi|Horror -DeckHas:Ability$Token|Sacrifice SVar:AIPreference:SacCost$Creature.token +DeckHas:Ability$Token|Sacrifice +DeckHints:Ability$Token & Type$Eldrazi|Horror Oracle:{T}, Sacrifice Emrakul's Evangel and any number of other non-Eldrazi creatures: Create a 3/2 colorless Eldrazi Horror creature token for each creature sacrificed this way. diff --git a/forge-gui/res/cardsfolder/e/emry_lurker_of_the_loch.txt b/forge-gui/res/cardsfolder/e/emry_lurker_of_the_loch.txt index e160d8eb673..1a3cd3d618d 100644 --- a/forge-gui/res/cardsfolder/e/emry_lurker_of_the_loch.txt +++ b/forge-gui/res/cardsfolder/e/emry_lurker_of_the_loch.txt @@ -4,10 +4,10 @@ Types:Legendary Creature Merfolk Wizard PT:1/2 S:Mode$ ReduceCost | ValidCard$ Card.Self | Type$ Spell | Amount$ X | EffectZone$ All | Description$ This spell costs {1} less to cast for each artifact you control. SVar:X:Count$Valid Artifact.YouCtrl -DeckNeeds:Type$Artifact -DeckHas:Ability$Graveyard T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigMill | TriggerDescription$ When CARDNAME enters, mill four cards. SVar:TrigMill:DB$ Mill | NumCards$ 4 | Defined$ You A:AB$ Effect | Cost$ T | TgtZone$ Graveyard | ValidTgts$ Artifact.YouOwn | TgtPrompt$ Select target artifact card in your graveyard | SpellDescription$ Choose target artifact card in your graveyard. You may cast that card this turn. | RememberObjects$ Targeted | StaticAbilities$ STPlay | ExileOnMoved$ Graveyard SVar:STPlay:Mode$ Continuous | MayPlay$ True | EffectZone$ Command | Affected$ Card.IsRemembered+nonLand | AffectedZone$ Graveyard | Description$ You may cast that card this turn. +DeckHas:Ability$Graveyard +DeckNeeds:Type$Artifact Oracle:This spell costs {1} less to cast for each artifact you control.\nWhen Emry, Lurker of the Loch enters, mill four cards.\n{T}: Choose target artifact card in your graveyard. You may cast that card this turn. (You still pay its costs. Timing rules still apply.) diff --git a/forge-gui/res/cardsfolder/e/energy_chamber.txt b/forge-gui/res/cardsfolder/e/energy_chamber.txt index 20e653e12a1..7d168a0276f 100644 --- a/forge-gui/res/cardsfolder/e/energy_chamber.txt +++ b/forge-gui/res/cardsfolder/e/energy_chamber.txt @@ -6,6 +6,6 @@ SVar:TrigCharm:DB$ Charm | Choices$ CounterP1P1,CounterCharge | CharmNum$ 1 SVar:CounterP1P1:DB$ PutCounter | ValidTgts$ Creature.Artifact | TgtPrompt$ Select target artifact creature | CounterType$ P1P1 | CounterNum$ 1 | SpellDescription$ Put a +1/+1 counter on target artifact creature. SVar:CounterCharge:DB$ PutCounter | ValidTgts$ Artifact.nonCreature | TgtPrompt$ Select target noncreature artifact | CounterType$ CHARGE | CounterNum$ 1 | SpellDescription$ Put a charge counter on target noncreature artifact. AI:RemoveDeck:All -DeckNeeds:Type$Artifact DeckHas:Ability$Counters +DeckNeeds:Type$Artifact Oracle:At the beginning of your upkeep, choose one —\n• Put a +1/+1 counter on target artifact creature.\n• Put a charge counter on target noncreature artifact. diff --git a/forge-gui/res/cardsfolder/e/energy_flux.txt b/forge-gui/res/cardsfolder/e/energy_flux.txt index b19cd674a2f..70ed272859b 100644 --- a/forge-gui/res/cardsfolder/e/energy_flux.txt +++ b/forge-gui/res/cardsfolder/e/energy_flux.txt @@ -2,9 +2,9 @@ Name:Energy Flux ManaCost:2 U Types:Enchantment S:Mode$ Continuous | Affected$ Artifact | AddKeyword$ UpkeepCost:2 | Description$ All artifacts have "At the beginning of your upkeep, sacrifice this artifact unless you pay {2}." -AI:RemoveDeck:Random -DeckHas:Ability$Sacrifice SVar:NeedsToPlayVar:CountOpps GTCountMe SVar:CountOpps:Count$Valid Artifact.OppCtrl/LimitMax.5 SVar:CountMe:Count$Valid Artifact.YouCtrl +AI:RemoveDeck:Random +DeckHas:Ability$Sacrifice Oracle:All artifacts have "At the beginning of your upkeep, sacrifice this artifact unless you pay {2}." diff --git a/forge-gui/res/cardsfolder/e/eomer_king_of_rohan.txt b/forge-gui/res/cardsfolder/e/eomer_king_of_rohan.txt index 7804b1a8816..d04629cf4fe 100644 --- a/forge-gui/res/cardsfolder/e/eomer_king_of_rohan.txt +++ b/forge-gui/res/cardsfolder/e/eomer_king_of_rohan.txt @@ -9,6 +9,6 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigMonarch:DB$ BecomeMonarch | ValidTgts$ Player | SubAbility$ DBPower SVar:DBPower:DB$ DealDamage | ValidTgts$ Any | NumDmg$ Y SVar:Y:Count$CardPower -DeckNeeds:Type$Human DeckHas:Ability$Counters +DeckNeeds:Type$Human Oracle:Double strike\nÉomer, King of Rohan enters with a +1/+1 counter on it for each other Human you control.\nWhen Éomer enters, target player becomes the monarch. Éomer deals damage equal to its power to any target. diff --git a/forge-gui/res/cardsfolder/e/eomer_of_the_riddermark.txt b/forge-gui/res/cardsfolder/e/eomer_of_the_riddermark.txt index 869e22d5d48..3515256dd17 100644 --- a/forge-gui/res/cardsfolder/e/eomer_of_the_riddermark.txt +++ b/forge-gui/res/cardsfolder/e/eomer_of_the_riddermark.txt @@ -5,6 +5,6 @@ PT:5/4 K:Haste T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigToken | IsPresent$ Creature.greatestPower+YouCtrl | TriggerZones$ Battlefield | TriggerDescription$ Whenever CARDNAME attacks, if you control a creature with the greatest power among creatures on the battlefield, create a 1/1 white Human Soldier creature token. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ w_1_1_human_soldier | TokenOwner$ You -DeckHas:Ability$Token & Type$Soldier SVar:HasAttackEffect:TRUE +DeckHas:Ability$Token & Type$Soldier Oracle:Haste\nWhenever Éomer of the Riddermark attacks, if you control a creature with the greatest power among creatures on the battlefield, create a 1/1 white Human Soldier creature token. diff --git a/forge-gui/res/cardsfolder/e/eowyn_shieldmaiden.txt b/forge-gui/res/cardsfolder/e/eowyn_shieldmaiden.txt index f3718dfd3e8..ce06c3c4ca1 100644 --- a/forge-gui/res/cardsfolder/e/eowyn_shieldmaiden.txt +++ b/forge-gui/res/cardsfolder/e/eowyn_shieldmaiden.txt @@ -8,6 +8,6 @@ SVar:TrigToken:DB$ Token | TokenAmount$ 2 | TokenScript$ r_2_2_human_knight_tram SVar:DBDraw:DB$ Draw | ConditionCheckSVar$ X | ConditionSVarCompare$ GE6 SVar:X:Count$Valid Human.YouCtrl SVar:HumanEntered:Count$ThisTurnEntered_Battlefield_Creature.Human+StrictlyOther+YouCtrl -DeckNeeds:Type$Human DeckHas:Ability$Token +DeckNeeds:Type$Human Oracle:First strike\nAt the beginning of combat on your turn, if another Human entered the battlefield under your control this turn, create two 2/2 red Human Knight creature tokens with trample and haste. Then if you control six or more Humans, draw a card. diff --git a/forge-gui/res/cardsfolder/e/eriette_of_the_charmed_apple.txt b/forge-gui/res/cardsfolder/e/eriette_of_the_charmed_apple.txt index 359e17b2ac7..6dbede0fa70 100644 --- a/forge-gui/res/cardsfolder/e/eriette_of_the_charmed_apple.txt +++ b/forge-gui/res/cardsfolder/e/eriette_of_the_charmed_apple.txt @@ -7,6 +7,6 @@ T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefiel SVar:TrigDrain:DB$ LoseLife | Defined$ Player.Opponent | LifeAmount$ X | SubAbility$ DBGainLife SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ X SVar:X:Count$TypeYouCtrl.Aura -DeckNeeds:Type$Aura DeckHas:Ability$LifeGain +DeckNeeds:Type$Aura Oracle:Each creature that's enchanted by an Aura you control can't attack you or planeswalkers you control.\nAt the beginning of your end step, each opponent loses X life and you gain X life, where X is the number of Auras you control. diff --git a/forge-gui/res/cardsfolder/e/erinis_gloom_stalker.txt b/forge-gui/res/cardsfolder/e/erinis_gloom_stalker.txt index 317a913488d..627b43dc4f5 100644 --- a/forge-gui/res/cardsfolder/e/erinis_gloom_stalker.txt +++ b/forge-gui/res/cardsfolder/e/erinis_gloom_stalker.txt @@ -6,6 +6,6 @@ K:Deathtouch T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigReturn | TriggerDescription$ Whenever CARDNAME attacks, return target land card from your graveyard to the battlefield. SVar:TrigReturn:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | ValidTgts$ Land.YouOwn | TgtPrompt$ Select target land card K:Choose a Background -DeckHas:Ability$Graveyard SVar:HasAttackEffect:TRUE +DeckHas:Ability$Graveyard Oracle:Deathtouch\nWhenever Erinis, Gloom Stalker attacks, return target land card from your graveyard to the battlefield.\nChoose a Background (You can have a Background as a second commander.) diff --git a/forge-gui/res/cardsfolder/e/etched_oracle.txt b/forge-gui/res/cardsfolder/e/etched_oracle.txt index 09e2e3148a4..f665dfc75b5 100644 --- a/forge-gui/res/cardsfolder/e/etched_oracle.txt +++ b/forge-gui/res/cardsfolder/e/etched_oracle.txt @@ -4,8 +4,8 @@ Types:Artifact Creature Wizard PT:0/0 K:Sunburst A:AB$ Draw | Cost$ 1 SubCounter<4/P1P1> | ValidTgts$ Player | TgtPrompt$ Select a player | NumCards$ 3 | SpellDescription$ Target player draws three cards. -AI:RemoveDeck:Random SVar:NeedsToPlayVar:Z GE4 SVar:Z:Count$UniqueManaColorsProduced.ByUntappedSources +AI:RemoveDeck:Random DeckHints:Ability$Proliferate Oracle:Sunburst (This enters with a +1/+1 counter on it for each color of mana spent to cast it.)\n{1}, Remove four +1/+1 counters from Etched Oracle: Target player draws three cards. diff --git a/forge-gui/res/cardsfolder/e/etherium_spinner.txt b/forge-gui/res/cardsfolder/e/etherium_spinner.txt index 5221fa53952..0d80c8dae9a 100644 --- a/forge-gui/res/cardsfolder/e/etherium_spinner.txt +++ b/forge-gui/res/cardsfolder/e/etherium_spinner.txt @@ -3,6 +3,6 @@ ManaCost:2 U Types:Artifact Creature Human Wizard PT:2/1 T:Mode$ SpellCast | ValidCard$ Card.cmcGE4 | ValidActivatingPlayer$ You | Execute$ TrigToken | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast a spell with mana value 4 or greater, create a 1/1 colorless Thopter artifact creature token with flying. -DeckHas:Ability$Token SVar:TrigToken:DB$ Token | TokenOwner$ You | TokenScript$ c_1_1_a_thopter_flying | TokenAmount$ 1 +DeckHas:Ability$Token Oracle:Whenever you cast a spell with mana value 4 or greater, create a 1/1 colorless Thopter artifact creature token with flying. diff --git a/forge-gui/res/cardsfolder/e/everflowing_chalice.txt b/forge-gui/res/cardsfolder/e/everflowing_chalice.txt index c09ce57fed6..8838b51c304 100644 --- a/forge-gui/res/cardsfolder/e/everflowing_chalice.txt +++ b/forge-gui/res/cardsfolder/e/everflowing_chalice.txt @@ -6,7 +6,7 @@ K:etbCounter:CHARGE:XKicked:no Condition:CARDNAME enters with a charge counter o A:AB$ Mana | Cost$ T | Produced$ C | Amount$ X | SpellDescription$ Add {C} for each charge counter on CARDNAME. SVar:X:Count$CardCounters.CHARGE SVar:XKicked:Count$TimesKicked -DeckHas:Ability$Counters SVar:NeedsToPlayKickedVar:Z GE4 SVar:Z:Count$Valid Land.YouCtrl+untapped +DeckHas:Ability$Counters Oracle:Multikicker {2}\nEverflowing Chalice enters with a charge counter on it for each time it was kicked.\n{T}: Add {C} for each charge counter on Everflowing Chalice. diff --git a/forge-gui/res/cardsfolder/e/everglove_courier.txt b/forge-gui/res/cardsfolder/e/everglove_courier.txt index 3c9024720aa..7bc0a5de8f0 100644 --- a/forge-gui/res/cardsfolder/e/everglove_courier.txt +++ b/forge-gui/res/cardsfolder/e/everglove_courier.txt @@ -4,6 +4,6 @@ Types:Creature Elf PT:2/1 K:You may choose not to untap CARDNAME during your untap step. A:AB$ Pump | Cost$ 2 G T | ValidTgts$ Creature.Elf | TgtPrompt$ Select target Elf creature | NumAtt$ 2 | NumDef$ 2 | KW$ Trample | Duration$ UntilUntaps | AILogic$ ContinuousBonus | SpellDescription$ Target Elf creature gets +2/+2 and has trample for as long as CARDNAME remains tapped. -DeckNeeds:Type$Elf SVar:AIUntapPreference:BetterTgtThanRemembered +DeckNeeds:Type$Elf Oracle:You may choose not to untap Everglove Courier during your untap step.\n{2}{G}, {T}: Target Elf creature gets +2/+2 and has trample for as long as Everglove Courier remains tapped. diff --git a/forge-gui/res/cardsfolder/e/exalted_flamer_of_tzeentch.txt b/forge-gui/res/cardsfolder/e/exalted_flamer_of_tzeentch.txt index 776d8b5699a..2c355647442 100644 --- a/forge-gui/res/cardsfolder/e/exalted_flamer_of_tzeentch.txt +++ b/forge-gui/res/cardsfolder/e/exalted_flamer_of_tzeentch.txt @@ -6,6 +6,6 @@ T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | E SVar:TrigChangeZone:DB$ ChangeZone | ChangeType$ Instant.YouOwn,Sorcery.YouOwn | ChangeNum$ 1 | Hidden$ True | Origin$ Graveyard | AtRandom$ True | Destination$ Hand T:Mode$ SpellCast | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDealDamage | TriggerDescription$ Fire of Tzeentch — Whenever you cast an instant or sorcery spell, CARDNAME deals 1 damage to each opponent. SVar:TrigDealDamage:DB$ DealDamage | Defined$ Opponent | NumDmg$ 1 -DeckNeeds:Type$Instant|Sorcery DeckHas:Ability$Graveyard +DeckNeeds:Type$Instant|Sorcery Oracle:Sorcerous Inspiration — At the beginning of your upkeep, return an instant or sorcery card at random from your graveyard to your hand.\nFire of Tzeentch — Whenever you cast an instant or sorcery spell, Exalted Flamer of Tzeentch deals 1 damage to each opponent. diff --git a/forge-gui/res/cardsfolder/e/experimental_synthesizer.txt b/forge-gui/res/cardsfolder/e/experimental_synthesizer.txt index d458b391e7a..a304fc8f9b7 100644 --- a/forge-gui/res/cardsfolder/e/experimental_synthesizer.txt +++ b/forge-gui/res/cardsfolder/e/experimental_synthesizer.txt @@ -8,6 +8,6 @@ SVar:DBEffect:DB$ Effect | RememberObjects$ RememberedCard | StaticAbilities$ Pl SVar:Play:Mode$ Continuous | MayPlay$ True | EffectZone$ Command | Affected$ Card.IsRemembered | AffectedZone$ Exile | Description$ You may play the remembered card. SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True A:AB$ Token | Cost$ 2 R Sac<1/CARDNAME> | TokenScript$ w_2_2_samurai_vigilance | SorcerySpeed$ True | SpellDescription$ Create a 2/2 white Samurai creature token with vigilance. Activate only as a sorcery. -DeckHas:Ability$Token & Type$Samurai & Keyword$Vigilance SVar:SacMe:4 +DeckHas:Ability$Token & Type$Samurai & Keyword$Vigilance Oracle:When Experimental Synthesizer enters or leaves the battlefield, exile the top card of your library. Until end of turn, you may play that card.\n{2}{R}, Sacrifice Experimental Synthesizer: Create a 2/2 white Samurai creature token with vigilance. Activate only as a sorcery. diff --git a/forge-gui/res/cardsfolder/e/extus_oriq_overlord_awaken_the_blood_avatar.txt b/forge-gui/res/cardsfolder/e/extus_oriq_overlord_awaken_the_blood_avatar.txt index dedcae4fb92..8dc7483ff79 100644 --- a/forge-gui/res/cardsfolder/e/extus_oriq_overlord_awaken_the_blood_avatar.txt +++ b/forge-gui/res/cardsfolder/e/extus_oriq_overlord_awaken_the_blood_avatar.txt @@ -5,8 +5,8 @@ PT:2/4 K:Double Strike T:Mode$ SpellCastOrCopy | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigReturn | TriggerDescription$ Magecraft — Whenever you cast or copy an instant or sorcery spell, return target nonlegendary creature card from your graveyard to your hand. SVar:TrigReturn:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | TgtPrompt$ Choose target nonlegendary creature card in your graveyard | ValidTgts$ Creature.YouOwn+nonLegendary -DeckNeeds:Type$Instant|Sorcery DeckHas:Ability$Graveyard|Sacrifice|Token +DeckNeeds:Type$Instant|Sorcery AlternateMode:Modal Oracle:Double strike\nMagecraft — Whenever you cast or copy an instant or sorcery spell, return target nonlegendary creature card from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/e/exuberant_fuseling.txt b/forge-gui/res/cardsfolder/e/exuberant_fuseling.txt index aebbc1405da..914f353ae84 100644 --- a/forge-gui/res/cardsfolder/e/exuberant_fuseling.txt +++ b/forge-gui/res/cardsfolder/e/exuberant_fuseling.txt @@ -7,6 +7,6 @@ S:Mode$ Continuous | Affected$ Card.Self | AffectedZone$ Battlefield | AddPower$ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigCounter | TriggerDescription$ When CARDNAME enters and whenever another creature or artifact you control is put into a graveyard from the battlefield, put an oil counter on CARDNAME. T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Creature.Other+YouCtrl,Artifact.Other+YouCtrl | Execute$ TrigCounter | Secondary$ True | TriggerDescription$ When CARDNAME enters and whenever another creature or artifact you control is put into a graveyard from the battlefield, put an oil counter on CARDNAME. SVar:TrigCounter:DB$ PutCounter | Defined$ Self | CounterType$ OIL | CounterNum$ 1 -DeckHas:Ability$Counters SVar:X:Count$CardCounters.OIL +DeckHas:Ability$Counters Oracle:Trample\nExuberant Fuseling gets +1/+0 for each oil counter on it.\nWhen Exuberant Fuseling enters and whenever another creature or artifact you control is put into a graveyard from the battlefield, put an oil counter on Exuberant Fuseling. diff --git a/forge-gui/res/cardsfolder/f/fairgrounds_trumpeter.txt b/forge-gui/res/cardsfolder/f/fairgrounds_trumpeter.txt index d2c27378cd3..d4cb185b722 100644 --- a/forge-gui/res/cardsfolder/f/fairgrounds_trumpeter.txt +++ b/forge-gui/res/cardsfolder/f/fairgrounds_trumpeter.txt @@ -4,7 +4,7 @@ Types:Creature Elephant PT:2/2 T:Mode$ Phase | Phase$ End of Turn | TriggerZones$ Battlefield | CheckSVar$ X | Execute$ TrigPutCounter | TriggerDescription$ At the beginning of each end step, if a +1/+1 counter was put on a permanent under your control this turn, put a +1/+1 counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 -DeckHints:Ability$Counters -DeckHas:Ability$Counters SVar:X:Count$CountersAddedThisTurn P1P1 Player Permanent.YouCtrl +DeckHas:Ability$Counters +DeckHints:Ability$Counters Oracle:At the beginning of each end step, if a +1/+1 counter was put on a permanent under your control this turn, put a +1/+1 counter on Fairgrounds Trumpeter. diff --git a/forge-gui/res/cardsfolder/f/fathom_fleet_swordjack.txt b/forge-gui/res/cardsfolder/f/fathom_fleet_swordjack.txt index cedfa1b3ff7..40321ce9a9d 100644 --- a/forge-gui/res/cardsfolder/f/fathom_fleet_swordjack.txt +++ b/forge-gui/res/cardsfolder/f/fathom_fleet_swordjack.txt @@ -7,6 +7,6 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigDamage | TriggerDescriptio SVar:TrigDamage:DB$ DealDamage | Defined$ TriggeredDefender.Player & Valid Planeswalker.TriggeredDefender | NumDmg$ X SVar:X:Count$Valid Artifact.YouCtrl SVar:HasAttackEffect:TRUE -DeckNeeds:Type$Artifact DeckHas:Ability$Token +DeckNeeds:Type$Artifact Oracle:Whenever Fathom Fleet Swordjack attacks, it deals damage to the player or planeswalker it's attacking equal to the number of artifacts you control.\nEncore {5}{R} ({5}{R}, Exile this card from your graveyard: For each opponent, create a token copy that attacks that opponent this turn if able. They gain haste. Sacrifice them at the beginning of the next end step. Activate only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/f/felidar_retreat.txt b/forge-gui/res/cardsfolder/f/felidar_retreat.txt index 859c7525d69..476cdfd8a4f 100644 --- a/forge-gui/res/cardsfolder/f/felidar_retreat.txt +++ b/forge-gui/res/cardsfolder/f/felidar_retreat.txt @@ -6,6 +6,6 @@ SVar:TrigCharm:DB$ Charm | Choices$ DBToken,DBPutCounterAll | CharmNum$ 1 SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ w_2_2_cat_beast | TokenOwner$ You | SpellDescription$ Create a 2/2 white Cat Beast creature token. SVar:DBPutCounterAll:DB$ PutCounterAll | ValidCards$ Creature.YouCtrl | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBPumpAll | SpellDescription$ Put a +1/+1 counter on each creature you control. Those creatures gain vigilance until end of turn. SVar:DBPumpAll:DB$ PumpAll | ValidCards$ Creature.YouCtrl | KW$ Vigilance -DeckHas:Ability$Token|Counters SVar:BuffedBy:Land +DeckHas:Ability$Token|Counters Oracle:Landfall — Whenever a land you control enters, choose one —\n• Create a 2/2 white Cat Beast creature token.\n• Put a +1/+1 counter on each creature you control. Those creatures gain vigilance until end of turn. diff --git a/forge-gui/res/cardsfolder/f/fell_beast_of_mordor.txt b/forge-gui/res/cardsfolder/f/fell_beast_of_mordor.txt index f1bd1d2009d..2b1f721af79 100644 --- a/forge-gui/res/cardsfolder/f/fell_beast_of_mordor.txt +++ b/forge-gui/res/cardsfolder/f/fell_beast_of_mordor.txt @@ -9,7 +9,7 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Secondary$ True | Execute$ TrigLoseLife SVar:TrigLoseLife:DB$ LoseLife | LifeAmount$ X | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | SubAbility$ DBGainLife SVar:DBGainLife:DB$ GainLife | LifeAmount$ X | Defined$ You SVar:X:Count$CardCounters.P1P1 +SVar:HasAttackEffect:TRUE DeckHas:Ability$Sacrifice|Counters|LifeGain DeckHints:Ability$Counters -SVar:HasAttackEffect:TRUE Oracle:Flying\nDevour 1 (As this enters, you may sacrifice any number of creatures. This creature enters with that many +1/+1 counters on it.)\nWhenever Fell Beast of Mordor enters or attacks, target opponent loses X life and you gain X life, where X is the number of +1/+1 counters on it. diff --git a/forge-gui/res/cardsfolder/f/fiend_of_the_shadows.txt b/forge-gui/res/cardsfolder/f/fiend_of_the_shadows.txt index b15a6d5d391..89e91a8b30e 100644 --- a/forge-gui/res/cardsfolder/f/fiend_of_the_shadows.txt +++ b/forge-gui/res/cardsfolder/f/fiend_of_the_shadows.txt @@ -11,7 +11,7 @@ SVar:DBForget:DB$ Pump | ForgetObjects$ TriggeredCard T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | Static$ True | ValidCard$ Card.Self | Execute$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True A:AB$ Regenerate | Cost$ Sac<1/Human> | SpellDescription$ Regenerate CARDNAME. -AI:RemoveDeck:Random SVar:AIPreference:SacCost$Creature.token,Creature.cmcLE1 +AI:RemoveDeck:Random DeckNeeds:Type$Human Oracle:Flying\nWhenever Fiend of the Shadows deals combat damage to a player, that player exiles a card from their hand. You may play that card for as long as it remains exiled.\nSacrifice a Human: Regenerate Fiend of the Shadows. diff --git a/forge-gui/res/cardsfolder/f/filigree_crawler.txt b/forge-gui/res/cardsfolder/f/filigree_crawler.txt index a753e3d2583..9c492b07a0e 100644 --- a/forge-gui/res/cardsfolder/f/filigree_crawler.txt +++ b/forge-gui/res/cardsfolder/f/filigree_crawler.txt @@ -4,6 +4,6 @@ Types:Artifact Creature Insect PT:2/2 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME dies, create a 1/1 colorless Thopter artifact creature token with flying. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_1_1_a_thopter_flying | TokenOwner$ You -DeckHas:Ability$Token SVar:SacMe:1 +DeckHas:Ability$Token Oracle:When Filigree Crawler dies, create a 1/1 colorless Thopter artifact creature token with flying. diff --git a/forge-gui/res/cardsfolder/f/flamestick_courier.txt b/forge-gui/res/cardsfolder/f/flamestick_courier.txt index 41258aab260..5bb72deef6c 100644 --- a/forge-gui/res/cardsfolder/f/flamestick_courier.txt +++ b/forge-gui/res/cardsfolder/f/flamestick_courier.txt @@ -4,6 +4,6 @@ Types:Creature Goblin PT:2/1 K:You may choose not to untap CARDNAME during your untap step. A:AB$ Pump | Cost$ 2 R T | ValidTgts$ Creature.Goblin | TgtPrompt$ Select target Goblin creature | NumAtt$ 2 | NumDef$ 2 | KW$ Haste | Duration$ UntilUntaps | AILogic$ ContinuousBonus | SpellDescription$ Target Goblin creature gets +2/+2 and has haste for as long as CARDNAME remains tapped. -DeckNeeds:Type$Goblin SVar:AIUntapPreference:BetterTgtThanRemembered +DeckNeeds:Type$Goblin Oracle:You may choose not to untap Flamestick Courier during your untap step.\n{2}{R}, {T}: Target Goblin creature gets +2/+2 and has haste for as long as Flamestick Courier remains tapped. diff --git a/forge-gui/res/cardsfolder/f/fleshgrafter.txt b/forge-gui/res/cardsfolder/f/fleshgrafter.txt index 09f7fcc4872..3dbede69cd3 100644 --- a/forge-gui/res/cardsfolder/f/fleshgrafter.txt +++ b/forge-gui/res/cardsfolder/f/fleshgrafter.txt @@ -3,8 +3,8 @@ ManaCost:2 B Types:Creature Human Warrior PT:2/2 A:AB$ Pump | Cost$ Discard<1/Artifact> | Defined$ Self | NumAtt$ +2 | NumDef$ +2 | SpellDescription$ CARDNAME gets +2/+2 until end of turn. -AI:RemoveDeck:Random SVar:AIPreference:DiscardCost$Artifact -DeckHints:Type$Artifact +AI:RemoveDeck:Random DeckHas:Ability$Discard +DeckHints:Type$Artifact Oracle:Discard an artifact card: Fleshgrafter gets +2/+2 until end of turn. diff --git a/forge-gui/res/cardsfolder/f/food_fight.txt b/forge-gui/res/cardsfolder/f/food_fight.txt index a4c4a79a695..5ba037fef2a 100644 --- a/forge-gui/res/cardsfolder/f/food_fight.txt +++ b/forge-gui/res/cardsfolder/f/food_fight.txt @@ -3,7 +3,7 @@ ManaCost:1 R Types:Enchantment S:Mode$ Continuous | Affected$ Artifact.YouCtrl | AddAbility$ SacSelf | Description$ Artifacts you control have "{2}, Sacrifice this artifact: It deals damage to any target equal to 1 plus the number of permanents named Food Fight you control." SVar:SacSelf:AB$ DealDamage | Cost$ 2 Sac<1/CARDNAME> | ValidTgts$ Any | NumDmg$ X | SpellDescription$ It deals damage to any target equal to 1 plus the number of permanents named Food Fight you control. -DeckNeeds:Type$Artifact & Name$Food Fight -DeckHas:Ability$Sacrifice SVar:X:Count$Valid Permanent.YouCtrl+namedFood Fight/Plus.1 +DeckHas:Ability$Sacrifice +DeckNeeds:Type$Artifact & Name$Food Fight Oracle:Artifacts you control have "{2}, Sacrifice this artifact: It deals damage to any target equal to 1 plus the number of permanents named Food Fight you control." diff --git a/forge-gui/res/cardsfolder/f/foreboding_steamboat.txt b/forge-gui/res/cardsfolder/f/foreboding_steamboat.txt index 3c915893093..3fbeb8e5d4b 100644 --- a/forge-gui/res/cardsfolder/f/foreboding_steamboat.txt +++ b/forge-gui/res/cardsfolder/f/foreboding_steamboat.txt @@ -10,6 +10,6 @@ SVar:DBCleanup:DB$ Cleanup | ClearImprinted$ True T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigInvestigate | TriggerDescription$ Whenever CARDNAME attacks, put a card exiled with it into its owner's graveyard. If you do, investigate. SVar:TrigInvestigate:AB$ Investigate | Cost$ ExiledMoveToGrave<1/Card.ExiledWithSource/card exiled with CARDNAME> K:Crew:2 -DeckHas:Ability$Investigate|Token & Type$Artifact|Clue SVar:HasAttackEffect:TRUE +DeckHas:Ability$Investigate|Token & Type$Artifact|Clue Oracle:When Foreboding Steamboat enters, each player chooses two nontoken, non-Vehicle creatures they control. Exile them until Foreboding Steamboat leaves the battlefield.\nWhenever Foreboding Steamboat attacks, put a card exiled with it into its owner's graveyard. If you do, investigate.\nCrew 2 diff --git a/forge-gui/res/cardsfolder/f/forerunner_of_the_legion.txt b/forge-gui/res/cardsfolder/f/forerunner_of_the_legion.txt index 54d4762305a..ec315dfb494 100644 --- a/forge-gui/res/cardsfolder/f/forerunner_of_the_legion.txt +++ b/forge-gui/res/cardsfolder/f/forerunner_of_the_legion.txt @@ -6,6 +6,6 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigChange:DB$ ChangeZone | Origin$ Library | Destination$ Library | LibraryPosition$ 0 | ChangeType$ Card.Vampire | ChangeNum$ 1 | ShuffleNonMandatory$ True T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Vampire.Other+YouCtrl | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ Whenever another Vampire you control enters, target creature gets +1/+1 until end of turn. SVar:TrigPump:DB$ Pump | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumAtt$ 1 | NumDef$ 1 -DeckHints:Type$Vampire SVar:BuffedBy:Vampire +DeckHints:Type$Vampire Oracle:When Forerunner of the Legion enters, you may search your library for a Vampire card, reveal it, then shuffle and put that card on top.\nWhenever another Vampire you control enters, target creature gets +1/+1 until end of turn. diff --git a/forge-gui/res/cardsfolder/f/forsaken_miner.txt b/forge-gui/res/cardsfolder/f/forsaken_miner.txt index 8b1f7387ae6..d2be2732702 100644 --- a/forge-gui/res/cardsfolder/f/forsaken_miner.txt +++ b/forge-gui/res/cardsfolder/f/forsaken_miner.txt @@ -5,7 +5,7 @@ PT:2/2 K:CARDNAME can't block. T:Mode$ CommitCrime | ValidPlayer$ You | TriggerZones$ Graveyard | Execute$ TrigChange | TriggerDescription$ Whenever you commit a crime, you may pay {B}. If you do, return CARDNAME from your graveyard to the battlefield. (Targeting opponents, anything they control, and/or cards in their graveyards is a crime.) SVar:TrigChange:AB$ ChangeZone | Cost$ B | Origin$ Graveyard | Destination$ Battlefield -DeckHas:Ability$Graveyard SVar:DiscardMe:2 SVar:SacMe:2 +DeckHas:Ability$Graveyard Oracle:Forsaken Miner can't block.\nWhenever you commit a crime, you may pay {B}. If you do, return Forsaken Miner from your graveyard to the battlefield. (Targeting opponents, anything they control, and/or cards in their graveyards is a crime.) diff --git a/forge-gui/res/cardsfolder/f/frankensteins_monster.txt b/forge-gui/res/cardsfolder/f/frankensteins_monster.txt index be5b3a6615e..dd2d294c307 100644 --- a/forge-gui/res/cardsfolder/f/frankensteins_monster.txt +++ b/forge-gui/res/cardsfolder/f/frankensteins_monster.txt @@ -14,6 +14,6 @@ SVar:CheckExiled:Count$ValidExile Card.IsRemembered SVar:CheckYard:Count$ValidGraveyard Creature.YouOwn+NotDefinedReplacedSimultaneousETB SVar:NeedsToPlayVar:CheckYard GE1 AI:RemoveDeck:Random -DeckHints:Ability$Mill|Graveyard DeckHas:Ability$Graveyard|Counters +DeckHints:Ability$Mill|Graveyard Oracle:As Frankenstein's Monster enters, exile X creature cards from your graveyard. If you can't, put Frankenstein's Monster into its owner's graveyard instead of onto the battlefield. For each creature card exiled this way, Frankenstein's Monster enters with a +2/+0, +1/+1, or +0/+2 counter on it. diff --git a/forge-gui/res/cardsfolder/f/frantic_search.txt b/forge-gui/res/cardsfolder/f/frantic_search.txt index 5d9abd40273..fbbaf6e8c82 100644 --- a/forge-gui/res/cardsfolder/f/frantic_search.txt +++ b/forge-gui/res/cardsfolder/f/frantic_search.txt @@ -4,7 +4,7 @@ Types:Instant A:SP$ Draw | NumCards$ 2 | SpellDescription$ Draw two cards, then discard two cards. Untap up to three lands. | SubAbility$ DBDiscard SVar:DBDiscard:DB$ Discard | NumCards$ 2 | Mode$ TgtChoose | SubAbility$ DBUntap SVar:DBUntap:DB$ Untap | UntapUpTo$ True | UntapType$ Land | Amount$ 3 -AI:RemoveDeck:Random SVar:FreeSpellAI:True +AI:RemoveDeck:Random DeckHas:Ability$Discard Oracle:Draw two cards, then discard two cards. Untap up to three lands. diff --git a/forge-gui/res/cardsfolder/f/frenzied_geistblaster.txt b/forge-gui/res/cardsfolder/f/frenzied_geistblaster.txt index 2d04d8cadaf..7e7c82a88c3 100644 --- a/forge-gui/res/cardsfolder/f/frenzied_geistblaster.txt +++ b/forge-gui/res/cardsfolder/f/frenzied_geistblaster.txt @@ -6,6 +6,6 @@ K:Prowess T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | CheckSVar$ X | SVarCompare$ GE20 | Execute$ TrigSeek | TriggerDescription$ When CARDNAME enters, if there are twenty or more instant and/or sorcery cards among cards in your graveyard, hand, and library, you may discard a card. If you do, seek an instant or sorcery card. SVar:TrigSeek:AB$ Seek | Cost$ Discard<1/Card> | Type$ Instant,Sorcery SVar:X:Count$ValidGraveyard,Library,Hand Instant.YouOwn,Sorcery.YouOwn -DeckNeeds:Type$Instant|Sorcery DeckHas:Ability$Discard +DeckNeeds:Type$Instant|Sorcery Oracle:When Frenzied Geistblaster enters, if there are twenty or more instant and/or sorcery cards among cards in your graveyard, hand, and library, you may discard a card. If you do, seek an instant or sorcery card. diff --git a/forge-gui/res/cardsfolder/f/frightshroud_courier.txt b/forge-gui/res/cardsfolder/f/frightshroud_courier.txt index e43f60c102e..72e01a4a354 100644 --- a/forge-gui/res/cardsfolder/f/frightshroud_courier.txt +++ b/forge-gui/res/cardsfolder/f/frightshroud_courier.txt @@ -4,6 +4,6 @@ Types:Creature Zombie PT:2/1 K:You may choose not to untap CARDNAME during your untap step. A:AB$ Pump | Cost$ 2 B T | ValidTgts$ Creature.Zombie | TgtPrompt$ Select target Zombie creature | NumAtt$ 2 | NumDef$ 2 | KW$ Fear | Duration$ UntilUntaps | AILogic$ ContinuousBonus | SpellDescription$ Target Zombie creature gets +2/+2 and has fear for as long as CARDNAME remains tapped. (It can't be blocked except by artifact creatures and/or black creatures.) -DeckNeeds:Type$Zombie SVar:AIUntapPreference:BetterTgtThanRemembered +DeckNeeds:Type$Zombie Oracle:You may choose not to untap Frightshroud Courier during your untap step.\n{2}{B}, {T}: Target Zombie creature gets +2/+2 and has fear for as long as Frightshroud Courier remains tapped. (It can't be blocked except by artifact creatures and/or black creatures.) diff --git a/forge-gui/res/cardsfolder/f/frodo_determined_hero.txt b/forge-gui/res/cardsfolder/f/frodo_determined_hero.txt index 81d06d79ba5..3915fdef1cc 100644 --- a/forge-gui/res/cardsfolder/f/frodo_determined_hero.txt +++ b/forge-gui/res/cardsfolder/f/frodo_determined_hero.txt @@ -6,6 +6,6 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ DBAttach | TriggerZones$ Battlefield | OptionalDecider$ You | Secondary$ True | TriggerDescription$ Whenever CARDNAME attacks, you may attach target Equipment you control with mana value 2 or 3 to NICKNAME. SVar:DBAttach:DB$ Attach | ValidTgts$ Equipment.cmcEQ2+YouCtrl,Equipment.cmcEQ3+YouCtrl | Object$ Targeted | Defined$ Self R:Event$ DamageDone | ActiveZones$ Battlefield | Prevent$ True | ValidTarget$ Card.Self | PlayerTurn$ True | Description$ As long as it's your turn, prevent all damage that would be dealt to NICKNAME. -DeckHints:Type$Equipment SVar:HasAttackEffect:TRUE +DeckHints:Type$Equipment Oracle:Whenever Frodo, Determined Hero enters or attacks, you may attach target Equipment you control with mana value 2 or 3 to Frodo.\nAs long as it's your turn, prevent all damage that would be dealt to Frodo. diff --git a/forge-gui/res/cardsfolder/f/furtive_courier.txt b/forge-gui/res/cardsfolder/f/furtive_courier.txt index 16277cc927e..999af906209 100644 --- a/forge-gui/res/cardsfolder/f/furtive_courier.txt +++ b/forge-gui/res/cardsfolder/f/furtive_courier.txt @@ -7,7 +7,7 @@ SVar:SaccedThisTurn:PlayerCountPropertyYou$SacrificedThisTurn Artifact T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigDraw | TriggerDescription$ Whenever CARDNAME attacks, draw a card, then discard a card. SVar:TrigDraw:DB$ Draw | Defined$ You | NumCards$ 1 | SubAbility$ DBDiscard SVar:DBDiscard:DB$ Discard | Defined$ You | NumCards$ 1 | Mode$ TgtChoose +SVar:HasAttackEffect:True DeckHas:Ability$Sacrifice|Discard DeckHints:Type$Artifact|Clue|Map|Treasure|Food -SVar:HasAttackEffect:True Oracle:Furtive Courier can't be blocked as long as you've sacrificed an artifact this turn.\nWhenever Furtive Courier attacks, draw a card, then discard a card. diff --git a/forge-gui/res/cardsfolder/g/gadrak_the_crown_scourge.txt b/forge-gui/res/cardsfolder/g/gadrak_the_crown_scourge.txt index cc48f5e0f86..357da09489d 100644 --- a/forge-gui/res/cardsfolder/g/gadrak_the_crown_scourge.txt +++ b/forge-gui/res/cardsfolder/g/gadrak_the_crown_scourge.txt @@ -7,7 +7,7 @@ S:Mode$ Continuous | Affected$ Card.Self | AddHiddenKeyword$ CARDNAME can't atta T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ At the beginning of your end step, create a Treasure token for each nontoken creature that died this turn. SVar:TrigToken:DB$ Token | TokenAmount$ Y | TokenScript$ c_a_treasure_sac | TokenOwner$ You SVar:Y:Count$ThisTurnEntered_Graveyard_from_Battlefield_Creature.nonToken +SVar:BuffedBy:Artifact DeckHas:Ability$Token DeckHints:Type$Artifact -SVar:BuffedBy:Artifact Oracle:Flying\nGadrak, the Crown-Scourge can't attack unless you control four or more artifacts.\nAt the beginning of your end step, create a Treasure token for each nontoken creature that died this turn. (It's an artifact with "{T}, Sacrifice this artifact: Add one mana of any color.") diff --git a/forge-gui/res/cardsfolder/g/galadriel_elven_queen.txt b/forge-gui/res/cardsfolder/g/galadriel_elven_queen.txt index 579ec8a0b4e..53c469de97d 100644 --- a/forge-gui/res/cardsfolder/g/galadriel_elven_queen.txt +++ b/forge-gui/res/cardsfolder/g/galadriel_elven_queen.txt @@ -8,6 +8,6 @@ SVar:DBTempt:DB$ RingTemptsYou | SubAbility$ DBPutCounter SVar:DBPutCounter:DB$ PutCounter | Choices$ Card.IsRingbearer+YouCtrl | Mandatory$ True | CounterType$ P1P1 | CounterNum$ 1 SVar:DBDraw:DB$ Draw SVar:ElfEntered:Count$ThisTurnEntered_Battlefield_Creature.Elf+StrictlyOther+YouCtrl -DeckNeeds:Type$Elf DeckHas:Ability$Counters +DeckNeeds:Type$Elf Oracle:Will of the council — At the beginning of combat on your turn, if another Elf entered the battlefield under your control this turn, starting with you, each player votes for dominion or guidance. If dominion gets more votes, the Ring tempts you, then you put a +1/+1 counter on your Ring-bearer. If guidance gets more votes or the vote is tied, draw a card. diff --git a/forge-gui/res/cardsfolder/g/gallifrey_stands.txt b/forge-gui/res/cardsfolder/g/gallifrey_stands.txt index d10837a5821..5e72724644c 100644 --- a/forge-gui/res/cardsfolder/g/gallifrey_stands.txt +++ b/forge-gui/res/cardsfolder/g/gallifrey_stands.txt @@ -6,6 +6,6 @@ SVar:TrigReturn:DB$ ChangeZoneAll | Defined$ You | ChangeType$ Card.Doctor | Ori T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigChangeZone | TriggerDescription$ At the beginning of your upkeep, you may put a Doctor creature card from your hand onto the battlefield. Then if you control thirteen or more Doctors, you win the game. SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Hand | Destination$ Battlefield | ChangeType$ Card.Doctor | SubAbility$ DBWin SVar:DBWin:DB$ WinsGame | Defined$ You | ConditionPresent$ Doctor.YouCtrl | ConditionCompare$ GE13 -DeckNeeds:Type$Doctor DeckHas:Ability$Graveyard +DeckNeeds:Type$Doctor Oracle:When Gallifrey Stands enters, return all Doctor cards from your graveyard to your hand.\nAt the beginning of your upkeep, you may put a Doctor creature card from your hand onto the battlefield. Then if you control thirteen or more Doctors, you win the game. diff --git a/forge-gui/res/cardsfolder/g/gallows_at_willow_hill.txt b/forge-gui/res/cardsfolder/g/gallows_at_willow_hill.txt index 20d2f6e1428..0448b3f5bba 100644 --- a/forge-gui/res/cardsfolder/g/gallows_at_willow_hill.txt +++ b/forge-gui/res/cardsfolder/g/gallows_at_willow_hill.txt @@ -3,6 +3,6 @@ ManaCost:3 Types:Artifact A:AB$ Destroy | Cost$ 3 T tapXType<3/Human> | ValidTgts$ Creature | TgtPrompt$ Select target creature | SubAbility$ GhostToken | SpellDescription$ Destroy target creature. SVar:GhostToken:DB$ Token | TokenAmount$ 1 | TokenScript$ w_1_1_spirit_flying | TokenOwner$ TargetedController | SpellDescription$ Its controller creates a 1/1 white Spirit creature token with flying. -DeckNeeds:Type$Human DeckHas:Ability$Token +DeckNeeds:Type$Human Oracle:{3}, {T}, Tap three untapped Humans you control: Destroy target creature. Its controller creates a 1/1 white Spirit creature token with flying. diff --git a/forge-gui/res/cardsfolder/g/garrison_sergeant.txt b/forge-gui/res/cardsfolder/g/garrison_sergeant.txt index 017f55844cf..33dd5b4c831 100644 --- a/forge-gui/res/cardsfolder/g/garrison_sergeant.txt +++ b/forge-gui/res/cardsfolder/g/garrison_sergeant.txt @@ -3,6 +3,6 @@ ManaCost:3 R W Types:Creature Lizard Soldier PT:3/3 S:Mode$ Continuous | Affected$ Card.Self | AddKeyword$ Double Strike | IsPresent$ Gate.YouCtrl | Description$ CARDNAME has double strike as long as you control a Gate. -DeckNeeds:Type$Gate SVar:BuffedBy:Gate +DeckNeeds:Type$Gate Oracle:Garrison Sergeant has double strike as long as you control a Gate. diff --git a/forge-gui/res/cardsfolder/g/gate_to_phyrexia.txt b/forge-gui/res/cardsfolder/g/gate_to_phyrexia.txt index b7f646626fb..a9f1a2943f1 100644 --- a/forge-gui/res/cardsfolder/g/gate_to_phyrexia.txt +++ b/forge-gui/res/cardsfolder/g/gate_to_phyrexia.txt @@ -2,7 +2,7 @@ Name:Gate to Phyrexia ManaCost:B B Types:Enchantment A:AB$ Destroy | Cost$ Sac<1/Creature> | ValidTgts$ Artifact | TgtPrompt$ Select target artifact | ActivationPhases$ Upkeep | ActivationLimit$ 1 | PlayerTurn$ True | SpellDescription$ Destroy target artifact. Activate only during your upkeep and only once each turn. -AI:RemoveDeck:Random SVar:NonStackingEffect:True +AI:RemoveDeck:Random DeckHas:Ability$Sacrifice Oracle:Sacrifice a creature: Destroy target artifact. Activate only during your upkeep and only once each turn. diff --git a/forge-gui/res/cardsfolder/g/gatekeeper_gargoyle.txt b/forge-gui/res/cardsfolder/g/gatekeeper_gargoyle.txt index 56f0a4d3aee..c474bc6e22d 100644 --- a/forge-gui/res/cardsfolder/g/gatekeeper_gargoyle.txt +++ b/forge-gui/res/cardsfolder/g/gatekeeper_gargoyle.txt @@ -5,6 +5,6 @@ PT:3/3 K:Flying K:etbCounter:P1P1:X:no Condition:CARDNAME enters with a +1/+1 counter on it for each Gate you control. SVar:X:Count$Valid Gate.YouCtrl -DeckHints:Type$Gate SVar:NeedsToPlayVar:X GE1 +DeckHints:Type$Gate Oracle:Flying\nGatekeeper Gargoyle enters with a +1/+1 counter on it for each Gate you control. diff --git a/forge-gui/res/cardsfolder/g/gavi_nest_warden.txt b/forge-gui/res/cardsfolder/g/gavi_nest_warden.txt index 640af66a1ba..4a59c82184c 100644 --- a/forge-gui/res/cardsfolder/g/gavi_nest_warden.txt +++ b/forge-gui/res/cardsfolder/g/gavi_nest_warden.txt @@ -6,7 +6,7 @@ S:Mode$ AlternativeCost | ValidSA$ Activated.Cycling | ValidPlayer$ You | Cost$ SVar:X:Count$ThisTurnActivated_Activated.Cycling+YouCtrl T:Mode$ Drawn | ValidCard$ Card.YouCtrl | Number$ 2 | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Whenever you draw your second card each turn, create a 2/2 red and white Dinosaur Cat creature token. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ rw_2_2_dinosaur_cat | TokenOwner$ You -DeckHas:Ability$Token SVar:PlayMain1:TRUE +DeckHas:Ability$Token DeckHints:Type$Dinosaur Oracle:You may pay {0} rather than pay the cycling cost of the first card you cycle each turn.\nWhenever you draw your second card each turn, create a 2/2 red and white Dinosaur Cat creature token. diff --git a/forge-gui/res/cardsfolder/g/geistchanneler.txt b/forge-gui/res/cardsfolder/g/geistchanneler.txt index a99d830cb78..7ae79e4500b 100644 --- a/forge-gui/res/cardsfolder/g/geistchanneler.txt +++ b/forge-gui/res/cardsfolder/g/geistchanneler.txt @@ -7,7 +7,7 @@ SVar:TrigChoose:DB$ ChooseCard | ChoiceZone$ Hand | Choices$ Instant.YouOwn+cmcG SVar:DBAnimate:DB$ Animate | Defined$ ChosenCard | staticAbilities$ ReduceCost | Duration$ Perpetual | SubAbility$ DBCleanup SVar:ReduceCost:Mode$ ReduceCost | ValidCard$ Card.Self | Type$ Spell | Amount$ 2 | EffectZone$ All | Description$ This spell costs {2} less to cast. SVar:DBCleanup:DB$ Cleanup | ClearChosenCard$ True -DeckNeeds:Type$Instant|Sorcery SVar:NeedsToPlayVar:X GE1 SVar:X:Count$ValidHand Instant.YouOwn+cmcGE3,Sorcery.YouOwn+cmcGE3 +DeckNeeds:Type$Instant|Sorcery Oracle:When Geistchanneler enters, choose an instant or sorcery card in your hand with mana value 3 or greater. It perpetually gains "This spell costs {2} less to cast." diff --git a/forge-gui/res/cardsfolder/g/general_ferrous_rokiric.txt b/forge-gui/res/cardsfolder/g/general_ferrous_rokiric.txt index eaf9673bdcc..223d96776bb 100644 --- a/forge-gui/res/cardsfolder/g/general_ferrous_rokiric.txt +++ b/forge-gui/res/cardsfolder/g/general_ferrous_rokiric.txt @@ -5,7 +5,7 @@ PT:3/1 K:Hexproof:Card.MonoColor:monocolored T:Mode$ SpellCast | ValidCard$ Card.MultiColor | ValidActivatingPlayer$ You | Execute$ TrigToken | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast a multicolored spell, create a 4/4 red and white Golem artifact creature token. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenOwner$ You | TokenScript$ rw_4_4_a_golem -AI:RemoveDeck:Random SVar:BuffedBy:Card.MultiColor +AI:RemoveDeck:Random DeckHas:Ability$Token Oracle:Hexproof from monocolored\nWhenever you cast a multicolored spell, create a 4/4 red and white Golem artifact creature token. diff --git a/forge-gui/res/cardsfolder/g/generous_visitor.txt b/forge-gui/res/cardsfolder/g/generous_visitor.txt index 06f523293af..cd506d6ef26 100644 --- a/forge-gui/res/cardsfolder/g/generous_visitor.txt +++ b/forge-gui/res/cardsfolder/g/generous_visitor.txt @@ -4,6 +4,6 @@ Types:Creature Spirit PT:1/1 T:Mode$ SpellCast | ValidCard$ Enchantment | ValidActivatingPlayer$ You | Execute$ TrigPutCounter | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast an enchantment spell, put a +1/+1 counter on target creature. SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature | TgtPrompt$ Select target creature | CounterType$ P1P1 | CounterNum$ 1 -DeckNeeds:Type$Enchantment DeckHas:Ability$Counters +DeckNeeds:Type$Enchantment Oracle:Whenever you cast an enchantment spell, put a +1/+1 counter on target creature. diff --git a/forge-gui/res/cardsfolder/g/genestealer_patriarch.txt b/forge-gui/res/cardsfolder/g/genestealer_patriarch.txt index 7792d3a61e9..c63553f1b36 100644 --- a/forge-gui/res/cardsfolder/g/genestealer_patriarch.txt +++ b/forge-gui/res/cardsfolder/g/genestealer_patriarch.txt @@ -6,7 +6,7 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigInfectionCounter | Trigger SVar:TrigInfectionCounter:DB$ PutCounter | CounterType$ INFECTION | CounterNum$ 1 | ValidTgts$ Creature.ControlledBy TriggeredDefendingPlayer | TgtPrompt$ Put an infection counter on target creature defending player controls T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Creature.counters_GE1_INFECTION | Execute$ DBCopy | TriggerDescription$ Children of the Cult — Whenever a creature with an infection counter on it dies, you create a token that's a copy of that creature, except it's a Tyranid in addition to its other types. SVar:DBCopy:DB$ CopyPermanent | Defined$ TriggeredCardLKICopy | AddTypes$ Tyranid +SVar:HasAttackEffect:TRUE DeckHas:Ability$Counters|Token DeckHints:Name$Diseased Vermin -SVar:HasAttackEffect:TRUE Oracle:Genestealer's Kiss — Whenever Genestealer Patriarch attacks, put an infection counter on target creature defending player controls.\nChildren of the Cult — Whenever a creature with an infection counter on it dies, you create a token that's a copy of that creature, except it's a Tyranid in addition to its other types. diff --git a/forge-gui/res/cardsfolder/g/ghalma_the_shaper.txt b/forge-gui/res/cardsfolder/g/ghalma_the_shaper.txt index 9952d49bdd7..1f909d2ec27 100644 --- a/forge-gui/res/cardsfolder/g/ghalma_the_shaper.txt +++ b/forge-gui/res/cardsfolder/g/ghalma_the_shaper.txt @@ -6,7 +6,7 @@ K:Vigilance T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigConjure | TriggerDescription$ Whenever CARDNAME attacks, conjure a card named Tempered Steel into your hand, then create a 1/1 colorless Myr artifact creature token. SVar:TrigConjure:DB$ MakeCard | Conjure$ True | Name$ Tempered Steel | Zone$ Hand | SubAbility$ DBToken SVar:DBToken:DB$ Token | TokenScript$ c_1_1_a_myr +SVar:HasAttackEffect:TRUE DeckHas:Type$Enchantment|Myr|Artifact DeckHints:Type$Artifact -SVar:HasAttackEffect:TRUE Oracle:Vigilance\nWhenever Ghalma the Shaper attacks, conjure a card named Tempered Steel into your hand, then create a 1/1 colorless Myr artifact creature token. diff --git a/forge-gui/res/cardsfolder/g/ghen_arcanum_weaver.txt b/forge-gui/res/cardsfolder/g/ghen_arcanum_weaver.txt index 210a3dc0a72..98aee19f038 100644 --- a/forge-gui/res/cardsfolder/g/ghen_arcanum_weaver.txt +++ b/forge-gui/res/cardsfolder/g/ghen_arcanum_weaver.txt @@ -3,6 +3,6 @@ ManaCost:R W B Types:Legendary Creature Human Wizard PT:2/3 A:AB$ ChangeZone | Cost$ R W B Sac<1/Enchantment/enchantment> T | TgtPrompt$ Choose target enchantment card in your graveyard | ValidTgts$ Enchantment.YouOwn | Origin$ Graveyard | Destination$ Battlefield | SpellDescription$ Return target enchantment card from your graveyard to the battlefield. -DeckNeeds:Type$Enchantment DeckHas:Ability$Graveyard +DeckNeeds:Type$Enchantment Oracle:{R}{W}{B}, {T}, Sacrifice an enchantment: Return target enchantment card from your graveyard to the battlefield. diff --git a/forge-gui/res/cardsfolder/g/ghosthelm_courier.txt b/forge-gui/res/cardsfolder/g/ghosthelm_courier.txt index 0e1724181cb..ca1bf5a28f1 100644 --- a/forge-gui/res/cardsfolder/g/ghosthelm_courier.txt +++ b/forge-gui/res/cardsfolder/g/ghosthelm_courier.txt @@ -4,6 +4,6 @@ Types:Creature Human Wizard PT:2/1 K:You may choose not to untap CARDNAME during your untap step. A:AB$ Pump | Cost$ 2 U T | ValidTgts$ Creature.Wizard | TgtPrompt$ Select target Wizard creature | NumAtt$ 2 | NumDef$ 2 | KW$ Shroud | Duration$ UntilUntaps | AILogic$ ContinuousBonus | SpellDescription$ Target Wizard creature gets +2/+2 and has shroud for as long as CARDNAME remains tapped. (It can't be the target of spells or abilities.) -DeckNeeds:Type$Wizard SVar:AIUntapPreference:BetterTgtThanRemembered +DeckNeeds:Type$Wizard Oracle:You may choose not to untap Ghosthelm Courier during your untap step.\n{2}{U}, {T}: Target Wizard creature gets +2/+2 and has shroud for as long as Ghosthelm Courier remains tapped. (It can't be the target of spells or abilities.) diff --git a/forge-gui/res/cardsfolder/g/gixian_infiltrator.txt b/forge-gui/res/cardsfolder/g/gixian_infiltrator.txt index e031812fb9b..f50a7b667d1 100644 --- a/forge-gui/res/cardsfolder/g/gixian_infiltrator.txt +++ b/forge-gui/res/cardsfolder/g/gixian_infiltrator.txt @@ -4,6 +4,6 @@ Types:Creature Phyrexian Human PT:2/1 T:Mode$ Sacrificed | ValidCard$ Permanent | ValidPlayer$ You | Execute$ TrigPutCounter | TriggerZones$ Battlefield | TriggerDescription$ Whenever you sacrifice another permanent, put a +1/+1 counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 -DeckNeeds:Ability$Sacrifice DeckHas:Ability$Counters +DeckNeeds:Ability$Sacrifice Oracle:Whenever you sacrifice another permanent, put a +1/+1 counter on Gixian Infiltrator. diff --git a/forge-gui/res/cardsfolder/g/glacial_crasher.txt b/forge-gui/res/cardsfolder/g/glacial_crasher.txt index 9c2e721f57a..e4f5e4ebd67 100644 --- a/forge-gui/res/cardsfolder/g/glacial_crasher.txt +++ b/forge-gui/res/cardsfolder/g/glacial_crasher.txt @@ -4,7 +4,7 @@ Types:Creature Elemental PT:5/5 K:Trample S:Mode$ Continuous | Affected$ Card.Self | AddHiddenKeyword$ CARDNAME can't attack. | IsPresent$ Mountain | PresentCompare$ EQ0 | Description$ CARDNAME can't attack unless there is a Mountain on the battlefield. +SVar:BuffedBy:Mountain AI:RemoveDeck:Random DeckNeeds:Color$Red -SVar:BuffedBy:Mountain Oracle:Trample (This creature can deal excess combat damage to the player or planeswalker it's attacking.)\nGlacial Crasher can't attack unless there is a Mountain on the battlefield. diff --git a/forge-gui/res/cardsfolder/g/glacian_powerstone_engineer.txt b/forge-gui/res/cardsfolder/g/glacian_powerstone_engineer.txt index b7d977a23dc..3b2fa5f1044 100644 --- a/forge-gui/res/cardsfolder/g/glacian_powerstone_engineer.txt +++ b/forge-gui/res/cardsfolder/g/glacian_powerstone_engineer.txt @@ -6,6 +6,6 @@ K:Partner A:AB$ Dig | Cost$ T tapXType | DigNum$ X | ChangeNum$ 1 | DestinationZone2$ Graveyard | SubAbility$ DBStackDesc | SpellDescription$ Look at the top X cards of your library. Put one of those cards into your hand and the rest into your graveyard. SVar:DBStackDesc:DB$ Pump | StackDescription$ {p:You} puts one of those cards into their hand and the rest into the graveyard. SVar:X:Count$xPaid -DeckNeeds:Type$Artifact DeckHas:Ability$Graveyard +DeckNeeds:Type$Artifact Oracle:{T}, Tap X untapped artifacts you control: Look at the top X cards of your library. Put one of those cards into your hand and the rest into your graveyard.\nPartner (You can have two commanders if both have partner.) diff --git a/forge-gui/res/cardsfolder/g/glimpse_the_impossible.txt b/forge-gui/res/cardsfolder/g/glimpse_the_impossible.txt index 57f670350d3..792933a8c7b 100644 --- a/forge-gui/res/cardsfolder/g/glimpse_the_impossible.txt +++ b/forge-gui/res/cardsfolder/g/glimpse_the_impossible.txt @@ -8,6 +8,6 @@ SVar:DBDelayTrig:DB$ DelayedTrigger | Mode$ Phase | RememberObjects$ Remembered SVar:TrigChangeAll:DB$ ChangeZone | Defined$ DelayTriggerRememberedLKI | Origin$ Exile | Destination$ Graveyard | RememberChanged$ True | ForgetOtherRemembered$ True | SubAbility$ DBToken SVar:DBToken:DB$ Token | TokenAmount$ X | TokenScript$ c_0_1_eldrazi_spawn_sac | TokenOwner$ You | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -DeckHas:Ability$Token & Type$Eldrazi|Spawn SVar:X:Remembered$Amount +DeckHas:Ability$Token & Type$Eldrazi|Spawn Oracle:Exile the top three cards of your library. You may play those cards this turn. \nAt the beginning of the next end step, if any of those cards remain exiled, put them into your graveyard, then create a 0/1 colorless Eldrazi Spawn creature token for each card put into your graveyard this way. Those tokens have "Sacrifice this creature: Add {C}." diff --git a/forge-gui/res/cardsfolder/g/glissas_retriever.txt b/forge-gui/res/cardsfolder/g/glissas_retriever.txt index 00e0ae99e69..8044ff25352 100644 --- a/forge-gui/res/cardsfolder/g/glissas_retriever.txt +++ b/forge-gui/res/cardsfolder/g/glissas_retriever.txt @@ -10,7 +10,7 @@ SVar:TrigExile:DB$ ChangeZone | Origin$ Graveyard | Destination$ Exile | Defined SVar:DBImmediateTrigger:DB$ ImmediateTrigger | ConditionDefined$ Remembered | ConditionPresent$ Card.Self | Execute$ TrigChangeZone | TriggerDescription$ 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. | SubAbility$ DBCleanup SVar:TrigChangeZone:DB$ ChangeZone | TargetMin$ 0 | TargetMax$ X | ValidTgts$ Card.YouOwn | TgtPrompt$ Select X target cards in your graveyard | Origin$ Graveyard | Destination$ Hand SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +SVar:X:PlayerCountOpponents$HasPropertyIsCorrupted DeckHas:Ability$Graveyard DeckHints:Ability$Mill|Dredge -SVar:X:PlayerCountOpponents$HasPropertyIsCorrupted Oracle:Haste, toxic 3 (Players dealt combat damage by this creature also get three poison counters.)\nGlissa's Retriever can't be blocked by creatures with power 2 or less.\nCorrupted — 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. diff --git a/forge-gui/res/cardsfolder/g/goddric_cloaked_reveler.txt b/forge-gui/res/cardsfolder/g/goddric_cloaked_reveler.txt index 5be640d5803..83ea86ebc6d 100644 --- a/forge-gui/res/cardsfolder/g/goddric_cloaked_reveler.txt +++ b/forge-gui/res/cardsfolder/g/goddric_cloaked_reveler.txt @@ -6,6 +6,6 @@ K:Haste S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 4 | SetToughness$ 4 | AddAbility$ DragonPump | AddType$ Dragon | RemoveCreatureTypes$ True | AddKeyword$ Flying | CheckSVar$ Celebration | SVarCompare$ GE2 | Description$ Celebration — As long as two or more nonland permanents entered the battlefield under your control this turn, CARDNAME is a Dragon with base power and toughness 4/4, flying, and "{R}: Dragons you control get +1/+0 until end of turn." (It loses all other creature types.) SVar:DragonPump:AB$ PumpAll | Cost$ R | ValidCards$ Dragon.YouCtrl | NumAtt$ +1 | SpellDescription$ Dragons you control get +1/+0 until end of turn. SVar:Celebration:Count$ThisTurnEntered_Battlefield_Permanent.nonLand+YouCtrl -DeckNeeds:Type$Dragon DeckHas:Type$Dragon +DeckNeeds:Type$Dragon Oracle:Haste\nCelebration — As long as two or more nonland permanents entered the battlefield under your control this turn, Goddric, Cloaked Reveler is a Dragon with base power and toughness 4/4, flying, and "{R}: Dragons you control get +1/+0 until end of turn." (It loses all other creature types.) diff --git a/forge-gui/res/cardsfolder/g/golgothian_sylex.txt b/forge-gui/res/cardsfolder/g/golgothian_sylex.txt index 9b86fbc7fbb..028960eeec0 100644 --- a/forge-gui/res/cardsfolder/g/golgothian_sylex.txt +++ b/forge-gui/res/cardsfolder/g/golgothian_sylex.txt @@ -3,7 +3,7 @@ ManaCost:4 Types:Artifact A:AB$ SacrificeAll | Cost$ 1 T | ValidCards$ Permanent.nonToken+setATQ | SpellDescription$ Each nontoken permanent with a name originally printed in the Antiquities expansion is sacrificed by its controller. AI:RemoveDeck:All -AI:RemoveDeck:Random SVar:NonStackingEffect:True +AI:RemoveDeck:Random DeckHas:Ability$Sacrifice Oracle:{1}, {T}: Each nontoken permanent with a name originally printed in the Antiquities expansion is sacrificed by its controller. diff --git a/forge-gui/res/cardsfolder/g/grim_reapers_sprint.txt b/forge-gui/res/cardsfolder/g/grim_reapers_sprint.txt index a09bfd12d3f..83d305eec80 100644 --- a/forge-gui/res/cardsfolder/g/grim_reapers_sprint.txt +++ b/forge-gui/res/cardsfolder/g/grim_reapers_sprint.txt @@ -9,6 +9,6 @@ SVar:TrigUntap:DB$ UntapAll | ValidCards$ Creature.YouCtrl | SubAbility$ DBAddCo SVar:DBAddCombat:DB$ AddPhase | ExtraPhase$ Combat | ConditionPhases$ Main1,Main2 | ConditionPlayerTurn$ True S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddPower$ 2 | AddToughness$ 2 | AddKeyword$ Haste | Description$ Enchanted creature gets +2/+2 and has haste. SVar:X:Count$ThisTurnEntered_Graveyard_from_Battlefield_Creature -DeckHints:Ability$Sacrifice SVar:PlayMain1:TRUE +DeckHints:Ability$Sacrifice Oracle:Morbid — This spell costs {3} less to cast if a creature died this turn.\nEnchant creature\nWhen Grim Reaper's Sprint enters, untap each creature you control. If it's your main phase, there is an additional combat phase after this phase.\nEnchanted creature gets +2/+2 and has haste. diff --git a/forge-gui/res/cardsfolder/g/grindclock.txt b/forge-gui/res/cardsfolder/g/grindclock.txt index 77512b20d8a..a7894f8b7fc 100644 --- a/forge-gui/res/cardsfolder/g/grindclock.txt +++ b/forge-gui/res/cardsfolder/g/grindclock.txt @@ -4,6 +4,6 @@ Types:Artifact A:AB$ PutCounter | Cost$ T | CounterType$ CHARGE | CounterNum$ 1 | SpellDescription$ Put a charge counter on CARDNAME. A:AB$ Mill | Cost$ T | NumCards$ X | ValidTgts$ Player | TgtPrompt$ Choose a player | SpellDescription$ Target player mills X cards, where X is the number of charge counters on CARDNAME. SVar:X:Count$CardCounters.CHARGE -DeckHas:Ability$Counters SVar:UntapMe:True +DeckHas:Ability$Counters Oracle:{T}: Put a charge counter on Grindclock.\n{T}: Target player mills X cards, where X is the number of charge counters on Grindclock. diff --git a/forge-gui/res/cardsfolder/g/grisly_sigil.txt b/forge-gui/res/cardsfolder/g/grisly_sigil.txt index 8a526c655e1..3944cbc30a6 100644 --- a/forge-gui/res/cardsfolder/g/grisly_sigil.txt +++ b/forge-gui/res/cardsfolder/g/grisly_sigil.txt @@ -8,6 +8,6 @@ SVar:Damage1:DB$ DealDamage | Defined$ Targeted | NumDmg$ 1 | SubAbility$ DBGain SVar:DBGain3Life:DB$ GainLife | LifeAmount$ 3 SVar:DBGain1Life:DB$ GainLife | LifeAmount$ 1 SVar:X:Targeted$Valid Card.wasDealtNonCombatDamageThisTurn -DeckHas:Ability$Sacrifice|LifeGain SVar:AINoCasualtyPayment:TRUE +DeckHas:Ability$Sacrifice|LifeGain Oracle:Casualty 1 (As you cast this spell, you may sacrifice a creature with power 1 or greater. When you do, copy this spell and you may choose new targets for the copy.)\nChoose target creature or planeswalker. If it was dealt noncombat damage this turn, Grisly Sigil deals 3 damage to it and you gain 3 life. Otherwise, Grisly Sigil deals 1 damage to it and you gain 1 life. diff --git a/forge-gui/res/cardsfolder/g/gruul_scrapper.txt b/forge-gui/res/cardsfolder/g/gruul_scrapper.txt index 1b1578e2b09..75e66fe8c46 100644 --- a/forge-gui/res/cardsfolder/g/gruul_scrapper.txt +++ b/forge-gui/res/cardsfolder/g/gruul_scrapper.txt @@ -5,7 +5,7 @@ PT:3/2 T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | ManaSpent$ R | Execute$ TrigPump | TriggerDescription$ When CARDNAME enters, if {R} was spent to cast it, it gains haste until end of turn. SVar:TrigPump:DB$ Pump | Defined$ Self | KW$ Haste SVar:ManaNeededToAvoidNegativeEffect:red -AI:RemoveDeck:Random SVar:PlayMain1:ALWAYS +AI:RemoveDeck:Random DeckNeeds:Color$Red Oracle:When Gruul Scrapper enters, if {R} was spent to cast it, it gains haste until end of turn. diff --git a/forge-gui/res/cardsfolder/g/gunner_conscript.txt b/forge-gui/res/cardsfolder/g/gunner_conscript.txt index bc702f90beb..0ade92dfdc2 100644 --- a/forge-gui/res/cardsfolder/g/gunner_conscript.txt +++ b/forge-gui/res/cardsfolder/g/gunner_conscript.txt @@ -10,6 +10,6 @@ SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_junk_sac_exileplay SVar:X:Count$Valid Equipment.Attached,Aura.Attached SVar:EnchantMe:Multiple SVar:EquipMe:Multiple -DeckNeeds:Type$Aura|Equipment DeckHas:Ability$Token & Type$Artifact|Junk +DeckNeeds:Type$Aura|Equipment Oracle:Trample\nGunner Conscript gets +1/+1 for each Aura and Equipment attached to it.\nWhen Gunner Conscript dies, if it was enchanted, create a Junk token.\nWhen Gunner Conscript dies, if it was equipped, create a Junk token. diff --git a/forge-gui/res/cardsfolder/g/gutwrencher_oni.txt b/forge-gui/res/cardsfolder/g/gutwrencher_oni.txt index 1418cff70ac..9debfa20792 100644 --- a/forge-gui/res/cardsfolder/g/gutwrencher_oni.txt +++ b/forge-gui/res/cardsfolder/g/gutwrencher_oni.txt @@ -5,7 +5,7 @@ PT:5/4 K:Trample T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ TrigDiscard | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of your upkeep, discard a card if you don't control an Ogre. SVar:TrigDiscard:DB$ Discard | Defined$ You | NumCards$ 1 | Mode$ TgtChoose | ConditionPresent$ Ogre.YouCtrl | ConditionCompare$ EQ0 -AI:RemoveDeck:Random SVar:NeedsToPlay:Ogre.YouCtrl +AI:RemoveDeck:Random DeckHints:Type$Ogre Oracle:Trample\nAt the beginning of your upkeep, discard a card if you don't control an Ogre. From f538eb1ec3f67462966eb657fdc549d25643679e Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 12:07:58 +0100 Subject: [PATCH 23/91] Edit pile cleanup: Line reordering, second pass: part 4, folders 'h' to 'k' --- forge-gui/res/cardsfolder/h/haazda_vigilante.txt | 2 +- forge-gui/res/cardsfolder/h/hallar_the_firefletcher.txt | 2 +- forge-gui/res/cardsfolder/h/halsin_emerald_archdruid.txt | 2 +- forge-gui/res/cardsfolder/h/hamlet_vanguard.txt | 2 +- forge-gui/res/cardsfolder/h/harried_spearguard.txt | 2 +- forge-gui/res/cardsfolder/h/haywire_mite.txt | 2 +- forge-gui/res/cardsfolder/h/hazels_brewmaster.txt | 2 +- forge-gui/res/cardsfolder/h/helium_squirter.txt | 2 +- forge-gui/res/cardsfolder/h/herald_of_ilharg.txt | 2 +- forge-gui/res/cardsfolder/h/hero_of_precinct_one.txt | 2 +- forge-gui/res/cardsfolder/h/heroic_reinforcements.txt | 2 +- forge-gui/res/cardsfolder/h/heronblade_elite.txt | 2 +- forge-gui/res/cardsfolder/h/hobblefiend.txt | 2 +- forge-gui/res/cardsfolder/h/hollowhenge_overlord.txt | 4 ++-- forge-gui/res/cardsfolder/h/horror_of_horrors.txt | 2 +- forge-gui/res/cardsfolder/h/hungry_for_more.txt | 2 +- forge-gui/res/cardsfolder/h/hungry_hungry_heifer.txt | 2 +- forge-gui/res/cardsfolder/h/hunted_witness.txt | 2 +- forge-gui/res/cardsfolder/h/hythonia_the_cruel.txt | 2 +- forge-gui/res/cardsfolder/i/ian_the_reckless.txt | 2 +- forge-gui/res/cardsfolder/i/illusions_of_grandeur.txt | 4 ++-- forge-gui/res/cardsfolder/i/imperial_ceratops.txt | 2 +- forge-gui/res/cardsfolder/i/impulsive_pilferer.txt | 2 +- forge-gui/res/cardsfolder/i/indulge_excess.txt | 2 +- forge-gui/res/cardsfolder/i/industrial_advancement.txt | 2 +- forge-gui/res/cardsfolder/i/infested_fleshcutter.txt | 2 +- forge-gui/res/cardsfolder/i/infused_arrows.txt | 2 +- forge-gui/res/cardsfolder/i/ingenuity_engine.txt | 2 +- forge-gui/res/cardsfolder/i/invade_the_city.txt | 6 +++--- .../i/invasion_of_arcavios_invocation_of_the_founders.txt | 2 +- forge-gui/res/cardsfolder/i/invoke_calamity.txt | 2 +- forge-gui/res/cardsfolder/i/ior_ruin_expedition.txt | 2 +- forge-gui/res/cardsfolder/i/iridescent_hornbeetle.txt | 2 +- forge-gui/res/cardsfolder/j/jinnie_fay_jetmirs_second.txt | 2 +- forge-gui/res/cardsfolder/j/jolrael_voice_of_zhalfir.txt | 2 +- forge-gui/res/cardsfolder/j/jor_kadeen_first_goldwarden.txt | 2 +- forge-gui/res/cardsfolder/j/joraga_warcaller.txt | 2 +- .../j/jorn_god_of_winter_kaldring_the_rimestaff.txt | 2 +- forge-gui/res/cardsfolder/j/judith_carnage_connoisseur.txt | 2 +- forge-gui/res/cardsfolder/j/juri_master_of_the_revue.txt | 2 +- forge-gui/res/cardsfolder/k/kalamax_the_stormsire.txt | 2 +- forge-gui/res/cardsfolder/k/kalonian_hydra.txt | 4 ++-- forge-gui/res/cardsfolder/k/kami_of_the_painted_road.txt | 2 +- forge-gui/res/cardsfolder/k/kangee_sky_warden.txt | 2 +- forge-gui/res/cardsfolder/k/kangees_lieutenant.txt | 2 +- forge-gui/res/cardsfolder/k/kappa_cannoneer.txt | 4 ++-- forge-gui/res/cardsfolder/k/kargan_intimidator.txt | 2 +- forge-gui/res/cardsfolder/k/karn_living_legacy.txt | 2 +- forge-gui/res/cardsfolder/k/karok_wrangler.txt | 2 +- forge-gui/res/cardsfolder/k/kemba_kha_enduring.txt | 2 +- forge-gui/res/cardsfolder/k/khalni_heart_expedition.txt | 2 +- forge-gui/res/cardsfolder/k/king_darien_xlviii.txt | 2 +- forge-gui/res/cardsfolder/k/knights_charge.txt | 2 +- forge-gui/res/cardsfolder/k/kodama_of_the_center_tree.txt | 2 +- forge-gui/res/cardsfolder/k/kolaghan_warmonger.txt | 2 +- forge-gui/res/cardsfolder/k/korvold_fae_cursed_king.txt | 2 +- forge-gui/res/cardsfolder/k/koth_fire_of_resistance.txt | 2 +- forge-gui/res/cardsfolder/k/krenko_baron_of_tin_street.txt | 2 +- forge-gui/res/cardsfolder/k/kroxa_and_kunoros.txt | 3 +-- forge-gui/res/cardsfolder/k/kuldotha_rebirth.txt | 4 ++-- forge-gui/res/cardsfolder/k/kumena_tyrant_of_orazca.txt | 2 +- forge-gui/res/cardsfolder/k/kyler_sigardian_emissary.txt | 2 +- forge-gui/res/cardsfolder/k/kyloxs_voltstrider.txt | 2 +- 63 files changed, 70 insertions(+), 71 deletions(-) diff --git a/forge-gui/res/cardsfolder/h/haazda_vigilante.txt b/forge-gui/res/cardsfolder/h/haazda_vigilante.txt index 75db5aaa2ac..e7f6c59aa33 100644 --- a/forge-gui/res/cardsfolder/h/haazda_vigilante.txt +++ b/forge-gui/res/cardsfolder/h/haazda_vigilante.txt @@ -5,6 +5,6 @@ PT:4/4 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigPutCounter | TriggerDescription$ Whenever CARDNAME enters or attacks, put a +1/+1 counter on target creature you control with power 2 or less. T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPutCounter | Secondary$ True | TriggerDescription$ Whenever CARDNAME enters or attacks, put a +1/+1 counter on target creature you control with power 2 or less. SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature.powerLE2+YouCtrl | TgtPrompt$ Select target creature you control with power 2 or less | CounterType$ P1P1 | CounterNum$ 1 -DeckHas:Ability$Counters SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters Oracle:Whenever Haazda Vigilante enters or attacks, put a +1/+1 counter on target creature you control with power 2 or less. diff --git a/forge-gui/res/cardsfolder/h/hallar_the_firefletcher.txt b/forge-gui/res/cardsfolder/h/hallar_the_firefletcher.txt index 616f14d02d4..ee5096de8f1 100644 --- a/forge-gui/res/cardsfolder/h/hallar_the_firefletcher.txt +++ b/forge-gui/res/cardsfolder/h/hallar_the_firefletcher.txt @@ -7,6 +7,6 @@ T:Mode$ SpellCast | ValidCard$ Card.kicked | ValidActivatingPlayer$ You | Execut SVar:DBPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBDealDamage SVar:DBDealDamage:DB$ DealDamage | Defined$ Player.Opponent | NumDmg$ X SVar:X:Count$CardCounters.P1P1 -DeckHas:Ability$Counters SVar:BuffedBy:Card.withKicker,Card.withMultikicker +DeckHas:Ability$Counters Oracle:Trample\nWhenever you cast a spell, if that spell was kicked, put a +1/+1 counter on Hallar, the Firefletcher, then Hallar deals damage equal to the number of +1/+1 counters on it to each opponent. diff --git a/forge-gui/res/cardsfolder/h/halsin_emerald_archdruid.txt b/forge-gui/res/cardsfolder/h/halsin_emerald_archdruid.txt index b9e4c0e78e0..8e472ba02fa 100644 --- a/forge-gui/res/cardsfolder/h/halsin_emerald_archdruid.txt +++ b/forge-gui/res/cardsfolder/h/halsin_emerald_archdruid.txt @@ -4,6 +4,6 @@ Types:Legendary Creature Elf Druid PT:2/4 A:AB$ Animate | Cost$ 1 | ValidTgts$ Permanent.token+YouCtrl | TgtPrompt$ Select target token you control | Power$ 4 | Toughness$ 4 | Types$ Creature,Bear | Colors$ Green | SpellDescription$ Until end of turn, target token you control becomes a green Bear creature with base power and toughness 4/4 in addition to its other types and colors. K:Choose a Background -DeckNeeds:Ability$Token DeckHas:Type$Bear +DeckNeeds:Ability$Token Oracle:{1}: Until end of turn, target token you control becomes a green Bear creature with base power and toughness 4/4 in addition to its other types and colors.\nChoose a Background (You can have a Background as a second commander.) diff --git a/forge-gui/res/cardsfolder/h/hamlet_vanguard.txt b/forge-gui/res/cardsfolder/h/hamlet_vanguard.txt index d3c0a566d54..bd9f7a6ed1f 100644 --- a/forge-gui/res/cardsfolder/h/hamlet_vanguard.txt +++ b/forge-gui/res/cardsfolder/h/hamlet_vanguard.txt @@ -5,6 +5,6 @@ PT:1/1 K:Ward:2 K:etbCounter:P1P1:X:no Condition:CARDNAME enters with two +1/+1 counters on it for each other nontoken Human you control. SVar:X:Count$Valid Human.nonToken+YouCtrl/Times.2 -DeckNeeds:Type$Human DeckHas:Ability$Counters +DeckNeeds:Type$Human Oracle:Ward {2} (Whenever this creature becomes the target of a spell or ability an opponent controls, counter it unless that player pays {2}.)\nHamlet Vanguard enters with two +1/+1 counters on it for each other nontoken Human you control. diff --git a/forge-gui/res/cardsfolder/h/harried_spearguard.txt b/forge-gui/res/cardsfolder/h/harried_spearguard.txt index cc89e292ccd..bcb089fd019 100644 --- a/forge-gui/res/cardsfolder/h/harried_spearguard.txt +++ b/forge-gui/res/cardsfolder/h/harried_spearguard.txt @@ -5,6 +5,6 @@ PT:1/1 K:Haste T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME dies, create a 1/1 black Rat creature token with "This creature can't block." SVar:TrigToken:DB$ Token | TokenScript$ b_1_1_rat_noblock -DeckHas:Ability$Token & Type$Rat SVar:SacMe:2 +DeckHas:Ability$Token & Type$Rat Oracle:Haste\nWhen Harried Spearguard dies, create a 1/1 black Rat creature token with "This creature can't block." diff --git a/forge-gui/res/cardsfolder/h/haywire_mite.txt b/forge-gui/res/cardsfolder/h/haywire_mite.txt index 038c8cb5dd8..33bfdba04a1 100644 --- a/forge-gui/res/cardsfolder/h/haywire_mite.txt +++ b/forge-gui/res/cardsfolder/h/haywire_mite.txt @@ -5,7 +5,7 @@ PT:1/1 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigGainLife | TriggerDescription$ When CARDNAME dies, you gain 2 life. SVar:TrigGainLife:DB$ GainLife | LifeAmount$ 2 A:AB$ ChangeZone | Cost$ G Sac<1/CARDNAME> | ValidTgts$ Enchantment.nonCreature,Artifact.nonCreature | TgtPrompt$ Select target noncreature artifact or noncreature enchantment | Origin$ Battlefield | Destination$ Exile | SpellDescription$ Exile target noncreature artifact or noncreature enchantment. +SVar:SacMe:1 DeckHas:Ability$LifeGain|Sacrifice DeckHints:Color$Green -SVar:SacMe:1 Oracle:When Haywire Mite dies, you gain 2 life.\n{G}, Sacrifice Haywire Mite: Exile target noncreature artifact or noncreature enchantment. diff --git a/forge-gui/res/cardsfolder/h/hazels_brewmaster.txt b/forge-gui/res/cardsfolder/h/hazels_brewmaster.txt index b09ae705a38..b9c8192bdf6 100644 --- a/forge-gui/res/cardsfolder/h/hazels_brewmaster.txt +++ b/forge-gui/res/cardsfolder/h/hazels_brewmaster.txt @@ -8,7 +8,7 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigExile | Secondary$ True | SVar:TrigExile:DB$ ChangeZone | ValidTgts$ Card | Origin$ Graveyard | TargetMin$ 0 | TargetMax$ 1 | Destination$ Exile | TgtPrompt$ Select up to one target card from a graveyard | SubAbility$ DBToken SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_food_sac | TokenOwner$ You S:Mode$ Continuous | Affected$ Food.YouCtrl | EffectZone$ Battlefield | GainsAbilitiesOf$ Creature.ExiledWithSource | GainsAbilitiesOfZones$ Exile | Description$ Foods you control have all activated abilities of all creature cards exiled with CARDNAME. +SVar:HasAttackEffect:TRUE DeckHas:Ability$Token|Graveyard & Type$Food|Artifact DeckHints:Ability$Graveyard|Mill -SVar:HasAttackEffect:TRUE Oracle:Menace\nWhenever Hazel's Brewmaster enters or attacks, exile up to one target card from a graveyard and create a Food token.\nFoods you control have all activated abilities of all creature cards exiled with Hazel's Brewmaster. diff --git a/forge-gui/res/cardsfolder/h/helium_squirter.txt b/forge-gui/res/cardsfolder/h/helium_squirter.txt index 77782a90067..f1cadb59e6f 100644 --- a/forge-gui/res/cardsfolder/h/helium_squirter.txt +++ b/forge-gui/res/cardsfolder/h/helium_squirter.txt @@ -4,6 +4,6 @@ Types:Creature Beast Mutant PT:0/0 K:Graft:3 A:AB$ Pump | Cost$ 1 | ValidTgts$ Creature.counters_GE1_P1P1 | TgtPrompt$ Select target creature with a +1/+1 counter | KW$ Flying | SpellDescription$ Target creature with a +1/+1 counter on it gains flying until end of turn. -DeckNeeds:Ability$Counters DeckHas:Ability$Counters +DeckNeeds:Ability$Counters Oracle:Graft 3 (This creature enters with three +1/+1 counters on it. Whenever another creature enters, you may move a +1/+1 counter from this creature onto it.)\n{1}: Target creature with a +1/+1 counter on it gains flying until end of turn. diff --git a/forge-gui/res/cardsfolder/h/herald_of_ilharg.txt b/forge-gui/res/cardsfolder/h/herald_of_ilharg.txt index 0ab1058bbc9..3df0cbfa2c4 100644 --- a/forge-gui/res/cardsfolder/h/herald_of_ilharg.txt +++ b/forge-gui/res/cardsfolder/h/herald_of_ilharg.txt @@ -7,6 +7,6 @@ T:Mode$ SpellCast | ValidCard$ Creature | ValidActivatingPlayer$ You | Execute$ SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 2 | SubAbility$ DBDealDamage SVar:DBDealDamage:DB$ DealDamage | ConditionCheckSVar$ TriggeredStackInstance$CardManaCostLKI | ConditionSVarCompare$ GE5 | Defined$ Player.Opponent | NumDmg$ X SVar:X:Count$CardCounters.ALL -DeckNeeds:Type$Creature DeckHas:Ability$Counters +DeckNeeds:Type$Creature Oracle:Trample\nWhenever you cast a creature spell, put two +1/+1 counters on Herald of Ilharg. If that spell has mana value 5 or greater, Herald of Ilharg deals damage equal to the number of counters on it to each opponent. diff --git a/forge-gui/res/cardsfolder/h/hero_of_precinct_one.txt b/forge-gui/res/cardsfolder/h/hero_of_precinct_one.txt index a0aa20474bf..a4cef4e3061 100644 --- a/forge-gui/res/cardsfolder/h/hero_of_precinct_one.txt +++ b/forge-gui/res/cardsfolder/h/hero_of_precinct_one.txt @@ -4,7 +4,7 @@ Types:Creature Human Warrior PT:2/2 T:Mode$ SpellCast | ValidCard$ Card.MultiColor | ValidActivatingPlayer$ You | Execute$ TrigToken | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast a multicolored spell, create a 1/1 white Human creature token. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenOwner$ You | TokenScript$ w_1_1_human -AI:RemoveDeck:Random SVar:BuffedBy:Card.MultiColor +AI:RemoveDeck:Random DeckHas:Ability$Token Oracle:Whenever you cast a multicolored spell, create a 1/1 white Human creature token. diff --git a/forge-gui/res/cardsfolder/h/heroic_reinforcements.txt b/forge-gui/res/cardsfolder/h/heroic_reinforcements.txt index c2a98a39755..a9d587b8840 100644 --- a/forge-gui/res/cardsfolder/h/heroic_reinforcements.txt +++ b/forge-gui/res/cardsfolder/h/heroic_reinforcements.txt @@ -3,6 +3,6 @@ ManaCost:2 R W Types:Sorcery A:SP$ Token | TokenAmount$ 2 | TokenScript$ w_1_1_soldier | TokenOwner$ You | SubAbility$ TrigPump | SpellDescription$ Create two 1/1 white Soldier creature tokens. Until end of turn, creatures you control get +1/+1 and gain haste. SVar:TrigPump:DB$ PumpAll | ValidCards$ Creature.YouCtrl | KW$ Haste | NumAtt$ +1 | NumDef$ +1 -DeckHas:Ability$Token SVar:PlayMain1:TRUE +DeckHas:Ability$Token Oracle:Create two 1/1 white Soldier creature tokens. Until end of turn, creatures you control get +1/+1 and gain haste. (They can attack and {T} this turn.) diff --git a/forge-gui/res/cardsfolder/h/heronblade_elite.txt b/forge-gui/res/cardsfolder/h/heronblade_elite.txt index 9b373d66a83..aa5c3cdcbbf 100644 --- a/forge-gui/res/cardsfolder/h/heronblade_elite.txt +++ b/forge-gui/res/cardsfolder/h/heronblade_elite.txt @@ -7,6 +7,6 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Human. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 A:AB$ Mana | Cost$ T | Produced$ Any | Amount$ X | SpellDescription$ Add X mana of any one color, where X is CARDNAME's power. SVar:X:Count$CardPower -DeckNeeds:Type$Human DeckHas:Ability$Counters +DeckNeeds:Type$Human Oracle:Vigilance\nWhenever another Human you control enters, put a +1/+1 counter on Heronblade Elite.\n{T}: Add X mana of any one color, where X is Heronblade Elite's power. diff --git a/forge-gui/res/cardsfolder/h/hobblefiend.txt b/forge-gui/res/cardsfolder/h/hobblefiend.txt index 3c816a37c57..3503a06f593 100644 --- a/forge-gui/res/cardsfolder/h/hobblefiend.txt +++ b/forge-gui/res/cardsfolder/h/hobblefiend.txt @@ -4,6 +4,6 @@ Types:Creature Devil PT:2/1 K:Trample A:AB$ PutCounter | Cost$ 1 Sac<1/Creature.Other/another creature> | CounterType$ P1P1 | CounterNum$ 1 | SpellDescription$ Put a +1/+1 counter on CARDNAME. -DeckHas:Ability$Counters|Sacrifice SVar:AIPreference:SacCost$Creature.token,Creature.cmcLE2 +DeckHas:Ability$Counters|Sacrifice Oracle:Trample (This creature can deal excess combat damage to the player or planeswalker it's attacking.)\n{1}, Sacrifice another creature: Put a +1/+1 counter on Hobblefiend. diff --git a/forge-gui/res/cardsfolder/h/hollowhenge_overlord.txt b/forge-gui/res/cardsfolder/h/hollowhenge_overlord.txt index 48964e96c19..f2e7861e3d5 100644 --- a/forge-gui/res/cardsfolder/h/hollowhenge_overlord.txt +++ b/forge-gui/res/cardsfolder/h/hollowhenge_overlord.txt @@ -6,7 +6,7 @@ K:Flash T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ At the beginning of your upkeep, for each creature you control that's a Wolf or a Werewolf, create a 2/2 green Wolf creature token. SVar:TrigToken:DB$ Token | TokenAmount$ X | TokenScript$ g_2_2_wolf SVar:X:Count$Valid Creature.Wolf+YouCtrl,Creature.Werewolf+YouCtrl -DeckHints:Type$Wolf|Werewolf -DeckHas:Ability$Token SVar:BuffedBy:Wolf,Werewolf +DeckHas:Ability$Token +DeckHints:Type$Wolf|Werewolf Oracle:Flash\nAt the beginning of your upkeep, for each creature you control that's a Wolf or a Werewolf, create a 2/2 green Wolf creature token. diff --git a/forge-gui/res/cardsfolder/h/horror_of_horrors.txt b/forge-gui/res/cardsfolder/h/horror_of_horrors.txt index 4af2d89180c..1d89ab34e0a 100644 --- a/forge-gui/res/cardsfolder/h/horror_of_horrors.txt +++ b/forge-gui/res/cardsfolder/h/horror_of_horrors.txt @@ -2,7 +2,7 @@ Name:Horror of Horrors ManaCost:3 B B Types:Enchantment A:AB$ Regenerate | ValidTgts$ Creature.Black | TgtPrompt$ Select target black creature | Cost$ Sac<1/Swamp> | SpellDescription$ Regenerate target black creature. -AI:RemoveDeck:All SVar:NonStackingEffect:True +AI:RemoveDeck:All DeckHas:Ability$Sacrifice & Keyword$Regenerate Oracle:Sacrifice a Swamp: Regenerate target black creature. (The next time that creature would be destroyed this turn, it isn't. Instead tap it, remove all damage from it, and remove it from combat.) diff --git a/forge-gui/res/cardsfolder/h/hungry_for_more.txt b/forge-gui/res/cardsfolder/h/hungry_for_more.txt index 93df0c34197..b7c86c9578e 100644 --- a/forge-gui/res/cardsfolder/h/hungry_for_more.txt +++ b/forge-gui/res/cardsfolder/h/hungry_for_more.txt @@ -3,7 +3,7 @@ ManaCost:B R Types:Sorcery A:SP$ Token | TokenScript$ br_3_1_vampire_trample_lifelink_haste | AtEOT$ Sacrifice | SpellDescription$ Create a 3/1 black and red Vampire creature token with trample, lifelink, and haste. Sacrifice it at the beginning of the next end step. K:Flashback:1 B R +SVar:PlayMain1:TRUE DeckHas:Ability$Token|LifeGain|Sacrifice DeckHints:Type$Vampire -SVar:PlayMain1:TRUE Oracle:Create a 3/1 black and red Vampire creature token with trample, lifelink, and haste. Sacrifice it at the beginning of the next end step.\nFlashback {1}{B}{R} (You may cast this card from your graveyard for its flashback cost. Then exile it.) diff --git a/forge-gui/res/cardsfolder/h/hungry_hungry_heifer.txt b/forge-gui/res/cardsfolder/h/hungry_hungry_heifer.txt index 8b1545c06ec..7587979ce0b 100644 --- a/forge-gui/res/cardsfolder/h/hungry_hungry_heifer.txt +++ b/forge-gui/res/cardsfolder/h/hungry_hungry_heifer.txt @@ -4,7 +4,7 @@ Types:Creature Cow PT:3/3 T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigSac | TriggerDescription$ At the beginning of your upkeep, you may remove a counter from a permanent you control. If you don't, sacrifice CARDNAME. SVar:TrigSac:DB$ Sacrifice | UnlessPayer$ You | UnlessCost$ RemoveAnyCounter<1/Any/Permanent.YouCtrl/a permanent you control> -DeckNeeds:Ability$Counters SVar:NeedsToPlay:Permanent.YouCtrl+HasCounters SVar:AIRemoveCounterCostPriority:ANY +DeckNeeds:Ability$Counters Oracle:At the beginning of your upkeep, you may remove a counter from a permanent you control. If you don't, sacrifice Hungry Hungry Heifer. diff --git a/forge-gui/res/cardsfolder/h/hunted_witness.txt b/forge-gui/res/cardsfolder/h/hunted_witness.txt index 5153598216e..a941e65e8d3 100644 --- a/forge-gui/res/cardsfolder/h/hunted_witness.txt +++ b/forge-gui/res/cardsfolder/h/hunted_witness.txt @@ -4,6 +4,6 @@ Types:Creature Human PT:1/1 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME dies, create a 1/1 white Soldier creature token with lifelink. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ w_1_1_soldier_lifelink -DeckHas:Ability$Token|LifeGain SVar:SacMe:1 +DeckHas:Ability$Token|LifeGain Oracle:When Hunted Witness dies, create a 1/1 white Soldier creature token with lifelink. diff --git a/forge-gui/res/cardsfolder/h/hythonia_the_cruel.txt b/forge-gui/res/cardsfolder/h/hythonia_the_cruel.txt index ec7d17ab8c3..842e340d71b 100644 --- a/forge-gui/res/cardsfolder/h/hythonia_the_cruel.txt +++ b/forge-gui/res/cardsfolder/h/hythonia_the_cruel.txt @@ -5,6 +5,6 @@ PT:4/6 K:Deathtouch K:Monstrosity:3:6 B B T:Mode$ BecomeMonstrous | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigDestroyAll | TriggerDescription$ When CARDNAME becomes monstrous, destroy all non-Gorgon creatures. -DeckHas:Ability$Counters SVar:TrigDestroyAll:DB$ DestroyAll | ValidCards$ Creature.nonGorgon +DeckHas:Ability$Counters Oracle:Deathtouch\n{6}{B}{B}: Monstrosity 3. (If this creature isn't monstrous, put three +1/+1 counters on it and it becomes monstrous.)\nWhen Hythonia the Cruel becomes monstrous, destroy all non-Gorgon creatures. diff --git a/forge-gui/res/cardsfolder/i/ian_the_reckless.txt b/forge-gui/res/cardsfolder/i/ian_the_reckless.txt index ea66d330fc0..2c7408f149e 100644 --- a/forge-gui/res/cardsfolder/i/ian_the_reckless.txt +++ b/forge-gui/res/cardsfolder/i/ian_the_reckless.txt @@ -7,6 +7,6 @@ SVar:TrigDamage:DB$ DealDamage | ValidTgts$ Any | Defined$ You | NumDmg$ X | Dam SVar:DBDealDamageSelf:DB$ DealDamage | Defined$ You | NumDmg$ X | SubAbility$ DBDamageResolve SVar:DBDamageResolve:DB$ DamageResolve SVar:X:Count$CardPower -DeckHints:Type$Aura|Equipment & Ability$Counters SVar:HasAttackEffect:TRUE +DeckHints:Type$Aura|Equipment & Ability$Counters Oracle:Whenever Ian the Reckless attacks, if it's modified, you may have it deal damage equal to its power to you and any target. (Equipment, Auras you control, and counters are modifications.) diff --git a/forge-gui/res/cardsfolder/i/illusions_of_grandeur.txt b/forge-gui/res/cardsfolder/i/illusions_of_grandeur.txt index 7a3b1375c68..45a5694c4af 100644 --- a/forge-gui/res/cardsfolder/i/illusions_of_grandeur.txt +++ b/forge-gui/res/cardsfolder/i/illusions_of_grandeur.txt @@ -7,9 +7,9 @@ T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.S SVar:TrigGainLife:DB$ GainLife | Defined$ TriggeredCardController | LifeAmount$ 20 SVar:TrigLoseLife:DB$ LoseLife | Defined$ TriggeredCardController | LifeAmount$ 20 SVar:AICastPreference:MustHaveInHand$ Donate | MaxControlled$ 1 | NumManaSourcesNextTurn$ 5 | AlwaysCastIfLifeBelow$ 4 -AI:RemoveDeck:Random -DeckNeeds:Name$Donate|Harmless Offering|Zedruu the Greathearted SVar:DonateMe:5 SVar:PlayMain1:TRUE SVar:DoNotDiscardIfAble:TRUE +AI:RemoveDeck:Random +DeckNeeds:Name$Donate|Harmless Offering|Zedruu the Greathearted Oracle:Cumulative upkeep {2} (At the beginning of your upkeep, put an age counter on this permanent, then sacrifice it unless you pay its upkeep cost for each age counter on it.)\nWhen Illusions of Grandeur enters, you gain 20 life.\nWhen Illusions of Grandeur leaves the battlefield, you lose 20 life. diff --git a/forge-gui/res/cardsfolder/i/imperial_ceratops.txt b/forge-gui/res/cardsfolder/i/imperial_ceratops.txt index ea02987ba15..1743254aef5 100644 --- a/forge-gui/res/cardsfolder/i/imperial_ceratops.txt +++ b/forge-gui/res/cardsfolder/i/imperial_ceratops.txt @@ -4,6 +4,6 @@ Types:Creature Dinosaur PT:3/5 T:Mode$ DamageDoneOnce | Execute$ TrigGainLife | ValidTarget$ Card.Self | TriggerZones$ Battlefield | TriggerDescription$ Enrage — Whenever CARDNAME is dealt damage, you gain 2 life. SVar:TrigGainLife:DB$ GainLife | LifeAmount$ 2 -DeckHas:Ability$LifeGain SVar:HasCombatEffect:TRUE +DeckHas:Ability$LifeGain Oracle:Enrage — Whenever Imperial Ceratops is dealt damage, you gain 2 life. diff --git a/forge-gui/res/cardsfolder/i/impulsive_pilferer.txt b/forge-gui/res/cardsfolder/i/impulsive_pilferer.txt index edcb05c15c1..e6bae4aeae3 100644 --- a/forge-gui/res/cardsfolder/i/impulsive_pilferer.txt +++ b/forge-gui/res/cardsfolder/i/impulsive_pilferer.txt @@ -5,7 +5,7 @@ PT:1/1 K:Encore:3 R T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Battlefield | Destination$ Graveyard | Execute$ TrigToken | TriggerDescription$ When CARDNAME dies, create a Treasure token. (It's an artifact with "{T}, Sacrifice this artifact: Add one mana of any color.") SVar:TrigToken:DB$ Token | TokenScript$ c_a_treasure_sac | TokenAmount$ 1 +SVar:SacMe:1 DeckHas:Ability$Token DeckHints:Ability$Sacrifice -SVar:SacMe:1 Oracle:When Impulsive Pilferer dies, create a Treasure token. (It's an artifact with "{T}, Sacrifice this artifact: Add one mana of any color.")\nEncore {3}{R} ({3}{R}, Exile this card from your graveyard: For each opponent, create a token copy that attacks that opponent this turn if able. They gain haste. Sacrifice them at the beginning of the next end step. Activate only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/i/indulge_excess.txt b/forge-gui/res/cardsfolder/i/indulge_excess.txt index 2358538d66a..06cfd06cd46 100644 --- a/forge-gui/res/cardsfolder/i/indulge_excess.txt +++ b/forge-gui/res/cardsfolder/i/indulge_excess.txt @@ -17,6 +17,6 @@ Types:Sorcery K:Aftermath A:SP$ Token | TokenAmount$ X | TokenScript$ c_a_treasure_sac | SpellDescription$ Create a Treasure token for each creature you controlled that dealt combat damage to a player this turn. SVar:X:Count$NumCombatDamageThisTurn Creature.YouCtrl Player -DeckHas:Ability$Token|Sacrifice|Graveyard & Type$Artifact|Treasure SVar:NeedsToPlayVar:X GE3 +DeckHas:Ability$Token|Sacrifice|Graveyard & Type$Artifact|Treasure Oracle:Aftermath (Cast this spell only from your graveyard. Then exile it.)\nCreate a Treasure token for each creature you controlled that dealt combat damage to a player this turn. diff --git a/forge-gui/res/cardsfolder/i/industrial_advancement.txt b/forge-gui/res/cardsfolder/i/industrial_advancement.txt index 23afa8d550a..d8f0b3d1198 100644 --- a/forge-gui/res/cardsfolder/i/industrial_advancement.txt +++ b/forge-gui/res/cardsfolder/i/industrial_advancement.txt @@ -4,6 +4,6 @@ Types:Enchantment T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | Execute$ TrigDig | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of your end step, you may sacrifice a creature. If you do, look at the top X cards of your library, where X is that creature's mana value. You may put a creature card from among them onto the battlefield. Put the rest on the bottom of your library in a random order. SVar:TrigDig:AB$ Dig | Cost$ Sac<1/Creature> | ForceRevealToController$ True | DigNum$ X | Optional$ True | DestinationZone$ Battlefield | ChangeValid$ Creature | AILogic$ SacAndUpgrade | RestRandomOrder$ True SVar:X:Sacrificed$CardManaCost -DeckHas:Ability$Sacrifice SVar:AIPreference:SacCost$Creature.nonToken+cmcGE1 +DeckHas:Ability$Sacrifice Oracle:At the beginning of your end step, you may sacrifice a creature. If you do, look at the top X cards of your library, where X is that creature's mana value. You may put a creature card from among them onto the battlefield. Put the rest on the bottom of your library in a random order. diff --git a/forge-gui/res/cardsfolder/i/infested_fleshcutter.txt b/forge-gui/res/cardsfolder/i/infested_fleshcutter.txt index f609fa3d438..05abb332165 100644 --- a/forge-gui/res/cardsfolder/i/infested_fleshcutter.txt +++ b/forge-gui/res/cardsfolder/i/infested_fleshcutter.txt @@ -5,6 +5,6 @@ S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddPower$ 2 | AddSVar$ AE | T:Mode$ Attacks | ValidCard$ Card.EquippedBy | Execute$ TrigToken | TriggerDescription$ Whenever equipped creature attacks, create a 1/1 colorless Phyrexian Mite artifact creature token with toxic 1 and "This creature can't block." (Players dealt combat damage by it also get a poison counter.) SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_1_1_a_phyrexian_mite_toxic_noblock K:Equip:2 W -DeckHas:Type$Phyrexian|Mite & Ability$Token SVar:AE:SVar:HasAttackEffect:TRUE +DeckHas:Type$Phyrexian|Mite & Ability$Token Oracle:Equipped creature gets +2/+0.\nWhenever equipped creature attacks, create a 1/1 colorless Phyrexian Mite artifact creature token with toxic 1 and "This creature can't block." (Players dealt combat damage by it also get a poison counter.)\nEquip {2}{W} diff --git a/forge-gui/res/cardsfolder/i/infused_arrows.txt b/forge-gui/res/cardsfolder/i/infused_arrows.txt index 9de334e70e9..64a54df9721 100644 --- a/forge-gui/res/cardsfolder/i/infused_arrows.txt +++ b/forge-gui/res/cardsfolder/i/infused_arrows.txt @@ -4,8 +4,8 @@ Types:Artifact K:Sunburst A:AB$ Pump | Cost$ T SubCounter | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumAtt$ -X | NumDef$ -X | SpellDescription$ Target creature gets -X/-X until end of turn. SVar:X:Count$xPaid -AI:RemoveDeck:All SVar:NeedsToPlayVar:Z GE1 SVar:Z:Count$UniqueManaColorsProduced.ByUntappedSources +AI:RemoveDeck:All DeckHints:Ability$Proliferate Oracle:Sunburst (This enters with a charge counter on it for each color of mana spent to cast it.)\n{T}, Remove X charge counters from Infused Arrows: Target creature gets -X/-X until end of turn. diff --git a/forge-gui/res/cardsfolder/i/ingenuity_engine.txt b/forge-gui/res/cardsfolder/i/ingenuity_engine.txt index 843cf8b88a4..5c42a8dadbb 100644 --- a/forge-gui/res/cardsfolder/i/ingenuity_engine.txt +++ b/forge-gui/res/cardsfolder/i/ingenuity_engine.txt @@ -3,6 +3,6 @@ ManaCost:7 Types:Artifact K:Cascade A:AB$ ChangeZone | Cost$ 1 T Sac<1/Artifact/artifact> | TgtPrompt$ Choose target artifact you control | ValidTgts$ Artifact.YouCtrl | Origin$ Battlefield | Destination$ Hand | SpellDescription$ Return target artifact you control to its owner's hand. -DeckNeeds:Type$Artifact DeckHas:Ability$Sacrifice +DeckNeeds:Type$Artifact Oracle:Cascade (When you cast this spell, exile cards from the top of your library until you exile a nonland card that costs less. You may cast it without paying its mana cost. Put the exiled cards on the bottom of your library in a random order.)\n{1}, {T}, Sacrifice an artifact: Return target artifact you control to its owner's hand. diff --git a/forge-gui/res/cardsfolder/i/invade_the_city.txt b/forge-gui/res/cardsfolder/i/invade_the_city.txt index a6be6e64eae..9781a644f30 100644 --- a/forge-gui/res/cardsfolder/i/invade_the_city.txt +++ b/forge-gui/res/cardsfolder/i/invade_the_city.txt @@ -2,9 +2,9 @@ Name:Invade the City ManaCost:1 U R Types:Sorcery A:SP$ Amass | Type$ Zombie | Num$ X | SpellDescription$ Amass Zombies X, where X is the number of instant and sorcery cards in your graveyard. (Put X +1/+1 counters on an Army you control. If you don't control one, create a 0/0 black Zombie Army creature token first.) -DeckNeeds:Type$Instant|Sorcery -DeckHints:Ability$Amass & Type$Zombie -DeckHas:Ability$Amass|Counters|Token SVar:X:Count$ValidGraveyard Instant.YouOwn,Sorcery.YouOwn SVar:NeedsToPlayVar:X GE1 +DeckHas:Ability$Amass|Counters|Token +DeckHints:Ability$Amass & Type$Zombie +DeckNeeds:Type$Instant|Sorcery Oracle:Amass Zombies X, where X is the number of instant and sorcery cards in your graveyard. (Put X +1/+1 counters on an Army you control. If you don't control one, create a 0/0 black Zombie Army creature token first.) diff --git a/forge-gui/res/cardsfolder/i/invasion_of_arcavios_invocation_of_the_founders.txt b/forge-gui/res/cardsfolder/i/invasion_of_arcavios_invocation_of_the_founders.txt index 8d525d29e1a..73549a58c64 100644 --- a/forge-gui/res/cardsfolder/i/invasion_of_arcavios_invocation_of_the_founders.txt +++ b/forge-gui/res/cardsfolder/i/invasion_of_arcavios_invocation_of_the_founders.txt @@ -4,8 +4,8 @@ Types:Battle Siege Defense:7 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigSearch | TriggerDescription$ When CARDNAME enters, search your library, graveyard, and/or outside the game for an instant or sorcery card you own, reveal it, and put it into your hand. If you search your library this way, shuffle. SVar:TrigSearch:DB$ ChangeZone | Hidden$ True | Origin$ Library | Destination$ Hand | ShuffleNonMandatory$ True | OriginAlternative$ Graveyard,Sideboard | AlternativeMessage$ Would you like to search your library with this ability? If you do, your library will be shuffled | ChangeType$ Sorcery.YouOwn,Instant.YouOwn -DeckNeeds:Type$Instant|Sorcery DeckHas:Ability$Graveyard +DeckNeeds:Type$Instant|Sorcery AlternateMode:DoubleFaced Oracle:(As a Siege enters, choose an opponent to protect it. You and others can attack it. When it's defeated, exile it, then cast it transformed.)\nWhen Invasion of Arcavios enters, search your library, graveyard, and/or outside the game for an instant or sorcery card you own, reveal it, and put it into your hand. If you search your library this way, shuffle. diff --git a/forge-gui/res/cardsfolder/i/invoke_calamity.txt b/forge-gui/res/cardsfolder/i/invoke_calamity.txt index bf66334ad54..5ef128d9301 100644 --- a/forge-gui/res/cardsfolder/i/invoke_calamity.txt +++ b/forge-gui/res/cardsfolder/i/invoke_calamity.txt @@ -3,6 +3,6 @@ ManaCost:1 R R R R Types:Instant A:SP$ Play | Valid$ Card.YouOwn | ValidSA$ Instant,Sorcery | WithTotalCMC$ 6 | ValidZone$ Graveyard,Hand | Amount$ 2 | WithoutManaCost$ True | Optional$ True | ReplaceGraveyard$ Exile | SubAbility$ DBExile | StackDescription$ SpellDescription | SpellDescription$ You may cast up to two instant and/or sorcery spells with total mana value 6 or less from your graveyard and/or hand without paying their mana costs. If those spells would be put into your graveyard, exile them instead. SVar:DBExile:DB$ ChangeZone | Origin$ Stack | Destination$ Exile | SpellDescription$ Exile CARDNAME. -DeckNeeds:Type$Instant|Sorcery DeckHas:Ability$Graveyard +DeckNeeds:Type$Instant|Sorcery Oracle:You may cast up to two instant and/or sorcery spells with total mana value 6 or less from your graveyard and/or hand without paying their mana costs. If those spells would be put into your graveyard, exile them instead. Exile Invoke Calamity. diff --git a/forge-gui/res/cardsfolder/i/ior_ruin_expedition.txt b/forge-gui/res/cardsfolder/i/ior_ruin_expedition.txt index 65d42dfadf7..6ef83291250 100644 --- a/forge-gui/res/cardsfolder/i/ior_ruin_expedition.txt +++ b/forge-gui/res/cardsfolder/i/ior_ruin_expedition.txt @@ -4,6 +4,6 @@ Types:Enchantment T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.YouCtrl | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigPutCounter | TriggerDescription$ Landfall — Whenever a land you control enters, you may put a quest counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ QUEST | CounterNum$ 1 A:AB$ Draw | Cost$ SubCounter<3/QUEST> Sac<1/CARDNAME> | NumCards$ 2 | SpellDescription$ Draw two cards. -DeckHas:Ability$Counters SVar:MaxQuestEffect:3 +DeckHas:Ability$Counters Oracle:Landfall — Whenever a land you control enters, you may put a quest counter on Ior Ruin Expedition.\nRemove three quest counters from Ior Ruin Expedition and sacrifice it: Draw two cards. diff --git a/forge-gui/res/cardsfolder/i/iridescent_hornbeetle.txt b/forge-gui/res/cardsfolder/i/iridescent_hornbeetle.txt index 060605b93f8..b641a3abf3e 100644 --- a/forge-gui/res/cardsfolder/i/iridescent_hornbeetle.txt +++ b/forge-gui/res/cardsfolder/i/iridescent_hornbeetle.txt @@ -5,6 +5,6 @@ PT:3/4 T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ At the beginning of your end step, create a 1/1 green Insect creature token for each +1/+1 counter you've put on creatures under your control this turn. SVar:TrigToken:DB$ Token | TokenAmount$ X | TokenOwner$ You | TokenScript$ g_1_1_insect SVar:X:Count$CountersAddedThisTurn P1P1 You Creature.YouCtrl -DeckNeeds:Ability$Counters DeckHas:Ability$Counters +DeckNeeds:Ability$Counters Oracle:At the beginning of your end step, create a 1/1 green Insect creature token for each +1/+1 counter you've put on creatures under your control this turn. diff --git a/forge-gui/res/cardsfolder/j/jinnie_fay_jetmirs_second.txt b/forge-gui/res/cardsfolder/j/jinnie_fay_jetmirs_second.txt index 26082cdfd8a..0dfec835e14 100644 --- a/forge-gui/res/cardsfolder/j/jinnie_fay_jetmirs_second.txt +++ b/forge-gui/res/cardsfolder/j/jinnie_fay_jetmirs_second.txt @@ -7,6 +7,6 @@ SVar:GenericChoice:DB$ GenericChoice | Choices$ Cat,Dog SVar:Cat:DB$ ReplaceToken | Type$ ReplaceToken | ValidCard$ Card.YouCtrl | TokenScript$ g_2_2_cat_haste | SpellDescription$ Create that many 2/2 green Cat creature tokens with haste. SVar:Dog:DB$ ReplaceToken | Type$ ReplaceToken | ValidCard$ Card.YouCtrl | TokenScript$ g_3_1_dog_vigilance | SpellDescription$ Create that many 3/1 green Dog creature tokens with vigilance. AI:RemoveDeck:Random -DeckNeeds:Ability$Token DeckHas:Type$Cat|Dog +DeckNeeds:Ability$Token Oracle:If you would create one or more tokens, you may instead create that many 2/2 green Cat creature tokens with haste or that many 3/1 green Dog creature tokens with vigilance. diff --git a/forge-gui/res/cardsfolder/j/jolrael_voice_of_zhalfir.txt b/forge-gui/res/cardsfolder/j/jolrael_voice_of_zhalfir.txt index 769667d328f..633b30bdcb0 100644 --- a/forge-gui/res/cardsfolder/j/jolrael_voice_of_zhalfir.txt +++ b/forge-gui/res/cardsfolder/j/jolrael_voice_of_zhalfir.txt @@ -7,6 +7,6 @@ SVar:TrigAnimate:DB$ Animate | ValidTgts$ Land.YouCtrl | TargetMin$ 0 | TargetMa T:Mode$ DamageDone | ValidSource$ Creature.YouCtrl+Land | ValidTarget$ Player | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ TrigDraw | TriggerDescription$ Whenever a land creature you control deals combat damage to a player, draw a card. SVar:TrigDraw:DB$ Draw | NumCards$ 1 SVar:X:Count$InYourHand -DeckHas:Type$Bird SVar:BuffedBy:Land +DeckHas:Type$Bird Oracle:At the beginning of combat on your turn, up to one target land you control becomes an X/X green and blue Bird creature with flying and haste until end of turn, where X is the number of cards in your hand. It's still a land.\nWhenever a land creature you control deals combat damage to a player, draw a card. diff --git a/forge-gui/res/cardsfolder/j/jor_kadeen_first_goldwarden.txt b/forge-gui/res/cardsfolder/j/jor_kadeen_first_goldwarden.txt index c5a0525ebaa..e58ab926af9 100644 --- a/forge-gui/res/cardsfolder/j/jor_kadeen_first_goldwarden.txt +++ b/forge-gui/res/cardsfolder/j/jor_kadeen_first_goldwarden.txt @@ -7,6 +7,6 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ SVar:TrigPump:DB$ Pump | Defined$ Self | NumAtt$ X | NumDef$ X | SubAbility$ DBDraw SVar:DBDraw:DB$ Draw | ConditionDefined$ Self | ConditionPresent$ Card.powerGE4 SVar:X:Count$Valid Creature.YouCtrl+equipped -DeckNeeds:Type$Equipment SVar:HasAttackEffect:TRUE +DeckNeeds:Type$Equipment Oracle:Trample\nWhenever Jor Kadeen, First Goldwarden attacks, it gets +X/+X until end of turn, where X is the number of equipped creatures you control. Then if Jor Kadeen's power is 4 or greater, draw a card. diff --git a/forge-gui/res/cardsfolder/j/joraga_warcaller.txt b/forge-gui/res/cardsfolder/j/joraga_warcaller.txt index 258436c641c..7284024895f 100644 --- a/forge-gui/res/cardsfolder/j/joraga_warcaller.txt +++ b/forge-gui/res/cardsfolder/j/joraga_warcaller.txt @@ -8,6 +8,6 @@ S:Mode$ Continuous | Affected$ Creature.Elf+Other+YouCtrl | AddPower$ X | AddTou SVar:X:Count$CardCounters.P1P1 SVar:XKicked:Count$TimesKicked AI:RemoveDeck:Random -DeckNeeds:Type$Elf DeckHas:Ability$Counters +DeckNeeds:Type$Elf Oracle:Multikicker {1}{G} (You may pay an additional {1}{G} any number of times as you cast this spell.)\nJoraga Warcaller enters with a +1/+1 counter on it for each time it was kicked.\nOther Elf creatures you control get +1/+1 for each +1/+1 counter on Joraga Warcaller. diff --git a/forge-gui/res/cardsfolder/j/jorn_god_of_winter_kaldring_the_rimestaff.txt b/forge-gui/res/cardsfolder/j/jorn_god_of_winter_kaldring_the_rimestaff.txt index 87002394926..6d5310fb8e7 100644 --- a/forge-gui/res/cardsfolder/j/jorn_god_of_winter_kaldring_the_rimestaff.txt +++ b/forge-gui/res/cardsfolder/j/jorn_god_of_winter_kaldring_the_rimestaff.txt @@ -5,8 +5,8 @@ PT:3/3 T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigUntapAllSnow | TriggerDescription$ Whenever NICKNAME attacks, untap each snow permanent you control. SVar:TrigUntapAllSnow:DB$ UntapAll | ValidCards$ Permanent.Snow+YouCtrl SVar:PlayMain1:TRUE -DeckNeeds:Type$Snow DeckHas:Ability$Graveyard +DeckNeeds:Type$Snow AlternateMode:Modal Oracle:Whenever Jorn attacks, untap each snow permanent you control. diff --git a/forge-gui/res/cardsfolder/j/judith_carnage_connoisseur.txt b/forge-gui/res/cardsfolder/j/judith_carnage_connoisseur.txt index af8a8149836..700ad7d308f 100644 --- a/forge-gui/res/cardsfolder/j/judith_carnage_connoisseur.txt +++ b/forge-gui/res/cardsfolder/j/judith_carnage_connoisseur.txt @@ -6,6 +6,6 @@ T:Mode$ SpellCast | TriggerZones$ Battlefield | ValidCard$ Instant,Sorcery | Val SVar:TrigCharm:DB$ Charm | Choices$ DBPump,DBToken SVar:DBPump:DB$ Pump | Defined$ TriggeredCard | KW$ Deathtouch & Lifelink | PumpZone$ Stack | SpellDescription$ That spell gains deathtouch and lifelink. SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ r_2_2_imp_burn_opp | TokenOwner$ You | SpellDescription$ Create a 2/2 red Imp creature token with "When this creature dies, it deals 2 damage to each opponent." -DeckNeeds:Type$Instant|Sorcery SVar:BuffedBy:Spell.Instant,Spell.Sorcery +DeckNeeds:Type$Instant|Sorcery Oracle:Whenever you cast an instant or sorcery spell, choose one —\n• That spell gains deathtouch and lifelink.\n• Create a 2/2 red Imp creature token with "When this creature dies, it deals 2 damage to each opponent." diff --git a/forge-gui/res/cardsfolder/j/juri_master_of_the_revue.txt b/forge-gui/res/cardsfolder/j/juri_master_of_the_revue.txt index 5b961a4ec37..fbf6b6df9df 100644 --- a/forge-gui/res/cardsfolder/j/juri_master_of_the_revue.txt +++ b/forge-gui/res/cardsfolder/j/juri_master_of_the_revue.txt @@ -7,6 +7,6 @@ SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | Counter T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Battlefield | Destination$ Graveyard | Execute$ TrigDamage | TriggerDescription$ When CARDNAME dies, it deals damage equal to its power to any target. SVar:TrigDamage:DB$ DealDamage | ValidTgts$ Any | NumDmg$ X SVar:X:TriggeredCard$CardPower -DeckNeeds:Ability$Sacrifice DeckHas:Ability$Counters +DeckNeeds:Ability$Sacrifice Oracle:Whenever you sacrifice a permanent, put a +1/+1 counter on Juri, Master of the Revue.\nWhen Juri dies, it deals damage equal to its power to any target. diff --git a/forge-gui/res/cardsfolder/k/kalamax_the_stormsire.txt b/forge-gui/res/cardsfolder/k/kalamax_the_stormsire.txt index 1ffd5f94a78..f11ac72f426 100644 --- a/forge-gui/res/cardsfolder/k/kalamax_the_stormsire.txt +++ b/forge-gui/res/cardsfolder/k/kalamax_the_stormsire.txt @@ -6,7 +6,7 @@ T:Mode$ SpellCast | ValidCard$ Instant | ValidActivatingPlayer$ You | ActivatorT SVar:TrigCopy:DB$ CopySpellAbility | Defined$ TriggeredSpellAbility | AILogic$ Always | MayChooseTarget$ True SVar:BuffedBy:Instant T:Mode$ SpellCopy | ValidCard$ Instant | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever you copy an instant spell, put a +1/+1 counter on NICKNAME. +SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 DeckHas:Ability$Counters DeckHints:Type$Instant -SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 Oracle:Whenever you cast your first instant spell each turn, if Kalamax, the Stormsire is tapped, copy that spell. You may choose new targets for the copy.\nWhenever you copy an instant spell, put a +1/+1 counter on Kalamax. diff --git a/forge-gui/res/cardsfolder/k/kalonian_hydra.txt b/forge-gui/res/cardsfolder/k/kalonian_hydra.txt index 835af6bb4db..d219eba80ca 100644 --- a/forge-gui/res/cardsfolder/k/kalonian_hydra.txt +++ b/forge-gui/res/cardsfolder/k/kalonian_hydra.txt @@ -6,7 +6,7 @@ K:Trample K:etbCounter:P1P1:4 T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigDoubleCounters | TriggerDescription$ Whenever CARDNAME attacks, double the number of +1/+1 counters on each creature you control. SVar:TrigDoubleCounters:DB$ MultiplyCounter | Defined$ Valid Creature.YouCtrl | CounterType$ P1P1 -DeckHints:Ability$Counters -DeckHas:Ability$Counters SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters +DeckHints:Ability$Counters Oracle:Trample\nKalonian Hydra enters with four +1/+1 counters on it.\nWhenever Kalonian Hydra attacks, double the number of +1/+1 counters on each creature you control. diff --git a/forge-gui/res/cardsfolder/k/kami_of_the_painted_road.txt b/forge-gui/res/cardsfolder/k/kami_of_the_painted_road.txt index eb41975be79..4964ceeaeca 100644 --- a/forge-gui/res/cardsfolder/k/kami_of_the_painted_road.txt +++ b/forge-gui/res/cardsfolder/k/kami_of_the_painted_road.txt @@ -4,7 +4,7 @@ Types:Creature Spirit PT:3/3 T:Mode$ SpellCast | ValidCard$ Spirit,Arcane | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigProtect | TriggerDescription$ Whenever you cast a Spirit or Arcane spell, CARDNAME gains protection from the color of your choice until end of turn. SVar:TrigProtect:DB$ Protection | Defined$ Self | Gains$ Choice | Choices$ AnyColor -AI:RemoveDeck:Random SVar:BuffedBy:Arcane,Spirit +AI:RemoveDeck:Random DeckHints:Type$Spirit|Arcane Oracle:Whenever you cast a Spirit or Arcane spell, Kami of the Painted Road gains protection from the color of your choice until end of turn. diff --git a/forge-gui/res/cardsfolder/k/kangee_sky_warden.txt b/forge-gui/res/cardsfolder/k/kangee_sky_warden.txt index f719e5b22c4..149725fd867 100644 --- a/forge-gui/res/cardsfolder/k/kangee_sky_warden.txt +++ b/forge-gui/res/cardsfolder/k/kangee_sky_warden.txt @@ -8,7 +8,7 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPumpAtt | TriggerDescripti SVar:TrigPumpAtt:DB$ PumpAll | ValidCards$ Creature.attacking+withFlying | NumAtt$ 2 T:Mode$ Blocks | ValidCard$ Card.Self | Execute$ TrigPumpBlo | TriggerDescription$ Whenever NICKNAME blocks, blocking creatures with flying get +0/+2 until end of turn. SVar:TrigPumpBlo:DB$ PumpAll | ValidCards$ Creature.blocking+withFlying | NumDef$ 2 -DeckNeeds:Keyword$Flying SVar:HasAttackEffect:TRUE SVar:HasBlockEffect:TRUE +DeckNeeds:Keyword$Flying Oracle:Flying, vigilance\nWhenever Kangee, Sky Warden attacks, attacking creatures with flying get +2/+0 until end of turn.\nWhenever Kangee blocks, blocking creatures with flying get +0/+2 until end of turn. diff --git a/forge-gui/res/cardsfolder/k/kangees_lieutenant.txt b/forge-gui/res/cardsfolder/k/kangees_lieutenant.txt index a8171bf1ac7..fd95041d7fc 100644 --- a/forge-gui/res/cardsfolder/k/kangees_lieutenant.txt +++ b/forge-gui/res/cardsfolder/k/kangees_lieutenant.txt @@ -6,7 +6,7 @@ K:Flying T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ Whenever CARDNAME attacks, attacking creatures with flying get +1/+1 until end of turn. SVar:TrigPump:DB$ PumpAll | ValidCards$ Creature.attacking+withFlying | NumAtt$ 1 | NumDef$ 1 K:Encore:5 W +SVar:HasAttackEffect:TRUE DeckHas:Ability$Token DeckHints:Keyword$Flying -SVar:HasAttackEffect:TRUE Oracle:Flying\nWhenever Kangee's Lieutenant attacks, attacking creatures with flying get +1/+1 until end of turn.\nEncore {5}{W} ({5}{W}, Exile this card from your graveyard: For each opponent, create a token copy that attacks that opponent this turn if able. They gain haste. Sacrifice them at the beginning of the next end step. Activate only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/k/kappa_cannoneer.txt b/forge-gui/res/cardsfolder/k/kappa_cannoneer.txt index 46dfa9740e8..19425f87d60 100644 --- a/forge-gui/res/cardsfolder/k/kappa_cannoneer.txt +++ b/forge-gui/res/cardsfolder/k/kappa_cannoneer.txt @@ -8,7 +8,7 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Artifa SVar:TrigPutCounter:DB$ PutCounter | CounterType$ P1P1 | SubAbility$ DBUnblockable SVar:DBUnblockable:DB$ Effect | RememberObjects$ Self | ExileOnMoved$ Battlefield | StaticAbilities$ Unblockable SVar:Unblockable:Mode$ CantBlockBy | ValidAttacker$ Card.IsRemembered | Description$ EFFECTSOURCE can't be blocked this turn. -DeckNeeds:Type$Artifact -DeckHas:Ability$Counters SVar:BuffedBy:Artifact +DeckHas:Ability$Counters +DeckNeeds:Type$Artifact Oracle:Improvise (Your artifacts can help cast this spell. Each artifact you tap after you're done activating mana abilities pays for {1}.)\nWard {4}\nWhenever an artifact you control enters, put a +1/+1 counter on Kappa Cannoneer and it can't be blocked this turn. diff --git a/forge-gui/res/cardsfolder/k/kargan_intimidator.txt b/forge-gui/res/cardsfolder/k/kargan_intimidator.txt index a164ce41778..9b2edc7b2fa 100644 --- a/forge-gui/res/cardsfolder/k/kargan_intimidator.txt +++ b/forge-gui/res/cardsfolder/k/kargan_intimidator.txt @@ -7,6 +7,6 @@ A:AB$ Charm | Cost$ 1 | Choices$ Pump,Coward,Trample | ChoiceRestriction$ ThisTu SVar:Pump:DB$ Pump | Defined$ Self | NumAtt$ 1 | NumDef$ 1 | SpellDescription$ CARDNAME gets +1/+1 until end of turn. SVar:Coward:DB$ Animate | ValidTgts$ Creature | TgtPrompt$ Select target creature | Types$ Coward | RemoveCreatureTypes$ True | SpellDescription$ Target creature becomes a Coward until end of turn. SVar:Trample:DB$ Pump | ValidTgts$ Warrior | TgtPrompt$ Select target Warrior | KW$ Trample | SpellDescription$ Target Warrior gains trample until end of turn. -DeckHints:Type$Warrior SVar:PlayMain1:TRUE +DeckHints:Type$Warrior Oracle:Cowards can't block Warriors.\n{1}: Choose one that hasn't been chosen this turn —\n• Kargan Intimidator gets +1/+1 until end of turn.\n• Target creature becomes a Coward until end of turn.\n• Target Warrior gains trample until end of turn. diff --git a/forge-gui/res/cardsfolder/k/karn_living_legacy.txt b/forge-gui/res/cardsfolder/k/karn_living_legacy.txt index ceeb70e776b..ddcdac07c40 100644 --- a/forge-gui/res/cardsfolder/k/karn_living_legacy.txt +++ b/forge-gui/res/cardsfolder/k/karn_living_legacy.txt @@ -8,7 +8,7 @@ SVar:DBDig:DB$ Dig | DigNum$ Y | ChangeNum$ 1 | RestRandomOrder$ True | UnlessCo A:AB$ Effect | Cost$ SubCounter<7/LOYALTY> | Planeswalker$ True | Ultimate$ True | AILogic$ Always | Stackable$ False | Name$ Emblem — Karn, Living Legacy | Image$ emblem_karn_living_legacy | Duration$ Permanent | Abilities$ KarnPing | SpellDescription$ You get an emblem with "Tap an untapped artifact you control: This emblem deals 1 damage to any target." SVar:KarnPing:AB$ DealDamage | Cost$ tapXType<1/Artifact> | ActivationZone$ Command | ValidTgts$ Any | NumDmg$ 1 SVar:PlayMain1:TRUE +SVar:Y:Count$ChosenNumber DeckHas:Ability$Token & Type$Artifact DeckNeeds:Type$Artifact -SVar:Y:Count$ChosenNumber Oracle:[+1]: Create a tapped Powerstone token. (It's an artifact with "{T}: Add {C}. This mana can't be spent to cast a nonartifact spell.")\n[-1]: Pay any amount of mana. Look at that many cards from the top of your library, then put one of those cards into your hand and the rest on the bottom of your library in a random order.\n[-7]: You get an emblem with "Tap an untapped artifact you control: This emblem deals 1 damage to any target." diff --git a/forge-gui/res/cardsfolder/k/karok_wrangler.txt b/forge-gui/res/cardsfolder/k/karok_wrangler.txt index 25e482003d4..83e5a6be120 100644 --- a/forge-gui/res/cardsfolder/k/karok_wrangler.txt +++ b/forge-gui/res/cardsfolder/k/karok_wrangler.txt @@ -4,6 +4,6 @@ Types:Creature Elf Druid PT:3/3 T:Mode$ SpellCastOrCopy | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Magecraft — Whenever you cast or copy an instant or sorcery spell, put a +1/+1 counter on target creature you control. SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterType$ P1P1 | CounterNum$ 1 -DeckNeeds:Type$Instant|Sorcery DeckHas:Ability$Counters +DeckNeeds:Type$Instant|Sorcery Oracle:Magecraft — Whenever you cast or copy an instant or sorcery spell, put a +1/+1 counter on target creature you control. diff --git a/forge-gui/res/cardsfolder/k/kemba_kha_enduring.txt b/forge-gui/res/cardsfolder/k/kemba_kha_enduring.txt index 65510e3a60f..16b4e20c9f4 100644 --- a/forge-gui/res/cardsfolder/k/kemba_kha_enduring.txt +++ b/forge-gui/res/cardsfolder/k/kemba_kha_enduring.txt @@ -6,6 +6,6 @@ T:Mode$ ChangesZone | ValidCard$ Card.Self,Creature.Other+Cat+YouCtrl | Origin$ SVar:TrigAttach:DB$ Attach | Defined$ TriggeredCard | Object$ Targeted | ValidTgts$ Equipment.YouCtrl | TgtPrompt$ Select up to one target Equipment you control | TargetMin$ 0 | TargetMax$ 1 S:Mode$ Continuous | Affected$ Creature.YouCtrl+equipped | AddPower$ 1 | AddToughness$ 1 | Description$ Equipped creatures you control get +1/+1. A:AB$ Token | Cost$ 3 W W | TokenScript$ w_2_2_cat | TokenAmount$ 1 | TokenOwner$ You | SpellDescription$ Create a 2/2 white Cat creature token. -DeckNeeds:Type$Equipment DeckHas:Ability$Token +DeckNeeds:Type$Equipment Oracle:Whenever Kemba, Kha Enduring or another Cat you control enters, attach up to one target Equipment you control to that creature.\nEquipped creatures you control get +1/+1.\n{3}{W}{W}: Create a 2/2 white Cat creature token. diff --git a/forge-gui/res/cardsfolder/k/khalni_heart_expedition.txt b/forge-gui/res/cardsfolder/k/khalni_heart_expedition.txt index 6f2bb1067a8..93fd55fd29c 100644 --- a/forge-gui/res/cardsfolder/k/khalni_heart_expedition.txt +++ b/forge-gui/res/cardsfolder/k/khalni_heart_expedition.txt @@ -4,6 +4,6 @@ Types:Enchantment T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.YouCtrl | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigPutCounter | TriggerDescription$ Landfall — Whenever a land you control enters, you may put a quest counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ QUEST | CounterNum$ 1 A:AB$ ChangeZone | Cost$ SubCounter<3/QUEST> Sac<1/CARDNAME> | Origin$ Library | Destination$ Battlefield | ChangeType$ Land.Basic | ChangeNum$ 2 | Tapped$ True | SpellDescription$ Search your library for up to two basic land cards, put them onto the battlefield tapped, then shuffle. -DeckHas:Ability$Counters SVar:MaxQuestEffect:3 +DeckHas:Ability$Counters Oracle:Landfall — Whenever a land you control enters, you may put a quest counter on Khalni Heart Expedition.\nRemove three quest counters from Khalni Heart Expedition and sacrifice it: Search your library for up to two basic land cards, put them onto the battlefield tapped, then shuffle. diff --git a/forge-gui/res/cardsfolder/k/king_darien_xlviii.txt b/forge-gui/res/cardsfolder/k/king_darien_xlviii.txt index 130c0a3d13a..5f6dbb000ab 100644 --- a/forge-gui/res/cardsfolder/k/king_darien_xlviii.txt +++ b/forge-gui/res/cardsfolder/k/king_darien_xlviii.txt @@ -6,7 +6,7 @@ S:Mode$ Continuous | Affected$ Creature.Other+YouCtrl | AddPower$ 1 | AddToughne A:AB$ PutCounter | Cost$ 3 G W | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBToken | SpellDescription$ Put a +1/+1 counter on NICKNAME and create a 1/1 white Soldier creature token. SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ w_1_1_soldier | TokenOwner$ You | StackDescription$ None A:AB$ PumpAll | Cost$ Sac<1/CARDNAME> | ValidCards$ Creature.token+YouCtrl | KW$ Hexproof & Indestructible | SpellDescription$ Creature tokens you control gain hexproof and indestructible until end of turn. +SVar:PlayMain1:TRUE DeckHas:Ability$Counters|Token|Sacrifice & Type$Soldier DeckHints:Ability$Token -SVar:PlayMain1:TRUE Oracle:Other creatures you control get +1/+1.\n{3}{G}{W}: Put a +1/+1 counter on King Darien and create a 1/1 white Soldier creature token.\nSacrifice King Darien: Creature tokens you control gain hexproof and indestructible until end of turn. diff --git a/forge-gui/res/cardsfolder/k/knights_charge.txt b/forge-gui/res/cardsfolder/k/knights_charge.txt index d02512c705b..a7267e11a2f 100644 --- a/forge-gui/res/cardsfolder/k/knights_charge.txt +++ b/forge-gui/res/cardsfolder/k/knights_charge.txt @@ -5,6 +5,6 @@ T:Mode$ Attacks | ValidCard$ Card.Knight+YouCtrl | TriggerZones$ Battlefield | E SVar:TrigDrain:DB$ LoseLife | Defined$ Player.Opponent | LifeAmount$ 1 | SubAbility$ DBGainLife SVar:DBGainLife:DB$ GainLife | LifeAmount$ 1 A:AB$ ChangeZoneAll | Cost$ 6 W B Sac<1/CARDNAME> | ChangeType$ Card.Knight+Creature+YouCtrl | Origin$ Graveyard | Destination$ Battlefield | SpellDescription$ Return all Knight creature cards from your graveyard to the battlefield. -DeckHints:Type$Knight SVar:BuffedBy:Knight +DeckHints:Type$Knight Oracle:Whenever a Knight you control attacks, each opponent loses 1 life and you gain 1 life.\n{6}{W}{B}, Sacrifice Knights' Charge: Return all Knight creature cards from your graveyard to the battlefield. diff --git a/forge-gui/res/cardsfolder/k/kodama_of_the_center_tree.txt b/forge-gui/res/cardsfolder/k/kodama_of_the_center_tree.txt index 0dc4fc35848..f56efc400f8 100644 --- a/forge-gui/res/cardsfolder/k/kodama_of_the_center_tree.txt +++ b/forge-gui/res/cardsfolder/k/kodama_of_the_center_tree.txt @@ -5,8 +5,8 @@ PT:*/* S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | SetPower$ X | SetToughness$ X | Description$ CARDNAME's power and toughness are each equal to the number of Spirits you control. S:Mode$ Continuous | Affected$ Card.Self | AddKeyword$ Soulshift:N | CalcKeywordN$ X | Description$ CARDNAME has soulshift X, where X is the number of Spirits you control. SVar:X:Count$Valid Spirit.YouCtrl -AI:RemoveDeck:Random SVar:BuffedBy:Spirit SVar:NoZeroToughnessAI:True +AI:RemoveDeck:Random DeckHints:Type$Spirit Oracle:Kodama of the Center Tree's power and toughness are each equal to the number of Spirits you control.\nKodama of the Center Tree has soulshift X, where X is the number of Spirits you control. (When this creature dies, you may return target Spirit card with mana value X or less from your graveyard to your hand.) diff --git a/forge-gui/res/cardsfolder/k/kolaghan_warmonger.txt b/forge-gui/res/cardsfolder/k/kolaghan_warmonger.txt index 84ceb415eeb..b1c0ba0819b 100644 --- a/forge-gui/res/cardsfolder/k/kolaghan_warmonger.txt +++ b/forge-gui/res/cardsfolder/k/kolaghan_warmonger.txt @@ -5,6 +5,6 @@ PT:3/2 K:Haste T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigDig | TriggerDescription$ Whenever CARDNAME attacks, look at the top six cards of your library. You may reveal a Dragon card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. SVar:TrigDig:DB$ Dig | DigNum$ 6 | ChangeNum$ 1 | Optional$ True | ChangeValid$ Card.Dragon | RestRandomOrder$ True | ForceRevealToController$ True -DeckNeeds:Type$Dragon SVar:HasAttackEffect:TRUE +DeckNeeds:Type$Dragon Oracle:Whenever Kolaghan Warmonger attacks, look at the top six cards of your library. You may reveal a Dragon card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. diff --git a/forge-gui/res/cardsfolder/k/korvold_fae_cursed_king.txt b/forge-gui/res/cardsfolder/k/korvold_fae_cursed_king.txt index 4b5e1c23fad..98f9e208560 100644 --- a/forge-gui/res/cardsfolder/k/korvold_fae_cursed_king.txt +++ b/forge-gui/res/cardsfolder/k/korvold_fae_cursed_king.txt @@ -10,7 +10,7 @@ SVar:NeedsToPlay:Permanent.YouCtrl+cmcLE2 T:Mode$ Sacrificed | ValidCard$ Permanent | ValidPlayer$ You | Execute$ TrigPutCounter | TriggerZones$ Battlefield | TriggerDescription$ Whenever you sacrifice a permanent, put a +1/+1 counter on NICKNAME and draw a card. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBDraw SVar:DBDraw:DB$ Draw | Defined$ You | NumCards$ 1 -AI:RemoveDeck:Random SVar:BuffedBy:Permanent.YouCtrl +AI:RemoveDeck:Random DeckHas:Ability$Counters Oracle:Flying\nWhenever Korvold, Fae-Cursed King enters or attacks, sacrifice another permanent.\nWhenever you sacrifice a permanent, put a +1/+1 counter on Korvold and draw a card. diff --git a/forge-gui/res/cardsfolder/k/koth_fire_of_resistance.txt b/forge-gui/res/cardsfolder/k/koth_fire_of_resistance.txt index b725a76a9b9..3f00279a60a 100644 --- a/forge-gui/res/cardsfolder/k/koth_fire_of_resistance.txt +++ b/forge-gui/res/cardsfolder/k/koth_fire_of_resistance.txt @@ -8,6 +8,6 @@ A:AB$ Effect | Cost$ SubCounter<7/LOYALTY> | Planeswalker$ True | Ultimate$ True SVar:STDamage:Mode$ ChangesZone | ValidCard$ Mountain.YouCtrl | Origin$ Any | Destination$ Battlefield | Execute$ TrigDamage | TriggerZones$ Battlefield | TriggerDescription$ Whenever a Mountain you control enters, this emblem deals 4 damage to any target. SVar:TrigDamage:DB$ DealDamage | ValidTgts$ Any | NumDmg$ 4 SVar:X:Count$Valid Mountain.YouCtrl -DeckNeeds:Type$Mountain SVar:BuffedBy:Mountain +DeckNeeds:Type$Mountain Oracle:[+2]: Search your library for a basic Mountain card, reveal it, put it into your hand, then shuffle.\n[-3]: Koth, Fire of Resistance deals damage to target creature equal to the number of Mountains you control.\n[-7]: You get an emblem with "Whenever a Mountain you control enters, this emblem deals 4 damage to any target." diff --git a/forge-gui/res/cardsfolder/k/krenko_baron_of_tin_street.txt b/forge-gui/res/cardsfolder/k/krenko_baron_of_tin_street.txt index d496cae99bc..dc06da31790 100644 --- a/forge-gui/res/cardsfolder/k/krenko_baron_of_tin_street.txt +++ b/forge-gui/res/cardsfolder/k/krenko_baron_of_tin_street.txt @@ -6,6 +6,6 @@ K:Haste A:AB$ PutCounterAll | Cost$ T Sac<1/Artifact/an artifact> | ValidCards$ Goblin.YouCtrl | CounterType$ P1P1 | CounterNum$ 1 | SpellDescription$ Put a +1/+1 counter on each Goblin you control. T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Artifact | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Whenever an artifact is put into a graveyard from the battlefield, you may pay {R}. If you do, create a 1/1 red Goblin creature token. It gains haste until end of turn. SVar:TrigToken:AB$ Token | Cost$ R | TokenScript$ r_1_1_goblin | PumpKeywords$ Haste | PumpDuration$ EOT -DeckHas:Ability$Token & Type$Goblin|Artifact SVar:PlayMain1:TRUE +DeckHas:Ability$Token & Type$Goblin|Artifact Oracle:Haste\n{T}, Sacrifice an artifact: Put a +1/+1 counter on each Goblin you control.\nWhenever an artifact is put into a graveyard from the battlefield, you may pay {R}. If you do, create a 1/1 red Goblin creature token. It gains haste until end of turn. diff --git a/forge-gui/res/cardsfolder/k/kroxa_and_kunoros.txt b/forge-gui/res/cardsfolder/k/kroxa_and_kunoros.txt index 5c8dbeaeacd..0cdfeac6e68 100644 --- a/forge-gui/res/cardsfolder/k/kroxa_and_kunoros.txt +++ b/forge-gui/res/cardsfolder/k/kroxa_and_kunoros.txt @@ -9,11 +9,10 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigImmediateTrig | Secondary$ True | TriggerDescription$ Whenever CARDNAME enters or attacks, you may exile five cards from your graveyard. When you do, return target creature card from your graveyard to the battlefield. SVar:TrigImmediateTrig:AB$ ImmediateTrigger | Cost$ ExileFromGrave<5/Card> | Execute$ TrigReturn | SpellDescription$ When you do, return target creature card from your graveyard to the battlefield. SVar:TrigReturn:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | ValidTgts$ Creature.YouOwn | TgtPrompt$ Select target creature to return from your graveyard -DeckHas:Ability$Graveyard -DeckHints:Ability$Discard SVar:NeedsToPlayVar:Z EQ6 SVar:X:Count$InYourYard/LimitMax.6 SVar:Y:Count$TypeInYourYard.Creature/LimitMax.1 SVar:Z:SVar$X/Times.Y DeckHas:Ability$Graveyard|LifeGain +DeckHints:Ability$Discard Oracle:Vigilance, menace, lifelink\nWhenever Kroxa and Kunoros enters or attacks, you may exile five cards from your graveyard. When you do, return target creature card from your graveyard to the battlefield. diff --git a/forge-gui/res/cardsfolder/k/kuldotha_rebirth.txt b/forge-gui/res/cardsfolder/k/kuldotha_rebirth.txt index 79aacd23429..8f0aed4c890 100644 --- a/forge-gui/res/cardsfolder/k/kuldotha_rebirth.txt +++ b/forge-gui/res/cardsfolder/k/kuldotha_rebirth.txt @@ -2,9 +2,9 @@ Name:Kuldotha Rebirth ManaCost:R Types:Sorcery A:SP$ Token | Cost$ R Sac<1/Artifact> | TokenAmount$ 3 | TokenOwner$ You | TokenScript$ r_1_1_goblin | SpellDescription$ Create three 1/1 red Goblin creature tokens. -AI:RemoveDeck:Random -DeckNeeds:Type$Artifact SVar:AIPreference:SacCost$Artifact.token,Artifact.cmcEQ1 +AI:RemoveDeck:Random DeckHas:Ability$Token DeckHints:Type$Goblin +DeckNeeds:Type$Artifact Oracle:As an additional cost to cast this spell, sacrifice an artifact.\nCreate three 1/1 red Goblin creature tokens. diff --git a/forge-gui/res/cardsfolder/k/kumena_tyrant_of_orazca.txt b/forge-gui/res/cardsfolder/k/kumena_tyrant_of_orazca.txt index 08a71123048..6ddd12aa0b1 100644 --- a/forge-gui/res/cardsfolder/k/kumena_tyrant_of_orazca.txt +++ b/forge-gui/res/cardsfolder/k/kumena_tyrant_of_orazca.txt @@ -6,7 +6,7 @@ A:AB$ Effect | Cost$ tapXType<1/Merfolk.Other> | RememberObjects$ Self | ExileOn SVar:Unblockable:Mode$ CantBlockBy | ValidAttacker$ Card.IsRemembered | Description$ EFFECTSOURCE can't be blocked this turn. A:AB$ Draw | Cost$ tapXType<3/Merfolk> | AILogic$ AtOppEOT | SpellDescription$ Draw a card. A:AB$ PutCounterAll | Cost$ tapXType<5/Merfolk> | ValidCards$ Merfolk.YouCtrl | CounterType$ P1P1 | CounterNum$ 1 | AILogic$ AtOppEOT | SpellDescription$ Put a +1/+1 counter on each Merfolk you control. -DeckHints:Type$Merfolk SVar:BuffedBy:Merfolk DeckHas:Ability$Counters +DeckHints:Type$Merfolk Oracle:Tap another untapped Merfolk you control: Kumena, Tyrant of Orazca can't be blocked this turn.\nTap three untapped Merfolk you control: Draw a card.\nTap five untapped Merfolk you control: Put a +1/+1 counter on each Merfolk you control. diff --git a/forge-gui/res/cardsfolder/k/kyler_sigardian_emissary.txt b/forge-gui/res/cardsfolder/k/kyler_sigardian_emissary.txt index 075b37d400c..d202d799a8a 100644 --- a/forge-gui/res/cardsfolder/k/kyler_sigardian_emissary.txt +++ b/forge-gui/res/cardsfolder/k/kyler_sigardian_emissary.txt @@ -6,6 +6,6 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Human. SVar:TrigPutCounter:DB$ PutCounter | CounterType$ P1P1 | CounterNum$ 1 S:Mode$ Continuous | Affected$ Card.Human+Other+YouCtrl | AddPower$ X | AddToughness$ X | Description$ Other Humans you control get +1/+1 for each counter on CARDNAME. SVar:X:Count$CardCounters.ALL -DeckNeeds:Type$Human DeckHas:Ability$Counters +DeckNeeds:Type$Human Oracle:Whenever another Human you control enters, put a +1/+1 counter on Kyler, Sigardian Emissary.\nOther Humans you control get +1/+1 for each counter on Kyler, Sigardian Emissary. diff --git a/forge-gui/res/cardsfolder/k/kyloxs_voltstrider.txt b/forge-gui/res/cardsfolder/k/kyloxs_voltstrider.txt index 2085e5fd2d9..41acbb8890a 100644 --- a/forge-gui/res/cardsfolder/k/kyloxs_voltstrider.txt +++ b/forge-gui/res/cardsfolder/k/kyloxs_voltstrider.txt @@ -10,6 +10,6 @@ SVar:StaticReplace:Event$ Moved | ValidLKI$ Card.IsRemembered | Origin$ Stack | SVar:MoveLibrary:DB$ ChangeZone | Defined$ ReplacedCard | Origin$ Stack | Destination$ Library | LibraryPosition$ -1 | SubAbility$ ExileSelf SVar:ExileSelf:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile K:Crew:2 -DeckHints:Type$Instant|Sorcery & Ability$Graveyard|Mill|Discard|Dredge SVar:HasAttackEffect:TRUE +DeckHints:Type$Instant|Sorcery & Ability$Graveyard|Mill|Discard|Dredge Oracle:Collect evidence 6: Kylox's Voltstrider becomes an artifact creature until end of turn.\nWhenever Kylox's Voltstrider attacks, you may cast an instant or sorcery spell from among cards exiled with it. If that spell would be put into a graveyard, put it on the bottom of its owner's library instead.\nCrew 2 From 2a1b8b4c93a5d9078c769347aa50b4b597e0249d Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 12:09:26 +0100 Subject: [PATCH 24/91] Edit pile cleanup: Line reordering, second pass: part 5, folders 'l' to 'n' --- forge-gui/res/cardsfolder/l/lagonna_band_storyteller.txt | 2 +- forge-gui/res/cardsfolder/l/laid_to_rest.txt | 2 +- forge-gui/res/cardsfolder/l/landlore_navigator.txt | 2 +- forge-gui/res/cardsfolder/l/lashwrithe.txt | 2 +- forge-gui/res/cardsfolder/l/lattice_blade_mantis.txt | 2 +- forge-gui/res/cardsfolder/l/lazotep_sliver.txt | 2 +- forge-gui/res/cardsfolder/l/legion_lieutenant.txt | 2 +- forge-gui/res/cardsfolder/l/legion_loyalty.txt | 2 +- forge-gui/res/cardsfolder/l/leisure_bicycle.txt | 2 +- forge-gui/res/cardsfolder/l/liberated_livestock.txt | 2 +- forge-gui/res/cardsfolder/l/life_chisel.txt | 2 +- forge-gui/res/cardsfolder/l/light_of_promise.txt | 2 +- forge-gui/res/cardsfolder/l/liliana_dreadhorde_general.txt | 2 +- forge-gui/res/cardsfolder/l/linvala_shield_of_sea_gate.txt | 2 +- forge-gui/res/cardsfolder/l/loathsome_catoblepas.txt | 2 +- forge-gui/res/cardsfolder/l/long_forgotten_gohei.txt | 2 +- forge-gui/res/cardsfolder/l/loran_disciple_of_history.txt | 2 +- forge-gui/res/cardsfolder/l/loran_of_the_third_path.txt | 2 +- forge-gui/res/cardsfolder/l/lord_of_the_pit.txt | 2 +- forge-gui/res/cardsfolder/l/luminarch_ascension.txt | 2 +- forge-gui/res/cardsfolder/l/luminarch_aspirant.txt | 2 +- forge-gui/res/cardsfolder/l/lunar_avenger.txt | 2 +- forge-gui/res/cardsfolder/l/lurking_spinecrawler.txt | 2 +- forge-gui/res/cardsfolder/m/macabre_reconstruction.txt | 2 +- forge-gui/res/cardsfolder/m/maccready_lamplight_mayor.txt | 2 +- forge-gui/res/cardsfolder/m/magus_of_the_order.txt | 2 +- forge-gui/res/cardsfolder/m/malamet_veteran.txt | 4 ++-- forge-gui/res/cardsfolder/m/mapping_the_maze.txt | 4 ++-- forge-gui/res/cardsfolder/m/mark_of_the_oni.txt | 2 +- forge-gui/res/cardsfolder/m/market_gnome.txt | 2 +- forge-gui/res/cardsfolder/m/markov_baron.txt | 4 ++-- forge-gui/res/cardsfolder/m/mausoleum_wanderer.txt | 2 +- forge-gui/res/cardsfolder/m/meekstone.txt | 2 +- forge-gui/res/cardsfolder/m/memory_deluge.txt | 2 +- forge-gui/res/cardsfolder/m/merfolk_mistbinder.txt | 2 +- forge-gui/res/cardsfolder/m/miirym_sentinel_wyrm.txt | 2 +- forge-gui/res/cardsfolder/m/minas_tirith_garrison.txt | 2 +- forge-gui/res/cardsfolder/m/minsc_boo_timeless_heroes.txt | 2 +- forge-gui/res/cardsfolder/m/mirage_phalanx.txt | 2 +- forge-gui/res/cardsfolder/m/mire_kavu.txt | 2 +- forge-gui/res/cardsfolder/m/mishra_eminent_one.txt | 4 ++-- forge-gui/res/cardsfolder/m/mishra_excavation_prodigy.txt | 4 ++-- forge-gui/res/cardsfolder/m/mishras_command.txt | 2 +- forge-gui/res/cardsfolder/m/monstrous_war_leech.txt | 2 +- forge-gui/res/cardsfolder/m/monument_to_perfection.txt | 2 +- forge-gui/res/cardsfolder/m/moonsilver_key.txt | 2 +- forge-gui/res/cardsfolder/m/moorland_haunt.txt | 2 +- forge-gui/res/cardsfolder/m/murktide_regent.txt | 2 +- forge-gui/res/cardsfolder/n/nadiers_nightblade.txt | 2 +- forge-gui/res/cardsfolder/n/nahiri_the_unforgiving.txt | 2 +- forge-gui/res/cardsfolder/n/najal_the_storm_runner.txt | 2 +- forge-gui/res/cardsfolder/n/naomi_pillar_of_order.txt | 4 ++-- forge-gui/res/cardsfolder/n/narset_enlightened_exile.txt | 4 ++-- forge-gui/res/cardsfolder/n/natural_emergence.txt | 2 +- forge-gui/res/cardsfolder/n/nazgul.txt | 2 +- forge-gui/res/cardsfolder/n/necravolver.txt | 2 +- forge-gui/res/cardsfolder/n/necroduality.txt | 2 +- forge-gui/res/cardsfolder/n/necron_monolith.txt | 2 +- forge-gui/res/cardsfolder/n/necropotence.txt | 2 +- forge-gui/res/cardsfolder/n/nemesis_phoenix.txt | 6 +++--- forge-gui/res/cardsfolder/n/nether_shadow.txt | 2 +- forge-gui/res/cardsfolder/n/nevinyrral_urborg_tyrant.txt | 2 +- forge-gui/res/cardsfolder/n/nimble_hobbit.txt | 2 +- forge-gui/res/cardsfolder/n/nissa_of_shadowed_boughs.txt | 2 +- forge-gui/res/cardsfolder/n/novijen_sages.txt | 2 +- forge-gui/res/cardsfolder/n/nykthos_paragon.txt | 2 +- 66 files changed, 75 insertions(+), 75 deletions(-) diff --git a/forge-gui/res/cardsfolder/l/lagonna_band_storyteller.txt b/forge-gui/res/cardsfolder/l/lagonna_band_storyteller.txt index 5149166296c..928dc57ea04 100644 --- a/forge-gui/res/cardsfolder/l/lagonna_band_storyteller.txt +++ b/forge-gui/res/cardsfolder/l/lagonna_band_storyteller.txt @@ -7,6 +7,6 @@ SVar:TrigChange:DB$ ChangeZone | Origin$ Graveyard | Destination$ Library | Vali SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ X | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Remembered$CardManaCost -DeckNeeds:Type$Enchantment DeckHas:Ability$LifeGain +DeckNeeds:Type$Enchantment Oracle:When Lagonna-Band Storyteller enters, you may put target enchantment card from your graveyard on top of your library. If you do, you gain life equal to its mana value. diff --git a/forge-gui/res/cardsfolder/l/laid_to_rest.txt b/forge-gui/res/cardsfolder/l/laid_to_rest.txt index 2ba70d54e82..f2043265d74 100644 --- a/forge-gui/res/cardsfolder/l/laid_to_rest.txt +++ b/forge-gui/res/cardsfolder/l/laid_to_rest.txt @@ -5,6 +5,6 @@ T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ SVar:TrigDraw:DB$ Draw | Defined$ You | NumCards$ 1 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | TriggerZones$ Battlefield | ValidCard$ Creature.YouCtrl+counters_GE1_P1P1 | Execute$ DBGainLife | TriggerDescription$ Whenever a creature you control with a +1/+1 counter on it dies, you gain 2 life. SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ 2 -DeckNeeds:Type$Human & Ability$Counters DeckHas:Ability$LifeGain +DeckNeeds:Type$Human & Ability$Counters Oracle:Whenever a Human you control dies, draw a card.\nWhenever a creature you control with a +1/+1 counter on it dies, you gain 2 life. diff --git a/forge-gui/res/cardsfolder/l/landlore_navigator.txt b/forge-gui/res/cardsfolder/l/landlore_navigator.txt index ad41bc9d35d..07b88adaaaf 100644 --- a/forge-gui/res/cardsfolder/l/landlore_navigator.txt +++ b/forge-gui/res/cardsfolder/l/landlore_navigator.txt @@ -7,7 +7,7 @@ SVar:TrigToken:DB$ Token | TokenScript$ c_a_map_sac_explore T:Mode$ Phase | Phase$ End of Turn | CheckSVar$ ArtifactsEntered | SVarCompare$ GE2 | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigConjure | TriggerDescription$ At the beginning of your end step, if two or more artifacts entered the battlefield under your control this turn, conjure a card named Thieving Magpie onto the battlefield. SVar:TrigConjure:DB$ MakeCard | Conjure$ True | Name$ Thieving Magpie | Zone$ Battlefield SVar:ArtifactsEntered:Count$ThisTurnEntered_Battlefield_Artifact.YouCtrl +SVar:HasAttackEffect:TRUE DeckHas:Ability$Token|Counters|Sacrifice & Type$Artifact|Map|Bird DeckHints:Type$Artifact -SVar:HasAttackEffect:TRUE Oracle:Whenever Landlore Navigator attacks, create a Map token.\nAt the beginning of your end step, if two or more artifacts entered the battlefield under your control this turn, conjure a card named Thieving Magpie onto the battlefield. diff --git a/forge-gui/res/cardsfolder/l/lashwrithe.txt b/forge-gui/res/cardsfolder/l/lashwrithe.txt index ea0e39bd323..8570e274e5d 100644 --- a/forge-gui/res/cardsfolder/l/lashwrithe.txt +++ b/forge-gui/res/cardsfolder/l/lashwrithe.txt @@ -7,6 +7,6 @@ S:Mode$ Continuous | Affected$ Card.EquippedBy | AddPower$ X | AddToughness$ X | SVar:X:Count$Valid Swamp.YouCtrl SVar:BuffedBy:Swamp AI:RemoveDeck:Random -DeckNeeds:Color$Black & Type$Swamp DeckHas:Ability$Token +DeckNeeds:Color$Black & Type$Swamp Oracle:Living weapon (When this Equipment enters, create a 0/0 black Phyrexian Germ creature token, then attach this to it.)\nEquipped creature gets +1/+1 for each Swamp you control.\nEquip {B/P}{B/P} ({B/P} can be paid with either {B} or 2 life.) diff --git a/forge-gui/res/cardsfolder/l/lattice_blade_mantis.txt b/forge-gui/res/cardsfolder/l/lattice_blade_mantis.txt index 6e3244a189d..119dcda85c5 100644 --- a/forge-gui/res/cardsfolder/l/lattice_blade_mantis.txt +++ b/forge-gui/res/cardsfolder/l/lattice_blade_mantis.txt @@ -6,6 +6,6 @@ K:etbCounter:OIL:2 T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigUntap | TriggerDescription$ Whenever CARDNAME attacks, you may remove an oil counter from it. If you do, untap it and it gets +1/+1 until end of turn. SVar:TrigUntap:AB$ Untap | Defined$ Self | Cost$ SubCounter<1/OIL> | SubAbility$ DBPump SVar:DBPump:DB$ Pump | Defined$ Self | NumAtt$ 1 | NumDef$ 1 -DeckHas:Ability$Counters SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters Oracle:Lattice-Blade Mantis enters with two oil counters on it.\nWhenever Lattice-Blade Mantis attacks, you may remove an oil counter from it. If you do, untap it and it gets +1/+1 until end of turn. diff --git a/forge-gui/res/cardsfolder/l/lazotep_sliver.txt b/forge-gui/res/cardsfolder/l/lazotep_sliver.txt index 7e37327c02c..f4d23434860 100644 --- a/forge-gui/res/cardsfolder/l/lazotep_sliver.txt +++ b/forge-gui/res/cardsfolder/l/lazotep_sliver.txt @@ -5,8 +5,8 @@ PT:4/4 S:Mode$ Continuous | Affected$ Creature.Sliver+YouCtrl | AddKeyword$ Afflict:2 | Description$ Sliver creatures you control have afflict 2. (Whenever a creature with afflict 2 becomes blocked, defending player loses 2 life.) T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Sliver.nonToken+YouCtrl | Execute$ TrigAmass | TriggerDescription$ Whenever a nontoken Sliver you control dies, amass Slivers 2. (Put two +1/+1 counters on an Army you control. It's also a Sliver. If you don't control an Army, create a 0/0 black Sliver Army creature token first.) SVar:TrigAmass:DB$ Amass | Type$ Sliver | Num$ 2 -DeckHas:Ability$Token|Counters & Type$Army SVar:PlayMain1:TRUE SVar:BuffedBy:Sliver +DeckHas:Ability$Token|Counters & Type$Army DeckHints:Type$Sliver Oracle:Sliver creatures you control have afflict 2. (Whenever a creature with afflict 2 becomes blocked, defending player loses 2 life.)\nWhenever a nontoken Sliver you control dies, amass Slivers 2. (Put two +1/+1 counters on an Army you control. It's also a Sliver. If you don't control an Army, create a 0/0 black Sliver Army creature token first.) diff --git a/forge-gui/res/cardsfolder/l/legion_lieutenant.txt b/forge-gui/res/cardsfolder/l/legion_lieutenant.txt index 93d5845fa14..c96ef70f049 100644 --- a/forge-gui/res/cardsfolder/l/legion_lieutenant.txt +++ b/forge-gui/res/cardsfolder/l/legion_lieutenant.txt @@ -3,6 +3,6 @@ ManaCost:W B Types:Creature Vampire Knight PT:2/2 S:Mode$ Continuous | Affected$ Creature.Vampire+Other+YouCtrl | AddPower$ 1 | AddToughness$ 1 | Description$ Other Vampires you control get +1/+1. -DeckHints:Type$Vampire SVar:BuffedBy:Vampire +DeckHints:Type$Vampire Oracle:Other Vampires you control get +1/+1. diff --git a/forge-gui/res/cardsfolder/l/legion_loyalty.txt b/forge-gui/res/cardsfolder/l/legion_loyalty.txt index 6c2bf749369..cdfb13b79cd 100644 --- a/forge-gui/res/cardsfolder/l/legion_loyalty.txt +++ b/forge-gui/res/cardsfolder/l/legion_loyalty.txt @@ -3,6 +3,6 @@ ManaCost:6 W W Types:Enchantment S:Mode$ Continuous | Affected$ Creature.YouCtrl | AddKeyword$ Myriad | Description$ Creatures you control have myriad. (Whenever a creature with myriad attacks, for each opponent other than defending player, you may create a token that's a copy of that creature that's tapped and attacking that player or a planeswalker they control. Exile the tokens at end of combat.) SVar:BuffedBy:Creature -DeckHas:Ability$Token SVar:PlayMain1:TRUE +DeckHas:Ability$Token Oracle:Creatures you control have myriad. (Whenever a creature with myriad attacks, for each opponent other than defending player, you may create a token that's a copy of that creature that's tapped and attacking that player or a planeswalker they control. Exile the tokens at end of combat.) diff --git a/forge-gui/res/cardsfolder/l/leisure_bicycle.txt b/forge-gui/res/cardsfolder/l/leisure_bicycle.txt index 16bf2a2d304..d7eaa904c40 100644 --- a/forge-gui/res/cardsfolder/l/leisure_bicycle.txt +++ b/forge-gui/res/cardsfolder/l/leisure_bicycle.txt @@ -6,6 +6,6 @@ K:Crew:1 K:Cycling:2 T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigExplore | TriggerDescription$ Whenever CARDNAME attacks, target creature that crewed it this turn explores. SVar:TrigExplore:DB$ Explore | ValidTgts$ Creature.CrewedThisTurn | TgtPrompt$ Select target creature that crewed it this turn -DeckHas:Ability$Counters|Discard SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters|Discard Oracle:Whenever Leisure Bicycle attacks, target creature that crewed it this turn explores.\nCrew 1\nCycling {2} diff --git a/forge-gui/res/cardsfolder/l/liberated_livestock.txt b/forge-gui/res/cardsfolder/l/liberated_livestock.txt index facf9616082..07e7528b350 100644 --- a/forge-gui/res/cardsfolder/l/liberated_livestock.txt +++ b/forge-gui/res/cardsfolder/l/liberated_livestock.txt @@ -7,7 +7,7 @@ SVar:TrigToken:DB$ Token | TokenAmount$ 1 | RememberTokens$ True | TokenScript$ SVar:DBRepeat:DB$ RepeatEach | UseImprinted$ True | DefinedCards$ DirectRemembered | RepeatSubAbility$ DBChangeZone | SubAbility$ DBCleanup SVar:DBChangeZone:DB$ ChangeZone | Origin$ Hand,Graveyard | Destination$ Battlefield | ChangeType$ Aura.YouCtrl+!IsRemembered | DefinedPlayer$ You | AttachedTo$ Imprinted | Optional$ True SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +SVar:SacMe:4 DeckHas:Ability$Token DeckNeeds:Type$Aura -SVar:SacMe:4 Oracle:When Liberated Livestock dies, create a 1/1 white Cat creature token with lifelink, a 1/1 white Bird creature token with flying, and a 2/4 white Ox creature token. For each of those tokens, you may put an Aura card from your hand and/or graveyard onto the battlefield attached to it. diff --git a/forge-gui/res/cardsfolder/l/life_chisel.txt b/forge-gui/res/cardsfolder/l/life_chisel.txt index b84a2177bec..348354f5e62 100644 --- a/forge-gui/res/cardsfolder/l/life_chisel.txt +++ b/forge-gui/res/cardsfolder/l/life_chisel.txt @@ -3,8 +3,8 @@ ManaCost:4 Types:Artifact A:AB$ GainLife | Cost$ Sac<1/Creature> | LifeAmount$ X | PlayerTurn$ True | ActivationPhases$ Upkeep | SpellDescription$ You gain life equal to the sacrificed creature's toughness. Activate only during your upkeep. SVar:X:Sacrificed$CardToughness -AI:RemoveDeck:Random SVar:NonStackingEffect:True +AI:RemoveDeck:Random DeckHas:Ability$Sacrifice|LifeGain DeckHints:Type$Zombie|Phyrexian|Thrull Oracle:Sacrifice a creature: You gain life equal to the sacrificed creature's toughness. Activate only during your upkeep. diff --git a/forge-gui/res/cardsfolder/l/light_of_promise.txt b/forge-gui/res/cardsfolder/l/light_of_promise.txt index bb840f68c7a..16696a34b66 100644 --- a/forge-gui/res/cardsfolder/l/light_of_promise.txt +++ b/forge-gui/res/cardsfolder/l/light_of_promise.txt @@ -7,6 +7,6 @@ S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddTrigger$ LightOfPromise SVar:LightOfPromiseTrig:Mode$ LifeGained | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ LightOfPromisePutCounter | TriggerDescription$ Whenever you gain life, put that many +1/+1 counters on this creature. SVar:LightOfPromisePutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ LightOfPromiseAmount SVar:LightOfPromiseAmount:TriggerCount$LifeAmount -DeckNeeds:Ability$LifeGain DeckHas:Ability$Counters +DeckNeeds:Ability$LifeGain Oracle:Enchant creature\nEnchanted creature has "Whenever you gain life, put that many +1/+1 counters on this creature." diff --git a/forge-gui/res/cardsfolder/l/liliana_dreadhorde_general.txt b/forge-gui/res/cardsfolder/l/liliana_dreadhorde_general.txt index ba827aaa658..396006b15ac 100644 --- a/forge-gui/res/cardsfolder/l/liliana_dreadhorde_general.txt +++ b/forge-gui/res/cardsfolder/l/liliana_dreadhorde_general.txt @@ -9,6 +9,6 @@ A:AB$ Sacrifice | Cost$ SubCounter<4/LOYALTY> | Planeswalker$ True | Amount$ 2 | A:AB$ ChooseCard | Cost$ SubCounter<9/LOYALTY> | Planeswalker$ True | Ultimate$ True | Defined$ Opponent | Choices$ Permanent | ChooseEach$ Artifact & Battle & Creature & Enchantment & Land & Planeswalker | ControlledByPlayer$ Chooser | Mandatory$ True | Reveal$ True | SubAbility$ SacAllOthers | StackDescription$ SpellDescription | SpellDescription$ Each opponent chooses a permanent they control of each permanent type and sacrifices the rest. SVar:SacAllOthers:DB$ SacrificeAll | ValidCards$ Permanent.nonChosenCard+OppCtrl | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearChosenCard$ True -DeckHas:Ability$Token|Sacrifice & Type$Zombie SVar:PlayMain1:TRUE +DeckHas:Ability$Token|Sacrifice & Type$Zombie Oracle:Whenever a creature you control dies, draw a card.\n[+1]: Create a 2/2 black Zombie creature token.\n[-4]: Each player sacrifices two creatures.\n[-9]: Each opponent chooses a permanent they control of each permanent type and sacrifices the rest. diff --git a/forge-gui/res/cardsfolder/l/linvala_shield_of_sea_gate.txt b/forge-gui/res/cardsfolder/l/linvala_shield_of_sea_gate.txt index f47700d1e08..1c011960f23 100644 --- a/forge-gui/res/cardsfolder/l/linvala_shield_of_sea_gate.txt +++ b/forge-gui/res/cardsfolder/l/linvala_shield_of_sea_gate.txt @@ -9,7 +9,7 @@ A:AB$ GenericChoice | Cost$ Sac<1/NICKNAME> | Choices$ PumpHexproof,PumpIndestru SVar:PumpHexproof:DB$ PumpAll | ValidCards$ Creature.YouCtrl | KW$ Hexproof | SpellDescription$ Hexproof SVar:PumpIndestructible:DB$ PumpAll | ValidCards$ Creature.YouCtrl | KW$ Indestructible | SpellDescription$ Indestructible SVar:X:Count$Party -DeckHas:Ability$Party|Sacrifice SVar:BuffedBy:Rogue,Warrior,Wizard +DeckHas:Ability$Party|Sacrifice DeckHints:Type$Rogue|Warrior|Wizard Oracle:Flying\nAt the beginning of combat on your turn, if you have a full party, choose target nonland permanent an opponent controls. Until your next turn, it can't attack or block, and its activated abilities can't be activated.\nSacrifice Linvala: Choose hexproof or indestructible. Creatures you control gain that ability until end of turn. diff --git a/forge-gui/res/cardsfolder/l/loathsome_catoblepas.txt b/forge-gui/res/cardsfolder/l/loathsome_catoblepas.txt index 3d68ae034be..8ccbc0356af 100644 --- a/forge-gui/res/cardsfolder/l/loathsome_catoblepas.txt +++ b/forge-gui/res/cardsfolder/l/loathsome_catoblepas.txt @@ -5,7 +5,7 @@ PT:3/3 A:AB$ Pump | Cost$ 2 G | Defined$ Self | KW$ HIDDEN CARDNAME must be blocked if able. | AILogic$ Pump | SpellDescription$ CARDNAME must be blocked this turn if able. T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ When CARDNAME dies, target creature an opponent controls gets -3/-3 until end of turn. SVar:TrigPump:DB$ Pump | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Select target creature an opponent controls | NumAtt$ -3 | NumDef$ -3 | IsCurse$ True -AI:RemoveDeck:Random AI:RemoveDeck:All +AI:RemoveDeck:Random DeckNeeds:Color$Green Oracle:{2}{G}: Loathsome Catoblepas must be blocked this turn if able.\nWhen Loathsome Catoblepas dies, target creature an opponent controls gets -3/-3 until end of turn. diff --git a/forge-gui/res/cardsfolder/l/long_forgotten_gohei.txt b/forge-gui/res/cardsfolder/l/long_forgotten_gohei.txt index dc2359ea73a..bbe56a666d8 100644 --- a/forge-gui/res/cardsfolder/l/long_forgotten_gohei.txt +++ b/forge-gui/res/cardsfolder/l/long_forgotten_gohei.txt @@ -3,7 +3,7 @@ ManaCost:3 Types:Artifact S:Mode$ Continuous | Affected$ Creature.Spirit+YouCtrl | AddPower$ 1 | AddToughness$ 1 | Description$ Spirit creatures you control get +1/+1. S:Mode$ ReduceCost | ValidCard$ Arcane | Type$ Spell | Activator$ You | Amount$ 1 | Description$ Arcane spells you cast cost {1} less to cast. -AI:RemoveDeck:Random SVar:PlayMain1:TRUE +AI:RemoveDeck:Random DeckHints:Type$Arcane|Spirit Oracle:Arcane spells you cast cost {1} less to cast.\nSpirit creatures you control get +1/+1. diff --git a/forge-gui/res/cardsfolder/l/loran_disciple_of_history.txt b/forge-gui/res/cardsfolder/l/loran_disciple_of_history.txt index 147f3fb96bb..0c2836ce41e 100644 --- a/forge-gui/res/cardsfolder/l/loran_disciple_of_history.txt +++ b/forge-gui/res/cardsfolder/l/loran_disciple_of_history.txt @@ -4,6 +4,6 @@ Types:Legendary Creature Human Artificer PT:3/3 T:Mode$ ChangesZone | ValidCard$ Card.Self,Creature.Other+Legendary+YouCtrl | Origin$ Any | Destination$ Battlefield | TriggerZones$ Battlefield | Execute$ TrigChange | TriggerDescription$ Whenever CARDNAME or another legendary creature you control enters, return target artifact card from your graveyard to your hand. SVar:TrigChange:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | TgtPrompt$ Select target artifact card in your graveyard | ValidTgts$ Artifact.YouCtrl -DeckNeeds:Type$Artifact DeckHas:Ability$Graveyard +DeckNeeds:Type$Artifact Oracle:Whenever Loran, Disciple of History or another legendary creature you control enters, return target artifact card from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/l/loran_of_the_third_path.txt b/forge-gui/res/cardsfolder/l/loran_of_the_third_path.txt index 19724baa2d4..4ad9553c40d 100644 --- a/forge-gui/res/cardsfolder/l/loran_of_the_third_path.txt +++ b/forge-gui/res/cardsfolder/l/loran_of_the_third_path.txt @@ -6,5 +6,5 @@ K:Vigilance T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters, destroy up to one target artifact or enchantment. SVar:TrigDestroy:DB$ Destroy | TargetMin$ 0 | TargetMax$ 1 | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select up to one target artifact or enchantment A:AB$ Draw | Cost$ T | ValidTgts$ Opponent | Defined$ TargetedAndYou | NumCards$ 1 | SpellDescription$ You and target opponent each draw a card. -RemoveDeck:Random +AI:RemoveDeck:Random Oracle:Vigilance\nWhen Loran of the Third Path enters, destroy up to one target artifact or enchantment.\n{T}: You and target opponent each draw a card. diff --git a/forge-gui/res/cardsfolder/l/lord_of_the_pit.txt b/forge-gui/res/cardsfolder/l/lord_of_the_pit.txt index 05f08cd8085..51a211d34ba 100644 --- a/forge-gui/res/cardsfolder/l/lord_of_the_pit.txt +++ b/forge-gui/res/cardsfolder/l/lord_of_the_pit.txt @@ -9,7 +9,7 @@ SVar:TrigSac:DB$ Sacrifice | Defined$ You | SacValid$ Creature.Other | SubAbilit SVar:DBDamage:DB$ DealDamage | Defined$ You | NumDmg$ 7 | ConditionCheckSVar$ X | ConditionSVarCompare$ LT1 | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Remembered$Amount +SVar:NeedsToPlay:Creature.YouCtrl DeckHas:Ability$Sacrifice DeckHints:Ability$Sacrifice|Token -SVar:NeedsToPlay:Creature.YouCtrl Oracle:Flying, trample\nAt the beginning of your upkeep, sacrifice a creature other than Lord of the Pit. If you can't, Lord of the Pit deals 7 damage to you. diff --git a/forge-gui/res/cardsfolder/l/luminarch_ascension.txt b/forge-gui/res/cardsfolder/l/luminarch_ascension.txt index c218a1451bc..b03c1c8aeab 100644 --- a/forge-gui/res/cardsfolder/l/luminarch_ascension.txt +++ b/forge-gui/res/cardsfolder/l/luminarch_ascension.txt @@ -5,6 +5,6 @@ T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ Opponent | TriggerZones$ Battl A:AB$ Token | Cost$ 1 W | TokenAmount$ 1 | TokenScript$ w_4_4_angel_flying | TokenOwner$ You | IsPresent$ Card.Self+counters_GE4_QUEST | SpellDescription$ Create a 4/4 white Angel creature token with flying. Activate only if CARDNAME has four or more quest counters on it. SVar:TrigPut:DB$ PutCounter | Defined$ Self | CounterType$ QUEST | CounterNum$ 1 SVar:X:Count$LifeYouLostThisTurn -DeckHas:Ability$Counters SVar:MaxQuestEffect:4 +DeckHas:Ability$Counters Oracle:At the beginning of each opponent's end step, if you didn't lose life this turn, you may put a quest counter on Luminarch Ascension. (Damage causes loss of life.)\n{1}{W}: Create a 4/4 white Angel creature token with flying. Activate only if Luminarch Ascension has four or more quest counters on it. diff --git a/forge-gui/res/cardsfolder/l/luminarch_aspirant.txt b/forge-gui/res/cardsfolder/l/luminarch_aspirant.txt index 6f0c38c127d..86219ffd0f8 100644 --- a/forge-gui/res/cardsfolder/l/luminarch_aspirant.txt +++ b/forge-gui/res/cardsfolder/l/luminarch_aspirant.txt @@ -4,6 +4,6 @@ Types:Creature Human Cleric PT:1/1 T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ At the beginning of combat on your turn, put a +1/+1 counter on target creature you control. SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterType$ P1P1 | CounterNum$ 1 -DeckHas:Ability$Counters SVar:PlayMain1:TRUE +DeckHas:Ability$Counters Oracle:At the beginning of combat on your turn, put a +1/+1 counter on target creature you control. diff --git a/forge-gui/res/cardsfolder/l/lunar_avenger.txt b/forge-gui/res/cardsfolder/l/lunar_avenger.txt index d846b8ec785..30355de1922 100644 --- a/forge-gui/res/cardsfolder/l/lunar_avenger.txt +++ b/forge-gui/res/cardsfolder/l/lunar_avenger.txt @@ -4,8 +4,8 @@ Types:Artifact Creature Golem PT:2/2 K:Sunburst A:AB$ Pump | Cost$ SubCounter<1/P1P1> | KWChoice$ Flying,First Strike,Haste | StackDescription$ SpellDescription | SpellDescription$ CARDNAME gains your choice of flying, first strike, or haste until end of turn. -AI:RemoveDeck:Random SVar:NeedsToPlayVar:Z GE2 SVar:Z:Count$UniqueManaColorsProduced.ByUntappedSources +AI:RemoveDeck:Random DeckHints:Ability$Proliferate Oracle:Sunburst (This enters with a +1/+1 counter on it for each color of mana spent to cast it.)\nRemove a +1/+1 counter from Lunar Avenger: Lunar Avenger gains your choice of flying, first strike, or haste until end of turn. diff --git a/forge-gui/res/cardsfolder/l/lurking_spinecrawler.txt b/forge-gui/res/cardsfolder/l/lurking_spinecrawler.txt index 312a4a01439..f3fcf61da71 100644 --- a/forge-gui/res/cardsfolder/l/lurking_spinecrawler.txt +++ b/forge-gui/res/cardsfolder/l/lurking_spinecrawler.txt @@ -13,6 +13,6 @@ SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True T:Mode$ SpellCast | ValidCard$ Card.MultiColor | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDrain | TriggerDescription$ Whenever you cast a multicolored spell, for each of that spell's colors, each opponent loses 1 life and you gain 1 life. SVar:TrigDrain:DB$ LoseLife | Defined$ Opponent | LifeAmount$ TriggeredCard$CardNumColors | SubAbility$ DBGainLife SVar:DBGainLife:DB$ GainLife | LifeAmount$ TriggeredCard$CardNumColors -DeckHas:Ability$LifeGain SVar:BuffedBy:Card.MultiColor +DeckHas:Ability$LifeGain Oracle:When Lurking Spinecrawler enters, you may choose a nonland card in your hand. If you do, that card perpetually incorporates {1}{B} and gains "When you cast this spell, each opponent sacrifices a creature. Each opponent who can't discards a card."\nWhenever you cast a multicolored spell, for each of that spell's colors, each opponent loses 1 life and you gain 1 life. diff --git a/forge-gui/res/cardsfolder/m/macabre_reconstruction.txt b/forge-gui/res/cardsfolder/m/macabre_reconstruction.txt index 5ebdeef3dc8..a5976bb616b 100644 --- a/forge-gui/res/cardsfolder/m/macabre_reconstruction.txt +++ b/forge-gui/res/cardsfolder/m/macabre_reconstruction.txt @@ -3,7 +3,7 @@ ManaCost:3 B Types:Sorcery S:Mode$ ReduceCost | ValidCard$ Card.Self | Type$ Spell | CheckSVar$ X | Amount$ 2 | EffectZone$ All | Description$ This spell costs {2} less to cast if a creature card was put into your graveyard from anywhere this turn. A:SP$ ChangeZone | Origin$ Graveyard | Destination$ Hand | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select up to two target creature cards from your graveyard | TargetMin$ 0 | TargetMax$ 2 | SpellDescription$ Return up to two target creature cards from your graveyard to your hand. +SVar:X:Count$ThisTurnEntered_Graveyard_Creature.YouOwn+nonToken DeckHas:Ability$Graveyard DeckHints:Ability$Sacrifice|Discard|Mill -SVar:X:Count$ThisTurnEntered_Graveyard_Creature.YouOwn+nonToken Oracle:This spell costs {2} less to cast if a creature card was put into your graveyard from anywhere this turn.\nReturn up to two target creature cards from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/m/maccready_lamplight_mayor.txt b/forge-gui/res/cardsfolder/m/maccready_lamplight_mayor.txt index c804cb1e54c..bd8f9fd7943 100644 --- a/forge-gui/res/cardsfolder/m/maccready_lamplight_mayor.txt +++ b/forge-gui/res/cardsfolder/m/maccready_lamplight_mayor.txt @@ -7,6 +7,6 @@ SVar:TrigPump:DB$ Pump | Defined$ TriggeredAttackerLKICopy | KW$ Skulk T:Mode$ Attacks | ValidCard$ Creature.powerGE4 | Attacked$ You | TriggerZones$ Battlefield | Execute$ TrigLoseLife | TriggerDescription$ Whenever a creature with power 4 or greater attacks you, its controller loses 2 life and you gain 2 life. SVar:TrigLoseLife:DB$ LoseLife | Defined$ TriggeredAttackerController | LifeAmount$ 2 | SubAbility$ DBGainLife SVar:DBGainLife:DB$ GainLife | LifeAmount$ 2 -DeckHas:Ability$LifeGain SVar:PlayMain1:TRUE +DeckHas:Ability$LifeGain Oracle:Whenever a creature you control with power 2 or less attacks, it gains skulk until end of turn. (It can't be blocked by creatures with greater power.)\nWhenever a creature with power 4 or greater attacks you, its controller loses 2 life and you gain 2 life. diff --git a/forge-gui/res/cardsfolder/m/magus_of_the_order.txt b/forge-gui/res/cardsfolder/m/magus_of_the_order.txt index b65813604a8..43c3ed9e719 100644 --- a/forge-gui/res/cardsfolder/m/magus_of_the_order.txt +++ b/forge-gui/res/cardsfolder/m/magus_of_the_order.txt @@ -4,6 +4,6 @@ Types:Creature Human Wizard PT:3/3 A:AB$ ChangeZone | Cost$ G T Sac<1/CARDNAME> Sac<1/Creature.Green+Other/another green creature> | CostDesc$ {G}, {T}, Sacrifice CARDNAME and another green creature: | Origin$ Library | Destination$ Battlefield | ChangeType$ Creature.Green | ChangeNum$ 1 | StackDescription$ {p:You} searches their library for a green creature card, puts it onto the battlefield, then shuffles their library. | SpellDescription$ Search your library for a green creature card, put it onto the battlefield, then shuffle. SVar:AIPreference:SacCost$Creature.Green -DeckNeeds:Type$Creature DeckHas:Ability$Sacrifice +DeckNeeds:Type$Creature Oracle:{G}, {T}, Sacrifice Magus of the Order and another green creature: Search your library for a green creature card, put it onto the battlefield, then shuffle. diff --git a/forge-gui/res/cardsfolder/m/malamet_veteran.txt b/forge-gui/res/cardsfolder/m/malamet_veteran.txt index 441b4a030b4..5776fff4241 100644 --- a/forge-gui/res/cardsfolder/m/malamet_veteran.txt +++ b/forge-gui/res/cardsfolder/m/malamet_veteran.txt @@ -5,8 +5,8 @@ PT:5/4 K:Trample T:Mode$ Attacks | CheckSVar$ X | SVarCompare$ GE4 | ValidCard$ Card.Self | Execute$ TrigPutCounter | TriggerDescription$ Descend 4 — Whenever CARDNAME attacks, if there are four or more permanent cards in your graveyard, put a +1/+1 counter on target creature. SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature | CounterType$ P1P1 | CounterNum$ 1 -DeckHas:Ability$Counters SVar:X:Count$ValidGraveyard Permanent.YouOwn -DeckHints:Ability$Sacrifice|Discard|Mill|Dredge|Graveyard SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters +DeckHints:Ability$Sacrifice|Discard|Mill|Dredge|Graveyard Oracle:Trample\nDescend 4 — Whenever Malamet Veteran attacks, if there are four or more permanent cards in your graveyard, put a +1/+1 counter on target creature. diff --git a/forge-gui/res/cardsfolder/m/mapping_the_maze.txt b/forge-gui/res/cardsfolder/m/mapping_the_maze.txt index 48644dda271..74b72dd3bcd 100644 --- a/forge-gui/res/cardsfolder/m/mapping_the_maze.txt +++ b/forge-gui/res/cardsfolder/m/mapping_the_maze.txt @@ -6,7 +6,7 @@ SVar:DBAnimate:DB$ Animate | Triggers$ SpellCastTrig | Defined$ ChosenCard | Inc SVar:DBReturn:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | ChangeTypeDesc$ a multicolored instant or sorcery card from your graveyard | ChangeNum$ 1 | Hidden$ True | StackDescription$ SpellDescription | ChangeType$ Instant.YouCtrl+MultiColor,Sorcery.YouCtrl+MultiColor | SpellDescription$ Then return a multicolored instant or sorcery card from your graveyard to your hand. SVar:SpellCastTrig:Mode$ SpellCast | ValidCard$ Card.Self | Execute$ TrigDraw | TriggerDescription$ When you cast this spell, draw a card. SVar:TrigDraw:DB$ Draw -DeckNeeds:Type$Instant|Sorcery +AI:RemoveDeck:Random DeckHas:Ability$Graveyard -RemoveDeck:Random +DeckNeeds:Type$Instant|Sorcery Oracle:Choose an instant or sorcery card in your hand or graveyard. That card perpetually incorporates {U} and gains "When you cast this spell, draw a card." Then return a multicolored instant or sorcery card from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/m/mark_of_the_oni.txt b/forge-gui/res/cardsfolder/m/mark_of_the_oni.txt index c6a05a22417..9f0455b98c5 100644 --- a/forge-gui/res/cardsfolder/m/mark_of_the_oni.txt +++ b/forge-gui/res/cardsfolder/m/mark_of_the_oni.txt @@ -7,7 +7,7 @@ S:Mode$ Continuous | Affected$ Card.EnchantedBy | GainControl$ You | Description T:Mode$ Phase | Phase$ End of Turn | TriggerZones$ Battlefield | IsPresent$ Demon.YouCtrl | PresentCompare$ EQ0 | Execute$ TrigSac | TriggerDescription$ At the beginning of the end step, if you control no Demons, sacrifice CARDNAME. SVar:TrigSac:DB$ Sacrifice SVar:PlayMain1:TRUE -AI:RemoveDeck:Random SVar:NeedsToPlay:Demon.YouCtrl +AI:RemoveDeck:Random DeckHints:Type$Demon Oracle:Enchant creature\nYou control enchanted creature.\nAt the beginning of the end step, if you control no Demons, sacrifice Mark of the Oni. diff --git a/forge-gui/res/cardsfolder/m/market_gnome.txt b/forge-gui/res/cardsfolder/m/market_gnome.txt index 36209047be6..c229867b138 100644 --- a/forge-gui/res/cardsfolder/m/market_gnome.txt +++ b/forge-gui/res/cardsfolder/m/market_gnome.txt @@ -6,6 +6,6 @@ T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ T:Mode$ Exiled | Origin$ Battlefield | WhileKeyword$ Ability.Craft | ValidCard$ Card.Self | Execute$ TrigGainLife | TriggerDescription$ When CARDNAME is exiled from the battlefield while you're activating a craft ability, you gain 1 life and draw a card. SVar:TrigGainLife:DB$ GainLife | LifeAmount$ 1 | SubAbility$ DBDraw SVar:DBDraw:DB$ Draw -DeckHas:Ability$LifeGain SVar:SacMe:2 +DeckHas:Ability$LifeGain Oracle:When Market Gnome dies, you gain 1 life and draw a card.\nWhen Market Gnome is exiled from the battlefield while you're activating a craft ability, you gain 1 life and draw a card. diff --git a/forge-gui/res/cardsfolder/m/markov_baron.txt b/forge-gui/res/cardsfolder/m/markov_baron.txt index b1dbe8dfaed..5787ad2b5e6 100644 --- a/forge-gui/res/cardsfolder/m/markov_baron.txt +++ b/forge-gui/res/cardsfolder/m/markov_baron.txt @@ -6,7 +6,7 @@ K:Convoke K:Lifelink K:Madness:2 B S:Mode$ Continuous | Affected$ Vampire.Other+YouCtrl | AddPower$ 1 | AddToughness$ 1 | Description$ Other Vampires you control get +1/+1. -DeckHints:Type$Vampire & Ability$Discard -DeckHas:Ability$LifeGain SVar:PlayMain1:TRUE +DeckHas:Ability$LifeGain +DeckHints:Type$Vampire & Ability$Discard Oracle:Convoke\nLifelink\nOther Vampires you control get +1/+1.\nMadness {2}{B} diff --git a/forge-gui/res/cardsfolder/m/mausoleum_wanderer.txt b/forge-gui/res/cardsfolder/m/mausoleum_wanderer.txt index ff6781849d9..84cb208dbba 100644 --- a/forge-gui/res/cardsfolder/m/mausoleum_wanderer.txt +++ b/forge-gui/res/cardsfolder/m/mausoleum_wanderer.txt @@ -7,7 +7,7 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigPump:DB$ Pump | Defined$ Self | NumAtt$ 1 | NumDef$ 1 A:AB$ Counter | Cost$ Sac<1/CARDNAME> | TargetType$ Spell | ValidTgts$ Instant,Sorcery | TgtPrompt$ Select target instant or sorcery spell | UnlessCost$ X | SpellDescription$ Counter target instant or sorcery spell unless its controller pays {X}, where X is CARDNAME's power. SVar:X:Sacrificed$CardPower -AI:RemoveDeck:Random SVar:BuffedBy:Spirit +AI:RemoveDeck:Random DeckHints:Type$Spirit Oracle:Flying\nWhenever another Spirit you control enters, Mausoleum Wanderer gets +1/+1 until end of turn.\nSacrifice Mausoleum Wanderer: Counter target instant or sorcery spell unless its controller pays {X}, where X is Mausoleum Wanderer's power. diff --git a/forge-gui/res/cardsfolder/m/meekstone.txt b/forge-gui/res/cardsfolder/m/meekstone.txt index e42e44d8546..227be34e23a 100644 --- a/forge-gui/res/cardsfolder/m/meekstone.txt +++ b/forge-gui/res/cardsfolder/m/meekstone.txt @@ -3,9 +3,9 @@ ManaCost:1 Types:Artifact S:Mode$ Continuous | Affected$ Creature.powerGE3 | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Creatures with power 3 or greater don't untap during their controllers' untap steps. SVar:NonStackingEffect:True -AI:RemoveDeck:Random SVar:NeedsToPlayVar:CountOpps GTCountMe SVar:CountOpps:Count$Valid Creature.OppCtrl+PowerGE3/LimitMax.5 SVar:CountMe:Count$Valid Creature.YouCtrl+PowerGE3 +AI:RemoveDeck:Random DeckHints:Type$Enchantment|Artifact|Planeswalker & Type$Wall & Keyword$Defender Oracle:Creatures with power 3 or greater don't untap during their controllers' untap steps. diff --git a/forge-gui/res/cardsfolder/m/memory_deluge.txt b/forge-gui/res/cardsfolder/m/memory_deluge.txt index 80b91cc745b..a99cf9621a2 100644 --- a/forge-gui/res/cardsfolder/m/memory_deluge.txt +++ b/forge-gui/res/cardsfolder/m/memory_deluge.txt @@ -4,6 +4,6 @@ Types:Instant A:SP$ Dig | DigNum$ X | ChangeNum$ 2 | RestRandomOrder$ True | StackDescription$ SpellDescription | SpellDescription$ Look at the top X cards of your library, where X is the amount of mana spent to cast this spell. Put two of them into your hand and the rest on the bottom of your library in a random order. SVar:X:Count$CastTotalManaSpent K:Flashback:5 U U -DeckHas:Ability$Graveyard SVar:AINoCopy:True +DeckHas:Ability$Graveyard Oracle:Look at the top X cards of your library, where X is the amount of mana spent to cast this spell. Put two of them into your hand and the rest on the bottom of your library in a random order.\nFlashback {5}{U}{U} (You may cast this card from your graveyard for its flashback cost. Then exile it.) diff --git a/forge-gui/res/cardsfolder/m/merfolk_mistbinder.txt b/forge-gui/res/cardsfolder/m/merfolk_mistbinder.txt index da3889c49d9..f9ac61bf125 100644 --- a/forge-gui/res/cardsfolder/m/merfolk_mistbinder.txt +++ b/forge-gui/res/cardsfolder/m/merfolk_mistbinder.txt @@ -3,6 +3,6 @@ ManaCost:G U Types:Creature Merfolk Shaman PT:2/2 S:Mode$ Continuous | Affected$ Creature.Merfolk+Other+YouCtrl | AddPower$ 1 | AddToughness$ 1 | Description$ Other Merfolk you control get +1/+1. -DeckHints:Type$Merfolk SVar:BuffedBy:Merfolk +DeckHints:Type$Merfolk Oracle:Other Merfolk you control get +1/+1. diff --git a/forge-gui/res/cardsfolder/m/miirym_sentinel_wyrm.txt b/forge-gui/res/cardsfolder/m/miirym_sentinel_wyrm.txt index 38052bbf28f..3c1555850db 100644 --- a/forge-gui/res/cardsfolder/m/miirym_sentinel_wyrm.txt +++ b/forge-gui/res/cardsfolder/m/miirym_sentinel_wyrm.txt @@ -6,6 +6,6 @@ K:Flying K:Ward:2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Dragon.YouCtrl+nonToken+Other | TriggerZones$ Battlefield | Execute$ TrigCopy | TriggerDescription$ Whenever another nontoken Dragon you control enters, create a token that's a copy of it, except the token isn't legendary if that Dragon is legendary. SVar:TrigCopy:DB$ CopyPermanent | Defined$ TriggeredCardLKICopy | NonLegendary$ True -DeckNeeds:Type$Dragon DeckHas:Ability$Token +DeckNeeds:Type$Dragon Oracle:Flying, ward {2}\nWhenever another nontoken Dragon you control enters, create a token that's a copy of it, except the token isn't legendary if that Dragon is legendary. diff --git a/forge-gui/res/cardsfolder/m/minas_tirith_garrison.txt b/forge-gui/res/cardsfolder/m/minas_tirith_garrison.txt index 4bf48e04212..27a991b432b 100644 --- a/forge-gui/res/cardsfolder/m/minas_tirith_garrison.txt +++ b/forge-gui/res/cardsfolder/m/minas_tirith_garrison.txt @@ -9,6 +9,6 @@ SVar:DBDraw:DB$ Draw | NumCards$ Y | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Count$InYourHand SVar:Y:Remembered$Amount -DeckHints:Type$Human SVar:HasAttackEffect:TRUE +DeckHints:Type$Human Oracle:Minas Tirith Garrison's power is equal to the number of cards in your hand.\nWhenever Minas Tirith Garrison attacks, you may tap any number of untapped Humans you control. Draw a card for each Human tapped this way. diff --git a/forge-gui/res/cardsfolder/m/minsc_boo_timeless_heroes.txt b/forge-gui/res/cardsfolder/m/minsc_boo_timeless_heroes.txt index 8e74c51f3bd..cf77df9fe68 100644 --- a/forge-gui/res/cardsfolder/m/minsc_boo_timeless_heroes.txt +++ b/forge-gui/res/cardsfolder/m/minsc_boo_timeless_heroes.txt @@ -13,7 +13,7 @@ SVar:DBDraw:DB$ Draw | ConditionDefined$ DelayTriggerRememberedLKI | ConditionPr SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:TriggerRemembered$CardPower K:CARDNAME can be your commander. +SVar:PlayMain1:TRUE DeckHas:Ability$Sacrifice|Counters|Token DeckHints:Keyword$Trample|Haste -SVar:PlayMain1:TRUE Oracle:When Minsc & Boo, Timeless Heroes enters and at the beginning of your upkeep, you may create Boo, a legendary 1/1 red Hamster creature token with trample and haste.\n[+1]: Put three +1/+1 counters on up to one target creature with trample or haste.\n[-2]: Sacrifice a creature. When you do, Minsc & Boo, Timeless Heroes deals X damage to any target, where X is that creature's power. If the sacrificed creature was a Hamster, draw X cards.\nMinsc & Boo, Timeless Heroes can be your commander. diff --git a/forge-gui/res/cardsfolder/m/mirage_phalanx.txt b/forge-gui/res/cardsfolder/m/mirage_phalanx.txt index 3bb243aab5d..5a50fac523e 100644 --- a/forge-gui/res/cardsfolder/m/mirage_phalanx.txt +++ b/forge-gui/res/cardsfolder/m/mirage_phalanx.txt @@ -6,6 +6,6 @@ K:Soulbond S:Mode$ Continuous | Affected$ Creature.PairedWith,Creature.Self+Paired | AddTrigger$ PhaseTrigger | Description$ As long as CARDNAME is paired with another creature, each of those creatures has "At the beginning of combat on your turn, create a token that's a copy of this creature, except it has haste and loses soulbond. Exile it at end of combat." SVar:PhaseTrigger:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigCopy | TriggerDescription$ At the beginning of combat on your turn, create a token that's a copy of this creature, except it has haste and loses soulbond. Exile it at end of combat. SVar:TrigCopy:DB$ CopyPermanent | Defined$ Self | RemoveKeywords$ Soulbond | AddKeywords$ Haste | AtEOT$ ExileCombat -DeckHas:Ability$Token SVar:BuffedBy:Creature +DeckHas:Ability$Token Oracle:Soulbond (You may pair this creature with another unpaired creature when either enters. They remain paired for as long as you control both of them.)\nAs long as Mirage Phalanx is paired with another creature, each of those creatures has "At the beginning of combat on your turn, create a token that's a copy of this creature, except it has haste and loses soulbond. Exile it at end of combat." diff --git a/forge-gui/res/cardsfolder/m/mire_kavu.txt b/forge-gui/res/cardsfolder/m/mire_kavu.txt index a69899ddbe4..92b978e98ef 100644 --- a/forge-gui/res/cardsfolder/m/mire_kavu.txt +++ b/forge-gui/res/cardsfolder/m/mire_kavu.txt @@ -3,7 +3,7 @@ ManaCost:3 R Types:Creature Kavu PT:3/2 S:Mode$ Continuous | Affected$ Card.Self | AddPower$ 1 | AddToughness$ 1 | IsPresent$ Swamp.YouCtrl | Description$ CARDNAME gets +1/+1 as long as you control a Swamp. -AI:RemoveDeck:Random SVar:BuffedBy:Swamp +AI:RemoveDeck:Random DeckNeeds:Color$Black Oracle:Mire Kavu gets +1/+1 as long as you control a Swamp. diff --git a/forge-gui/res/cardsfolder/m/mishra_eminent_one.txt b/forge-gui/res/cardsfolder/m/mishra_eminent_one.txt index 19affa1960d..026fb3f1c00 100644 --- a/forge-gui/res/cardsfolder/m/mishra_eminent_one.txt +++ b/forge-gui/res/cardsfolder/m/mishra_eminent_one.txt @@ -4,7 +4,7 @@ Types:Legendary Creature Human Artificer PT:5/4 T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigCopy | TriggerDescription$ At the beginning of combat on your turn, create a token that's a copy of target noncreature artifact you control, except its name is Mishra's Warform and it's a 4/4 Construct artifact creature in addition to its other types. It gains haste until end of turn. Sacrifice it at the beginning of the next end step. SVar:TrigCopy:DB$ CopyPermanent | ValidTgts$ Artifact.nonCreature+YouCtrl | TgtPrompt$ Select target noncreature artifact you control | AddTypes$ Creature & Construct | PumpKeywords$ Haste | PumpDuration$ EOT | AtEOT$ Sacrifice | NewName$ Mishra's Warform | SetPower$ 4 | SetToughness$ 4 -DeckHints:Type$Artifact -DeckHas:Type$Construct & Ability$Sacrifice|Token SVar:PlayMain1:TRUE +DeckHas:Type$Construct & Ability$Sacrifice|Token +DeckHints:Type$Artifact Oracle:At the beginning of combat on your turn, create a token that's a copy of target noncreature artifact you control, except its name is Mishra's Warform and it's a 4/4 Construct artifact creature in addition to its other types. It gains haste until end of turn. Sacrifice it at the beginning of the next end step. diff --git a/forge-gui/res/cardsfolder/m/mishra_excavation_prodigy.txt b/forge-gui/res/cardsfolder/m/mishra_excavation_prodigy.txt index 90d8e63cc24..b8183fc730b 100644 --- a/forge-gui/res/cardsfolder/m/mishra_excavation_prodigy.txt +++ b/forge-gui/res/cardsfolder/m/mishra_excavation_prodigy.txt @@ -6,7 +6,7 @@ K:Haste A:AB$ Draw | Cost$ 1 T Discard<1/Card> | SpellDescription$ Draw a card. T:Mode$ DiscardedAll | ValidPlayer$ You | ValidCard$ Card.Artifact | TriggerZones$ Battlefield | ActivationLimit$ 1 | Execute$ TrigMana | TriggerDescription$ Whenever you discard one or more artifact cards, add {R}{R}. This ability triggers only once each turn. SVar:TrigMana:DB$ Mana | Produced$ R R -DeckHints:Type$Artifact -DeckHas:Ability$Discard SVar:AIPreference:DiscardCost$Card.Artifact +DeckHas:Ability$Discard +DeckHints:Type$Artifact Oracle:Haste\n{1}, {T}, Discard a card: Draw a card.\nWhenever you discard one or more artifact cards, add {R}{R}. This ability triggers only once each turn. diff --git a/forge-gui/res/cardsfolder/m/mishras_command.txt b/forge-gui/res/cardsfolder/m/mishras_command.txt index 1123c55150e..a959f9a948d 100644 --- a/forge-gui/res/cardsfolder/m/mishras_command.txt +++ b/forge-gui/res/cardsfolder/m/mishras_command.txt @@ -8,7 +8,7 @@ SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:DBDamageCreature:DB$ DealDamage | ValidTgts$ Creature | NumDmg$ X | SpellDescription$ This spell deals X damage to target creature. SVar:DBDamagePW:DB$ DealDamage | ValidTgts$ Planeswalker | NumDmg$ X | SpellDescription$ This spell deals X damage to target planeswalker. SVar:DBPump:DB$ Pump | KW$ Haste | ValidTgts$ Creature | NumAtt$ X | SpellDescription$ Target creature gets +X/+0 and gains haste until end of turn. -DeckHas:Ability$Discard & Keyword$Haste SVar:X:Count$xPaid SVar:Y:Count$RememberedSize +DeckHas:Ability$Discard & Keyword$Haste Oracle:Choose two —\n• Choose target player. They may discard up to X cards. Then they draw a card for each card discarded this way.\n• This spell deals X damage to target creature.\n• This spell deals X damage to target planeswalker.\n• Target creature gets +X/+0 and gains haste until end of turn. diff --git a/forge-gui/res/cardsfolder/m/monstrous_war_leech.txt b/forge-gui/res/cardsfolder/m/monstrous_war_leech.txt index a5c262d58e7..9167aa7b064 100644 --- a/forge-gui/res/cardsfolder/m/monstrous_war_leech.txt +++ b/forge-gui/res/cardsfolder/m/monstrous_war_leech.txt @@ -7,7 +7,7 @@ K:ETBReplacement:Other:TrigMill SVar:TrigMill:DB$ Mill | NumCards$ 4 | Defined$ You | Condition$ Kicked | SpellDescription$ As CARDNAME enters, if it was kicked, mill four cards. (To mill a card, put the top card of your library into your graveyard.) S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | SetPower$ X | SetToughness$ X | Description$ CARDNAME's power and toughness are each equal to the highest mana value among cards in your graveyard. SVar:X:Count$ValidGraveyard Card.YouOwn$GreatestCMC -DeckHas:Ability$Graveyard|Mill SVar:NoZeroToughnessAI:True +DeckHas:Ability$Graveyard|Mill DeckHints:Color$Blue Oracle:Kicker {U} (You may pay an additional {U} as you cast this spell.)\nAs Monstrous War-Leech enters, if it was kicked, mill four cards. (To mill a card, put the top card of your library into your graveyard.)\nMonstrous War-Leech's power and toughness are each equal to the highest mana value among cards in your graveyard. diff --git a/forge-gui/res/cardsfolder/m/monument_to_perfection.txt b/forge-gui/res/cardsfolder/m/monument_to_perfection.txt index 414c4899c97..a4df800d0e8 100644 --- a/forge-gui/res/cardsfolder/m/monument_to_perfection.txt +++ b/forge-gui/res/cardsfolder/m/monument_to_perfection.txt @@ -4,6 +4,6 @@ Types:Artifact A:AB$ ChangeZone | Cost$ 3 T | Origin$ Library | Destination$ Hand | ChangeType$ Land.Basic,Land.Locus,Land.Sphere | ChangeTypeDesc$ basic, Sphere, or Locus land card | SpellDescription$ Search your library for a basic, Sphere, or Locus land card, reveal it, put it into your hand, then shuffle. A:AB$ Animate | Cost$ 3 | CheckSVar$ CountAll | SVarCompare$ GE9 | Power$ 9 | Toughness$ 9 | Types$ Artifact,Creature,Phyrexian,Construct | RemoveCreatureTypes$ True | RemoveAllAbilities$ True | Defined$ Self | Keywords$ Indestructible & Toxic:9 | Duration$ Permanent | SpellDescription$ CARDNAME becomes a 9/9 Phyrexian Construct artifact creature, loses all abilities, and gains indestructible and toxic 9. Activate only if there are nine or more lands with different names among the basic, Sphere, and Locus lands you control. SVar:CountAll:Count$DifferentCardNames_Land.YouCtrl+inZoneBattlefield+Basic,Land.YouCtrl+inZoneBattlefield+Sphere,Land.YouCtrl+inZoneBattlefield+Locus -DeckNeeds:Type$Locus|Sphere DeckHas:Type$Phyrexian|Construct|Artifact +DeckNeeds:Type$Locus|Sphere Oracle:{3}, {T}: Search your library for a basic, Sphere, or Locus land card, reveal it, put it into your hand, then shuffle.\n{3}: Monument to Perfection becomes a 9/9 Phyrexian Construct artifact creature, loses all abilities, and gains indestructible and toxic 9. Activate only if there are nine or more lands with different names among the basic, Sphere, and Locus lands you control. diff --git a/forge-gui/res/cardsfolder/m/moonsilver_key.txt b/forge-gui/res/cardsfolder/m/moonsilver_key.txt index 76aea6b96ba..cdf2104150d 100644 --- a/forge-gui/res/cardsfolder/m/moonsilver_key.txt +++ b/forge-gui/res/cardsfolder/m/moonsilver_key.txt @@ -3,6 +3,6 @@ ManaCost:2 Types:Artifact A:AB$ ChangeZone | Cost$ 1 T Sac<1/CARDNAME> | Origin$ Library | Destination$ Hand | ChangeType$ Artifact.hasManaAbility,Land.Basic | ChangeNum$ 1 | ShuffleNonMandatory$ True | StackDescription$ SpellDescription | SpellDescription$ Search your library for an artifact card with a mana ability or a basic land card, reveal it, put it into your hand, then shuffle. AI:RemoveDeck:Random -DeckHints:Type$Artifact DeckHas:Ability$Sacrifice +DeckHints:Type$Artifact Oracle:{1}, {T}, Sacrifice Moonsilver Key: Search your library for an artifact card with a mana ability or a basic land card, reveal it, put it into your hand, then shuffle. diff --git a/forge-gui/res/cardsfolder/m/moorland_haunt.txt b/forge-gui/res/cardsfolder/m/moorland_haunt.txt index d8a082c6988..118a20d88cf 100644 --- a/forge-gui/res/cardsfolder/m/moorland_haunt.txt +++ b/forge-gui/res/cardsfolder/m/moorland_haunt.txt @@ -3,6 +3,6 @@ ManaCost:no cost Types:Land A:AB$ Mana | Cost$ T | Produced$ C | SpellDescription$ Add {C}. A:AB$ Token | Cost$ W U T ExileFromGrave<1/Creature> | CostDesc$ {W}{U}, {T}, Exile a creature card from your graveyard: | TokenScript$ w_1_1_spirit_flying | SpellDescription$ Create a 1/1 white Spirit creature token with flying. -DeckNeeds:Color$White|Blue DeckHas:Ability$Mana.Colorless|Token +DeckNeeds:Color$White|Blue Oracle:{T}: Add {C}.\n{W}{U}, {T}, Exile a creature card from your graveyard: Create a 1/1 white Spirit creature token with flying. diff --git a/forge-gui/res/cardsfolder/m/murktide_regent.txt b/forge-gui/res/cardsfolder/m/murktide_regent.txt index 8d4d5902da2..387298c17c6 100644 --- a/forge-gui/res/cardsfolder/m/murktide_regent.txt +++ b/forge-gui/res/cardsfolder/m/murktide_regent.txt @@ -8,6 +8,6 @@ K:etbCounter:P1P1:X:no Condition:CARDNAME enters with a +1/+1 counter on it for SVar:X:Count$ValidExile Instant.ExiledWithSource,Sorcery.ExiledWithSource T:Mode$ ChangesZone | ValidCard$ Instant.YouOwn,Sorcery.YouOwn | Origin$ Graveyard | Destination$ Any | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever an instant or sorcery card leaves your graveyard, put a +1/+1 counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | CounterType$ P1P1 | CounterNum$ 1 -DeckNeeds:Type$Instant|Sorcery DeckHas:Ability$Counters +DeckNeeds:Type$Instant|Sorcery Oracle:Delve (Each card you exile from your graveyard while casting this spell pays for {1}.)\nFlying\nMurktide Regent enters with a +1/+1 counter on it for each instant and sorcery card exiled with it.\nWhenever an instant or sorcery card leaves your graveyard, put a +1/+1 counter on Murktide Regent. diff --git a/forge-gui/res/cardsfolder/n/nadiers_nightblade.txt b/forge-gui/res/cardsfolder/n/nadiers_nightblade.txt index 9467c44a10c..c6fecb87a06 100644 --- a/forge-gui/res/cardsfolder/n/nadiers_nightblade.txt +++ b/forge-gui/res/cardsfolder/n/nadiers_nightblade.txt @@ -5,6 +5,6 @@ PT:1/3 T:Mode$ ChangesZone | ValidCard$ Card.token+YouCtrl | Origin$ Battlefield | Destination$ Any | Execute$ TrigLoseLife | TriggerZones$ Battlefield | TriggerDescription$ Whenever a token you control leaves the battlefield, each opponent loses 1 life and you gain 1 life. SVar:TrigLoseLife:DB$ LoseLife | Defined$ Opponent | LifeAmount$ 1 | SubAbility$ DBGainLife SVar:DBGainLife:DB$ GainLife | LifeAmount$ 1 -DeckNeeds:Ability$Token DeckHas:Ability$LifeGain +DeckNeeds:Ability$Token Oracle:Whenever a token you control leaves the battlefield, each opponent loses 1 life and you gain 1 life. diff --git a/forge-gui/res/cardsfolder/n/nahiri_the_unforgiving.txt b/forge-gui/res/cardsfolder/n/nahiri_the_unforgiving.txt index ac8a0cba45f..8494c2eef27 100644 --- a/forge-gui/res/cardsfolder/n/nahiri_the_unforgiving.txt +++ b/forge-gui/res/cardsfolder/n/nahiri_the_unforgiving.txt @@ -10,6 +10,6 @@ SVar:DBDraw:DB$ Draw A:AB$ ChangeZone | Cost$ AddCounter<0/LOYALTY> | Planeswalker$ True | SubAbility$ DBCopy | Origin$ Graveyard | RememberChanged$ True | Destination$ Exile | TgtPrompt$ Select target creature or equipment in your graveyard | ValidTgts$ Creature.YouCtrl+cmcLTX,Equipment.YouCtrl+cmcLTX | SpellDescription$ Exile target creature or Equipment card with mana value less than NICKNAME's loyalty from your graveyard. Create a token that's a copy of it. That token gains haste. Exile it at the beginning of the next end step. SVar:DBCopy:DB$ CopyPermanent | Defined$ Remembered | PumpKeywords$ Haste | AtEOT$ Exile | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -DeckHas:Ability$Discard|Token SVar:X:Count$CardCounters.LOYALTY +DeckHas:Ability$Discard|Token Oracle:Compleated ({R/W/P} can be paid with {R}, {W}, or 2 life. If life was paid, this planeswalker enters with two fewer loyalty counters.)\n[+1]: Until your next turn, up to one target creature attacks a player each combat if able.\n[+1]: Discard a card, then draw a card.\n[+0]:Exile target creature or Equipment card with mana value less than Nahiri's loyalty from your graveyard. Create a token that's a copy of it. That token gains haste. Exile it at the beginning of the next end step. diff --git a/forge-gui/res/cardsfolder/n/najal_the_storm_runner.txt b/forge-gui/res/cardsfolder/n/najal_the_storm_runner.txt index 73ad82e0eed..f67f25fd272 100644 --- a/forge-gui/res/cardsfolder/n/najal_the_storm_runner.txt +++ b/forge-gui/res/cardsfolder/n/najal_the_storm_runner.txt @@ -6,6 +6,6 @@ S:Mode$ CastWithFlash | ValidCard$ Sorcery | ValidSA$ Spell | Caster$ You | Desc T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigDelayedTrigger | TriggerDescription$ Whenever CARDNAME attacks, you may pay {2}. If you do, when you cast your next instant or sorcery spell this turn, copy it. You may choose new targets for the copy. SVar:TrigDelayedTrigger:AB$ DelayedTrigger | Cost$ 2 | AILogic$ SpellCopy | Execute$ EffTrigCopy | ThisTurn$ True | Mode$ SpellCast | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | SpellDescription$ When you cast your next instant or sorcery spell this turn, copy that spell. You may choose new targets for the copy. SVar:EffTrigCopy:DB$ CopySpellAbility | Defined$ TriggeredSpellAbility | MayChooseTarget$ True -DeckHints:Type$Instant|Sorcery SVar:HasAttackEffect:TRUE +DeckHints:Type$Instant|Sorcery Oracle:You may cast sorcery spells as though they had flash.\nWhenever Najal, the Storm Runner attacks, you may pay {2}. If you do, when you cast your next instant or sorcery spell this turn, copy it. You may choose new targets for the copy. diff --git a/forge-gui/res/cardsfolder/n/naomi_pillar_of_order.txt b/forge-gui/res/cardsfolder/n/naomi_pillar_of_order.txt index 40d36add9ae..ebea3651276 100644 --- a/forge-gui/res/cardsfolder/n/naomi_pillar_of_order.txt +++ b/forge-gui/res/cardsfolder/n/naomi_pillar_of_order.txt @@ -5,7 +5,7 @@ PT:4/4 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | IsPresent$ Artifact.YouCtrl | IsPresent2$ Enchantment.YouCtrl | Execute$ TrigToken | TriggerDescription$ Whenever CARDNAME enters or attacks, if you control an artifact and an enchantment, create a 2/2 white Samurai creature token with vigilance. T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigToken | IsPresent$ Artifact.YouCtrl | IsPresent2$ Enchantment.YouCtrl | Secondary$ True | TriggerDescription$ Whenever CARDNAME enters or attacks, if you control an artifact and an enchantment, create a 2/2 white Samurai creature token with vigilance. SVar:TrigToken:DB$ Token | TokenScript$ w_2_2_samurai_vigilance -DeckHints:Type$Artifact|Enchantment -DeckHas:Ability$Token & Type$Samurai SVar:HasAttackEffect:TRUE +DeckHas:Ability$Token & Type$Samurai +DeckHints:Type$Artifact|Enchantment Oracle:Whenever Naomi, Pillar of Order enters or attacks, if you control an artifact and an enchantment, create a 2/2 white Samurai creature token with vigilance. diff --git a/forge-gui/res/cardsfolder/n/narset_enlightened_exile.txt b/forge-gui/res/cardsfolder/n/narset_enlightened_exile.txt index 20da623d791..69319f4f2f7 100644 --- a/forge-gui/res/cardsfolder/n/narset_enlightened_exile.txt +++ b/forge-gui/res/cardsfolder/n/narset_enlightened_exile.txt @@ -8,9 +8,9 @@ SVar:TrigExile:DB$ ChangeZone | Origin$ Graveyard | Destination$ Exile | ValidTg SVar:DBPlay:DB$ Play | Defined$ Remembered | CopyCard$ True | Controller$ You | WithoutManaCost$ True | Optional$ True | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Count$CardPower -DeckHints:Type$Instant|Sorcery|Artifact|Enchantment|Battle|Planeswalker -DeckHas:Ability$Graveyard SVar:HasAttackEffect:TRUE SVar:EquipMe:Multiple SVar:EnchantMe:Multiple +DeckHas:Ability$Graveyard +DeckHints:Type$Instant|Sorcery|Artifact|Enchantment|Battle|Planeswalker Oracle:Creatures you control have prowess.\nWhenever Narset, Enlightened Exile attacks, exile target noncreature, nonland card with mana value less than Narset's power from a graveyard and copy it. You may cast the copy without paying its mana cost. diff --git a/forge-gui/res/cardsfolder/n/natural_emergence.txt b/forge-gui/res/cardsfolder/n/natural_emergence.txt index 24fe4e3b611..751e79a98f8 100644 --- a/forge-gui/res/cardsfolder/n/natural_emergence.txt +++ b/forge-gui/res/cardsfolder/n/natural_emergence.txt @@ -5,7 +5,7 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigBounce:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | ChangeType$ Enchantment.YouCtrl+Red,Enchantment.YouCtrl+Green | ChangeNum$ 1 | Mandatory$ True | AILogic$ NeverBounceItself S:Mode$ Continuous | Affected$ Land.YouCtrl | SetPower$ 2 | SetToughness$ 2 | AddType$ Creature | AddKeyword$ First Strike | Description$ Lands you control are 2/2 creatures with first strike. They're still lands. SVar:NeedsToPlay:Enchantment.Red+YouCtrl,Enchantment.Green+YouCtrl -AI:RemoveDeck:Random SVar:NonStackingEffect:True +AI:RemoveDeck:Random DeckNeeds:Type$Enchantment Oracle:When Natural Emergence enters, return a red or green enchantment you control to its owner's hand.\nLands you control are 2/2 creatures with first strike. They're still lands. diff --git a/forge-gui/res/cardsfolder/n/nazgul.txt b/forge-gui/res/cardsfolder/n/nazgul.txt index 437f46f4b4b..dbc570533f1 100644 --- a/forge-gui/res/cardsfolder/n/nazgul.txt +++ b/forge-gui/res/cardsfolder/n/nazgul.txt @@ -8,6 +8,6 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigTempt:DB$ RingTemptsYou T:Mode$ RingTemptsYou | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigCounters | TriggerDescription$ Whenever the Ring tempts you, put a +1/+1 counter on each Wraith you control. SVar:TrigCounters:DB$ PutCounterAll | ValidCards$ Creature.Wraith+YouCtrl | CounterType$ P1P1 | CounterNum$ 1 -DeckNeeds:Name$Nazgûl DeckHas:Ability$Token +DeckNeeds:Name$Nazgûl Oracle:Deathtouch\nWhen Nazgûl enters, the Ring tempts you.\nWhenever the Ring tempts you, put a +1/+1 counter on each Wraith you control.\nA deck can have up to nine cards named Nazgûl. diff --git a/forge-gui/res/cardsfolder/n/necravolver.txt b/forge-gui/res/cardsfolder/n/necravolver.txt index a5e2e0de23b..7bbe0669044 100644 --- a/forge-gui/res/cardsfolder/n/necravolver.txt +++ b/forge-gui/res/cardsfolder/n/necravolver.txt @@ -13,6 +13,6 @@ SVar:PseudoLifelink:Mode$ DamageDealtOnce | ValidSource$ Card.Self | Execute$ Vo SVar:VolverTrigGain:DB$ GainLife | Defined$ You | LifeAmount$ VolverX SVar:VolverX:TriggerCount$DamageAmount AI:RemoveDeck:Random -DeckNeeds:Color$Green|White DeckHas:Ability$Counters +DeckNeeds:Color$Green|White Oracle:Kicker {1}{G} and/or {W} (You may pay an additional {1}{G} and/or {W} as you cast this spell.)\nIf Necravolver was kicked with its {1}{G} kicker, it enters with two +1/+1 counters on it and with trample.\nIf Necravolver was kicked with its {W} kicker, it enters with a +1/+1 counter on it and with "Whenever Necravolver deals damage, you gain that much life." diff --git a/forge-gui/res/cardsfolder/n/necroduality.txt b/forge-gui/res/cardsfolder/n/necroduality.txt index f4ef4707fd7..6ec26820a4d 100644 --- a/forge-gui/res/cardsfolder/n/necroduality.txt +++ b/forge-gui/res/cardsfolder/n/necroduality.txt @@ -4,6 +4,6 @@ Types:Enchantment T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Zombie.nonToken+YouCtrl | TriggerZones$ Battlefield | Execute$ TrigCopy | TriggerDescription$ Whenever a nontoken Zombie you control enters, create a token that's a copy of that creature. SVar:TrigCopy:DB$ CopyPermanent | Defined$ TriggeredCardLKICopy AI:RemoveDeck:Random -DeckNeeds:Type$Zombie DeckHas:Ability$Token +DeckNeeds:Type$Zombie Oracle:Whenever a nontoken Zombie you control enters, create a token that's a copy of that creature. diff --git a/forge-gui/res/cardsfolder/n/necron_monolith.txt b/forge-gui/res/cardsfolder/n/necron_monolith.txt index cca44e2effd..e233458875d 100644 --- a/forge-gui/res/cardsfolder/n/necron_monolith.txt +++ b/forge-gui/res/cardsfolder/n/necron_monolith.txt @@ -10,6 +10,6 @@ SVar:DBToken:DB$ Token | TokenAmount$ X | TokenScript$ b_2_2_a_necron_warrior | SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True K:Crew:4 SVar:X:Remembered$Valid Creature -DeckHas:Ability$Mill|Token & Type$Necron|Warrior SVar:HasAttackEffect:TRUE +DeckHas:Ability$Mill|Token & Type$Necron|Warrior Oracle:Flying, indestructible\nEternity Gate — Whenever Necron Monolith attacks, mill three cards. For each creature card milled this way, create a 2/2 black Necron Warrior artifact creature token.\nCrew 4 (Tap any number of creatures you control with total power 4 or more: This Vehicle becomes an artifact creature until end of turn.) diff --git a/forge-gui/res/cardsfolder/n/necropotence.txt b/forge-gui/res/cardsfolder/n/necropotence.txt index 807f5badb50..398f940b06c 100644 --- a/forge-gui/res/cardsfolder/n/necropotence.txt +++ b/forge-gui/res/cardsfolder/n/necropotence.txt @@ -9,7 +9,7 @@ SVar:DelayedReturn:DB$ DelayedTrigger | Mode$ Phase | Phase$ End of Turn | Valid SVar:TrigReturn:DB$ ChangeZone | Origin$ Exile | Destination$ Hand | Defined$ DelayTriggerRememberedLKI SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:AICastPreference:NeverCastIfLifeBelow$ 7 -AI:RemoveDeck:Random SVar:NonStackingEffect:True +AI:RemoveDeck:Random DeckHints:Ability$LifeGain Oracle:Skip your draw step.\nWhenever you discard a card, exile that card from your graveyard.\nPay 1 life: Exile the top card of your library face down. Put that card into your hand at the beginning of your next end step. diff --git a/forge-gui/res/cardsfolder/n/nemesis_phoenix.txt b/forge-gui/res/cardsfolder/n/nemesis_phoenix.txt index 02feb3b1f41..4fac9edcecb 100644 --- a/forge-gui/res/cardsfolder/n/nemesis_phoenix.txt +++ b/forge-gui/res/cardsfolder/n/nemesis_phoenix.txt @@ -5,9 +5,9 @@ PT:4/2 K:Flying A:AB$ ChangeZone | Cost$ 2 R | ActivationZone$ Graveyard | Origin$ Graveyard | Destination$ Battlefield | Tapped$ True | Attacking$ True | ActivationPhases$ Declare Attackers | CheckSVar$ X | SVarCompare$ GE2 | SpellDescription$ Return CARDNAME from your graveyard to the battlefield tapped and attacking. Activate only during the declare attackers step and only if you're attacking two or more opponents. SVar:X:PlayerCountPropertyYou$OpponentsAttackedThisCombat -AI:RemoveDeck:Random -DeckHints:Keyword$Encore|Myriad -DeckHas:Ability$Graveyard SVar:SacMe:1 SVar:DiscardMe:1 +AI:RemoveDeck:Random +DeckHas:Ability$Graveyard +DeckHints:Keyword$Encore|Myriad Oracle:Flying\n{2}{R}: Return Nemesis Phoenix from your graveyard to the battlefield tapped and attacking. Activate only during the declare attackers step and only if you're attacking two or more opponents. diff --git a/forge-gui/res/cardsfolder/n/nether_shadow.txt b/forge-gui/res/cardsfolder/n/nether_shadow.txt index 36cd7299ff1..dedef568a09 100644 --- a/forge-gui/res/cardsfolder/n/nether_shadow.txt +++ b/forge-gui/res/cardsfolder/n/nether_shadow.txt @@ -7,6 +7,6 @@ T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Graveyard | IsP SVar:TrigReturn:DB$ ChangeZone | Defined$ Self | Origin$ Graveyard | Destination$ Battlefield SVar:DiscardMe:2 SVar:SacMe:2 -DeckHas:Ability$Graveyard SVar:NeedsOrderedGraveyard:TRUE +DeckHas:Ability$Graveyard Oracle:Haste\nAt the beginning of your upkeep, if Nether Shadow is in your graveyard with three or more creature cards above it, you may put Nether Shadow onto the battlefield. diff --git a/forge-gui/res/cardsfolder/n/nevinyrral_urborg_tyrant.txt b/forge-gui/res/cardsfolder/n/nevinyrral_urborg_tyrant.txt index 65f2d9fcf17..bd85382cd5b 100644 --- a/forge-gui/res/cardsfolder/n/nevinyrral_urborg_tyrant.txt +++ b/forge-gui/res/cardsfolder/n/nevinyrral_urborg_tyrant.txt @@ -11,6 +11,6 @@ SVar:X:Count$ThisTurnEntered_Graveyard_from_Battlefield_Creature T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigPayCost | TriggerDescription$ When NICKNAME dies, you may pay {1}. When you do, destroy all artifacts, creatures, and enchantments. SVar:TrigPayCost:AB$ ImmediateTrigger | Cost$ 1 | Execute$ TrigDestroy | TriggerDescription$ When you do, destroy all artifacts, creatures, and enchantments. SVar:TrigDestroy:DB$ DestroyAll | ValidCards$ Artifact,Creature,Enchantment -DeckHas:Ability$Token SVar:NeedsToPlayVar:X GE1 +DeckHas:Ability$Token Oracle:Hexproof from artifacts, creatures, and enchantments\nWhen Nevinyrral, Urborg Tyrant enters, create a tapped 2/2 black Zombie creature token for each creature that died this turn.\nWhen Nevinyrral dies, you may pay {1}. When you do, destroy all artifacts, creatures, and enchantments. diff --git a/forge-gui/res/cardsfolder/n/nimble_hobbit.txt b/forge-gui/res/cardsfolder/n/nimble_hobbit.txt index 5434428eae2..3804c3a6093 100644 --- a/forge-gui/res/cardsfolder/n/nimble_hobbit.txt +++ b/forge-gui/res/cardsfolder/n/nimble_hobbit.txt @@ -7,7 +7,7 @@ SVar:TrigChoice:DB$ GenericChoice | Choices$ PayW,PaySacFood SVar:PayW:DB$ ImmediateTrigger | UnlessCost$ 2 W | UnlessPayer$ You | UnlessSwitched$ True | Execute$ TrigTap | SpellDescription$ pay {2}{W}: When you do, tap target creature an opponent controls. SVar:PaySacFood:DB$ ImmediateTrigger | UnlessCost$ Sac<1/Food> | UnlessPayer$ You | UnlessSwitched$ True | Execute$ TrigTap | SpellDescription$ sacrifice a Food: When you do, tap target creature an opponent controls. SVar:TrigTap:DB$ Tap | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Select target creature an opponent controls +SVar:HasAttackEffect:TRUE DeckHas:Ability$Sacrifice DeckHints:Type$Food -SVar:HasAttackEffect:TRUE Oracle:Whenever Nimble Hobbit attacks, you may sacrifice a Food or pay {2}{W}. When you do, tap target creature an opponent controls. diff --git a/forge-gui/res/cardsfolder/n/nissa_of_shadowed_boughs.txt b/forge-gui/res/cardsfolder/n/nissa_of_shadowed_boughs.txt index 7f71fdbc644..bdac681e40d 100644 --- a/forge-gui/res/cardsfolder/n/nissa_of_shadowed_boughs.txt +++ b/forge-gui/res/cardsfolder/n/nissa_of_shadowed_boughs.txt @@ -8,6 +8,6 @@ A:AB$ Untap | Cost$ AddCounter<1/LOYALTY> | Planeswalker$ True | ValidTgts$ Land SVar:Animate:DB$ Animate | Defined$ Targeted | Power$ 3 | Toughness$ 3 | Types$ Creature,Elemental | Keywords$ Haste & Menace | Optional$ True A:AB$ ChangeZone | Cost$ SubCounter<5/LOYALTY> | Planeswalker$ True | Ultimate$ True | ChangeType$ Creature.YouOwn+cmcLEX | ChangeNum$ 1 | Origin$ Hand,Graveyard | Destination$ Battlefield | WithCountersType$ P1P1 | WithCountersAmount$ 2 | StackDescription$ SpellDescription | SpellDescription$ You may put a creature card with mana value less than or equal to the number of lands you control onto the battlefield from your hand or graveyard with two +1/+1 counters on it. SVar:X:Count$Valid Land.YouCtrl -DeckHas:Ability$Counters|Graveyard SVar:BuffedBy:Land +DeckHas:Ability$Counters|Graveyard Oracle:Landfall — Whenever a land you control enters, put a loyalty counter on Nissa of Shadowed Boughs.\n[+1]: Untap target land you control. You may have it become a 3/3 Elemental creature with haste and menace until end of turn. It's still a land.\n[-5]: You may put a creature card with mana value less than or equal to the number of lands you control onto the battlefield from your hand or graveyard with two +1/+1 counters on it. diff --git a/forge-gui/res/cardsfolder/n/novijen_sages.txt b/forge-gui/res/cardsfolder/n/novijen_sages.txt index 13ebe5b4219..841066d4d68 100644 --- a/forge-gui/res/cardsfolder/n/novijen_sages.txt +++ b/forge-gui/res/cardsfolder/n/novijen_sages.txt @@ -4,6 +4,6 @@ Types:Creature Human Advisor Mutant PT:0/0 K:Graft:4 A:AB$ Draw | Cost$ 1 RemoveAnyCounter<2/P1P1/Creature.YouCtrl/among creatures you control> | NumCards$ 1 | SpellDescription$ Draw a card. -DeckNeeds:Ability$Counters DeckHas:Ability$Counters +DeckNeeds:Ability$Counters Oracle:Graft 4 (This creature enters with four +1/+1 counters on it. Whenever another creature enters, you may move a +1/+1 counter from this creature onto it.)\n{1}, Remove two +1/+1 counters from among creatures you control: Draw a card. diff --git a/forge-gui/res/cardsfolder/n/nykthos_paragon.txt b/forge-gui/res/cardsfolder/n/nykthos_paragon.txt index ae100cb4343..dae7f2d4fe9 100644 --- a/forge-gui/res/cardsfolder/n/nykthos_paragon.txt +++ b/forge-gui/res/cardsfolder/n/nykthos_paragon.txt @@ -5,6 +5,6 @@ PT:4/6 T:Mode$ LifeGained | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigPutCounterAll | ResolvedLimit$ 1 | OptionalDecider$ You | TriggerDescription$ Whenever you gain life, you may put that many +1/+1 counters on each creature you control. Do this only once each turn. SVar:TrigPutCounterAll:DB$ PutCounterAll | ValidCards$ Creature.YouCtrl | CounterType$ P1P1 | CounterNum$ X SVar:X:TriggerCount$LifeAmount -DeckNeeds:Ability$LifeGain DeckHas:Ability$Counters +DeckNeeds:Ability$LifeGain Oracle:Whenever you gain life, you may put that many +1/+1 counters on each creature you control. Do this only once each turn. From 2a342b7e3be07803653a5373d785c68ca881e98b Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 12:10:02 +0100 Subject: [PATCH 25/91] Edit pile cleanup: Line reordering, second pass: part 6, folders 'o' to 'q' (#6309) --- forge-gui/res/cardsfolder/o/obuun_mul_daya_ancestor.txt | 2 +- forge-gui/res/cardsfolder/o/odric_blood_cursed.txt | 2 +- forge-gui/res/cardsfolder/o/ogre_battlecaster.txt | 4 ++-- forge-gui/res/cardsfolder/o/ogre_jailbreaker.txt | 2 +- forge-gui/res/cardsfolder/o/old_man_willow.txt | 2 +- forge-gui/res/cardsfolder/o/old_one_eye.txt | 2 +- forge-gui/res/cardsfolder/o/oliphaunt.txt | 2 +- forge-gui/res/cardsfolder/o/ollenbock_escort.txt | 2 +- forge-gui/res/cardsfolder/o/omnath_locus_of_creation.txt | 2 +- forge-gui/res/cardsfolder/o/omo_queen_of_vesuva.txt | 2 +- forge-gui/res/cardsfolder/o/oonas_blackguard.txt | 2 +- forge-gui/res/cardsfolder/o/orc_general.txt | 2 +- forge-gui/res/cardsfolder/o/orims_thunder.txt | 2 +- forge-gui/res/cardsfolder/o/oriss_samite_guardian.txt | 2 +- forge-gui/res/cardsfolder/o/orochi_merge_keeper.txt | 2 +- forge-gui/res/cardsfolder/o/orvar_the_all_form.txt | 4 ++-- forge-gui/res/cardsfolder/o/otharri_suns_glory.txt | 4 ++-- forge-gui/res/cardsfolder/o/overcooked.txt | 2 +- forge-gui/res/cardsfolder/p/pack_rat.txt | 2 +- forge-gui/res/cardsfolder/p/painwracker_oni.txt | 2 +- forge-gui/res/cardsfolder/p/pako_arcane_retriever.txt | 2 +- forge-gui/res/cardsfolder/p/parish_blade_trainee.txt | 2 +- forge-gui/res/cardsfolder/p/path_of_the_ghosthunter.txt | 2 +- forge-gui/res/cardsfolder/p/pearlspear_courier.txt | 2 +- forge-gui/res/cardsfolder/p/perception_bobblehead.txt | 2 +- forge-gui/res/cardsfolder/p/perrie_the_pulverizer.txt | 2 +- forge-gui/res/cardsfolder/p/phelia_exuberant_shepherd.txt | 2 +- forge-gui/res/cardsfolder/p/phylactery_lich.txt | 2 +- forge-gui/res/cardsfolder/p/phyrexian_dreadnought.txt | 2 +- forge-gui/res/cardsfolder/p/plague_rats.txt | 2 +- forge-gui/res/cardsfolder/p/plague_reaver.txt | 2 +- forge-gui/res/cardsfolder/p/plaguemaw_beast.txt | 2 +- forge-gui/res/cardsfolder/p/plaxcaster_frogling.txt | 4 ++-- forge-gui/res/cardsfolder/p/poetic_ingenuity.txt | 2 +- forge-gui/res/cardsfolder/p/power_plant_worker.txt | 4 ++-- forge-gui/res/cardsfolder/p/poxwalkers.txt | 2 +- forge-gui/res/cardsfolder/p/press_the_enemy.txt | 2 +- forge-gui/res/cardsfolder/p/preston_garvey_minuteman.txt | 2 +- forge-gui/res/cardsfolder/p/primaris_chaplain.txt | 2 +- forge-gui/res/cardsfolder/p/primordial_hydra.txt | 2 +- forge-gui/res/cardsfolder/p/prismari_apprentice.txt | 2 +- forge-gui/res/cardsfolder/p/prized_elephant.txt | 2 +- forge-gui/res/cardsfolder/p/probe.txt | 2 +- forge-gui/res/cardsfolder/p/profts_eidetic_memory.txt | 2 +- forge-gui/res/cardsfolder/p/protect_the_negotiators.txt | 2 +- forge-gui/res/cardsfolder/p/protective_parents.txt | 2 +- forge-gui/res/cardsfolder/p/provisions_merchant.txt | 2 +- forge-gui/res/cardsfolder/p/psionic_ritual.txt | 4 ++-- forge-gui/res/cardsfolder/p/pterodon_knight.txt | 2 +- forge-gui/res/cardsfolder/p/public_thoroughfare.txt | 2 +- forge-gui/res/cardsfolder/p/pugnacious_hammerskull.txt | 2 +- forge-gui/res/cardsfolder/p/pugnacious_pugilist.txt | 2 +- forge-gui/res/cardsfolder/p/purestrain_genestealer.txt | 2 +- forge-gui/res/cardsfolder/p/pyromancer_ascension.txt | 4 ++-- forge-gui/res/cardsfolder/q/quest_for_ancient_secrets.txt | 2 +- forge-gui/res/cardsfolder/q/quest_for_pure_flame.txt | 2 +- forge-gui/res/cardsfolder/q/quest_for_the_gemblades.txt | 2 +- forge-gui/res/cardsfolder/q/quest_for_the_goblin_lord.txt | 2 +- forge-gui/res/cardsfolder/q/quest_for_the_holy_relic.txt | 6 +++--- forge-gui/res/cardsfolder/q/quest_for_the_necropolis.txt | 2 +- forge-gui/res/cardsfolder/q/quest_for_the_nihil_stone.txt | 2 +- forge-gui/res/cardsfolder/q/quest_for_ulas_temple.txt | 2 +- 62 files changed, 71 insertions(+), 71 deletions(-) diff --git a/forge-gui/res/cardsfolder/o/obuun_mul_daya_ancestor.txt b/forge-gui/res/cardsfolder/o/obuun_mul_daya_ancestor.txt index a06ce049f2f..13bc1fd611e 100644 --- a/forge-gui/res/cardsfolder/o/obuun_mul_daya_ancestor.txt +++ b/forge-gui/res/cardsfolder/o/obuun_mul_daya_ancestor.txt @@ -7,6 +7,6 @@ SVar:TrigAnimate:DB$ Animate | ValidTgts$ Land.YouCtrl | TargetMin$ 0 | TargetMa T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Landfall — Whenever a land you control enters, put a +1/+1 counter on target creature. SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature | TgtPrompt$ Select target creature | CounterType$ P1P1 | CounterNum$ 1 SVar:X:Count$CardPower -DeckHas:Ability$Counters SVar:BuffedBy:Land +DeckHas:Ability$Counters Oracle:At the beginning of combat on your turn, up to one target land you control becomes an X/X Elemental creature with trample and haste until end of turn, where X is Obuun's power. It's still a land.\nLandfall — Whenever a land you control enters, put a +1/+1 counter on target creature. diff --git a/forge-gui/res/cardsfolder/o/odric_blood_cursed.txt b/forge-gui/res/cardsfolder/o/odric_blood_cursed.txt index 5b0468e6bc2..46cf204fe8d 100644 --- a/forge-gui/res/cardsfolder/o/odric_blood_cursed.txt +++ b/forge-gui/res/cardsfolder/o/odric_blood_cursed.txt @@ -5,6 +5,6 @@ PT:3/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME enters, create X Blood tokens, where X is the number of abilities from among flying, first strike, double strike, deathtouch, haste, hexproof, indestructible, lifelink, menace, reach, trample, and vigilance found among creatures you control. (Count each ability only once.) SVar:TrigToken:DB$ Token | TokenAmount$ X | TokenScript$ c_a_blood_draw SVar:X:Count$AbilityYouCtrl Flying,First Strike,Double Strike,Deathtouch,Haste,Hexproof,Indestructible,Lifelink,Menace,Reach,Trample,Vigilance -DeckHas:Ability$Token|Sacrifice & Type$Blood SVar:BuffedBy:Creature.withFlying,Creature.withFirst Strike,Creature.withDouble Strike,Creature.withDeathtouch,Creature.withHaste,Creature.withHexproof,Creature.withIndestructible,Creature.withLifelink,Creature.withMenace,Creature.withReach,Creature.withTrample,Creature.withVigilance +DeckHas:Ability$Token|Sacrifice & Type$Blood Oracle:When Odric, Blood-Cursed enters, create X Blood tokens, where X is the number of abilities from among flying, first strike, double strike, deathtouch, haste, hexproof, indestructible, lifelink, menace, reach, trample, and vigilance found among creatures you control. (Count each ability only once.) diff --git a/forge-gui/res/cardsfolder/o/ogre_battlecaster.txt b/forge-gui/res/cardsfolder/o/ogre_battlecaster.txt index 78e83e004f5..6a2e7e9af0c 100644 --- a/forge-gui/res/cardsfolder/o/ogre_battlecaster.txt +++ b/forge-gui/res/cardsfolder/o/ogre_battlecaster.txt @@ -9,8 +9,8 @@ SVar:TrigDT:DB$ ImmediateTrigger | Execute$ TrigPump | RememberObjects$ Remember SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:TrigPump:DB$ Pump | Defined$ Self | NumAtt$ +X SVar:X:TriggerRemembered$CardManaCostLKI -AI:RemoveDeck:All SVar:HasAttackEffect:TRUE -DeckHints:Type$Instant|Sorcery +AI:RemoveDeck:All DeckHas:Ability$Graveyard +DeckHints:Type$Instant|Sorcery Oracle:First strike\nWhenever Ogre Battlecaster attacks, you may cast target instant or sorcery card from your graveyard by paying {R}{R} in addition to its other costs. If that spell would be put into a graveyard, exile it instead. When you cast that spell, Ogre Battlecaster gets +X/+0 until end of turn, where X is that spell's mana value. diff --git a/forge-gui/res/cardsfolder/o/ogre_jailbreaker.txt b/forge-gui/res/cardsfolder/o/ogre_jailbreaker.txt index 279ecd27a7a..d7c521dd013 100644 --- a/forge-gui/res/cardsfolder/o/ogre_jailbreaker.txt +++ b/forge-gui/res/cardsfolder/o/ogre_jailbreaker.txt @@ -4,6 +4,6 @@ Types:Creature Ogre Rogue PT:4/4 K:Defender S:Mode$ CanAttackDefender | ValidCard$ Card.Self | IsPresent$ Gate.YouCtrl | Description$ CARDNAME can attack as though it didn't have defender as long as you control a Gate. -DeckNeeds:Type$Gate SVar:BuffedBy:Gate +DeckNeeds:Type$Gate Oracle:Defender\nOgre Jailbreaker can attack as though it didn't have defender as long as you control a Gate. diff --git a/forge-gui/res/cardsfolder/o/old_man_willow.txt b/forge-gui/res/cardsfolder/o/old_man_willow.txt index c039ec58c15..b7e68115fb3 100644 --- a/forge-gui/res/cardsfolder/o/old_man_willow.txt +++ b/forge-gui/res/cardsfolder/o/old_man_willow.txt @@ -7,7 +7,7 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigImmediate | TriggerZones$ SVar:TrigImmediate:AB$ ImmediateTrigger | Cost$ Sac<1/Creature.Other;Card.token/another creature or token> | Execute$ TrigDebuff | TriggerDescription$ When you do, target creature an opponent controls gets -2/-2 until end of turn. SVar:TrigDebuff:DB$ Pump | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Select target creature an opponent controls | NumAtt$ -2 | NumDef$ -2 | IsCurse$ True SVar:X:Count$Valid Land.YouCtrl +SVar:HasAttackEffect:TRUE DeckHas:Ability$Sacrifice DeckHints:Ability$Token -SVar:HasAttackEffect:TRUE Oracle:Old Man Willow's power and toughness are each equal to the number of lands you control.\nWhenever Old Man Willow attacks, you may sacrifice another creature or a token. When you do, target creature an opponent controls gets -2/-2 until end of turn. diff --git a/forge-gui/res/cardsfolder/o/old_one_eye.txt b/forge-gui/res/cardsfolder/o/old_one_eye.txt index 09d5e4b9fc1..236cb37c12c 100644 --- a/forge-gui/res/cardsfolder/o/old_one_eye.txt +++ b/forge-gui/res/cardsfolder/o/old_one_eye.txt @@ -8,6 +8,6 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ g_5_5_tyranid | TokenOwner$ You T:Mode$ Phase | Phase$ Main1 | ValidPlayer$ You | IsPresent$ Card.StrictlySelf | TriggerZones$ Graveyard | PresentZone$ Graveyard | PresentPlayer$ You | Execute$ TrigReturn | TriggerDescription$ Fast Healing — At the beginning of your first main phase, you may discard two cards. If you do, return CARDNAME from your graveyard to your hand. SVar:TrigReturn:AB$ ChangeZone | Cost$ Discard<2/Card> | Defined$ Self | Origin$ Graveyard | Destination$ Hand -DeckHas:Ability$Graveyard|Discard|Token & Keyword$Trample SVar:PlayMain1:TRUE +DeckHas:Ability$Graveyard|Discard|Token & Keyword$Trample Oracle:Trample\nOther creatures you control have trample.\nWhen Old One Eye enters, create a 5/5 green Tyranid creature token.\nFast Healing — At the beginning of your first main phase, you may discard two cards. If you do, return Old One Eye from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/o/oliphaunt.txt b/forge-gui/res/cardsfolder/o/oliphaunt.txt index a5a68bd38a5..8e445479f5c 100644 --- a/forge-gui/res/cardsfolder/o/oliphaunt.txt +++ b/forge-gui/res/cardsfolder/o/oliphaunt.txt @@ -6,6 +6,6 @@ K:Trample T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPump | TriggerZones$ Battlefield | TriggerDescription$ Whenever CARDNAME attacks, another target creature you control gets +2/+0 and gains trample until end of turn. SVar:TrigPump:DB$ Pump | ValidTgts$ Creature.YouCtrl+Other | TgtPrompt$ Select another target creature you control | KW$ Trample | NumAtt$ +2 K:TypeCycling:Mountain:1 -DeckHas:Ability$Discard SVar:HasAttackEffect:TRUE +DeckHas:Ability$Discard Oracle:Trample\nWhenever Oliphaunt attacks, another target creature you control gets +2/+0 and gains trample until end of turn.\nMountaincycling {1} ({1}, Discard this card: Search your library for a mountain card, reveal it, put it into your hand, then shuffle.) diff --git a/forge-gui/res/cardsfolder/o/ollenbock_escort.txt b/forge-gui/res/cardsfolder/o/ollenbock_escort.txt index 05cb3d078e6..610accde245 100644 --- a/forge-gui/res/cardsfolder/o/ollenbock_escort.txt +++ b/forge-gui/res/cardsfolder/o/ollenbock_escort.txt @@ -5,6 +5,6 @@ PT:1/1 K:Vigilance A:AB$ Pump | Cost$ Sac<1/CARDNAME> | ValidTgts$ Creature.YouCtrl+counters_GE1_P1P1 | TgtPrompt$ Select target creature you control with a +1/+1 counter on it | KW$ Lifelink & Indestructible | SpellDescription$ Target creature you control with a +1/+1 counter on it gains lifelink and indestructible until end of turn. AI:RemoveDeck:Random -DeckNeeds:Ability$Counters DeckHas:Ability$Sacrifice|LifeGain +DeckNeeds:Ability$Counters Oracle:Vigilance\nSacrifice Ollenbock Escort: Target creature you control with a +1/+1 counter on it gains lifelink and indestructible until end of turn. diff --git a/forge-gui/res/cardsfolder/o/omnath_locus_of_creation.txt b/forge-gui/res/cardsfolder/o/omnath_locus_of_creation.txt index f4b3ad92957..9dbc9f1d278 100644 --- a/forge-gui/res/cardsfolder/o/omnath_locus_of_creation.txt +++ b/forge-gui/res/cardsfolder/o/omnath_locus_of_creation.txt @@ -9,6 +9,6 @@ SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ 4 | ConditionCheckSVar SVar:DBMana:DB$ Mana | Produced$ R G W U | ConditionCheckSVar$ LandfallAmount | ConditionSVarCompare$ EQ2 | SubAbility$ DBDamageAll SVar:DBDamageAll:DB$ DamageAll | ValidPlayers$ Opponent | ValidCards$ Planeswalker.YouDontCtrl | NumDmg$ 4 | ConditionCheckSVar$ LandfallAmount | ConditionSVarCompare$ EQ3 SVar:LandfallAmount:Count$ResolvedThisTurn -DeckHas:Ability$LifeGain SVar:BuffedBy:Land +DeckHas:Ability$LifeGain Oracle:When Omnath, Locus of Creation enters, draw a card.\nLandfall — Whenever a land you control enters, you gain 4 life if this is the first time this ability has resolved this turn. If it's the second time, add {R}{G}{W}{U}. If it's the third time, Omnath deals 4 damage to each opponent and each planeswalker you don't control. diff --git a/forge-gui/res/cardsfolder/o/omo_queen_of_vesuva.txt b/forge-gui/res/cardsfolder/o/omo_queen_of_vesuva.txt index 41dbe082bdd..cd6afb7eb91 100644 --- a/forge-gui/res/cardsfolder/o/omo_queen_of_vesuva.txt +++ b/forge-gui/res/cardsfolder/o/omo_queen_of_vesuva.txt @@ -8,6 +8,6 @@ SVar:TrigPutCounter:DB$ PutCounter | TargetMin$ 0 | TargetMax$ 1 | ValidTgts$ La SVar:DBPutCounter:DB$ PutCounter | TargetMin$ 0 | TargetMax$ 1 | ValidTgts$ Creature | TgtPrompt$ Select up to one target creature | CounterType$ EVERYTHING | CounterNum$ 1 S:Mode$ Continuous | Affected$ Land.counters_GE1_EVERYTHING | AddType$ AllBasicLandType & AllNonBasicLandType | Description$ Each land with an everything counter on it is every land type in addition to its other types. S:Mode$ Continuous | Affected$ Creature.nonLand+counters_GE1_EVERYTHING | AddAllCreatureTypes$ True | Description$ Each nonland creature with an everything counter on it is every creature type. -DeckHas:Ability$Counters SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters Oracle:Whenever Omo, Queen of Vesuva enters or attacks, put an everything counter on each of up to one target land and up to one target creature.\nEach land with an everything counter on it is every land type in addition to its other types.\nEach nonland creature with an everything counter on it is every creature type. diff --git a/forge-gui/res/cardsfolder/o/oonas_blackguard.txt b/forge-gui/res/cardsfolder/o/oonas_blackguard.txt index f6b498eee9b..b9f47fd12ee 100644 --- a/forge-gui/res/cardsfolder/o/oonas_blackguard.txt +++ b/forge-gui/res/cardsfolder/o/oonas_blackguard.txt @@ -8,6 +8,6 @@ SVar:AddExtraCounter:DB$ PutCounter | ETB$ True | Defined$ ReplacedCard | Counte T:Mode$ DamageDone | ValidSource$ Creature.YouCtrl+counters_GE1_P1P1 | ValidTarget$ Player | TriggerZones$ Battlefield | CombatDamage$ True | Execute$ TrigDiscardOpp | TriggerDescription$ Whenever a creature you control with a +1/+1 counter on it deals combat damage to a player, that player discards a card. SVar:TrigDiscardOpp:DB$ Discard | Defined$ TriggeredTarget | NumCards$ 1 | Mode$ TgtChoose SVar:PlayMain1:TRUE -DeckNeeds:Type$Rogue DeckHas:Ability$Discard|Counters +DeckNeeds:Type$Rogue Oracle:Flying\nEach other Rogue creature you control enters with an additional +1/+1 counter on it.\nWhenever a creature you control with a +1/+1 counter on it deals combat damage to a player, that player discards a card. diff --git a/forge-gui/res/cardsfolder/o/orc_general.txt b/forge-gui/res/cardsfolder/o/orc_general.txt index dd69d5c02b5..bcfee0f5f0d 100644 --- a/forge-gui/res/cardsfolder/o/orc_general.txt +++ b/forge-gui/res/cardsfolder/o/orc_general.txt @@ -4,7 +4,7 @@ Types:Creature Orc Warrior PT:2/2 A:AB$ PumpAll | Cost$ T Sac<1/Goblin.Other;Orc.Other/another Orc or Goblin> | ValidCards$ Creature.Orc+StrictlyOther | NumAtt$ +1 | NumDef$ +1 | SpellDescription$ Other Orc creatures get +1/+1 until end of turn. AI:RemoveDeck:Random +DeckHas:Ability$Sacrifice DeckHints:Type$Goblin DeckNeeds:Type$Orc -DeckHas:Ability$Sacrifice Oracle:{T}, Sacrifice another Orc or Goblin: Other Orc creatures get +1/+1 until end of turn. diff --git a/forge-gui/res/cardsfolder/o/orims_thunder.txt b/forge-gui/res/cardsfolder/o/orims_thunder.txt index 73acaa02ac0..6bc73931eb9 100644 --- a/forge-gui/res/cardsfolder/o/orims_thunder.txt +++ b/forge-gui/res/cardsfolder/o/orims_thunder.txt @@ -6,6 +6,6 @@ A:SP$ Destroy | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select target artif SVar:DBDamage:DB$ DealDamage | Condition$ Kicked | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumDmg$ X | TargetMin$ Y | TargetMax$ Y | SpellDescription$ If CARDNAME was kicked, it deals damage equal to that permanent's mana value to target creature. SVar:X:Targeted$CardManaCost SVar:Y:Count$Kicked.1.0 -DeckHints:Color$Red SVar:NeedsToPlay:Creature.OppCtrl +DeckHints:Color$Red Oracle:Kicker {R} (You may pay an additional {R} as you cast this spell.)\nDestroy target artifact or enchantment. If this spell was kicked, it deals damage equal to that permanent's mana value to target creature. diff --git a/forge-gui/res/cardsfolder/o/oriss_samite_guardian.txt b/forge-gui/res/cardsfolder/o/oriss_samite_guardian.txt index 6d1617e3d32..9053a76c208 100644 --- a/forge-gui/res/cardsfolder/o/oriss_samite_guardian.txt +++ b/forge-gui/res/cardsfolder/o/oriss_samite_guardian.txt @@ -6,7 +6,7 @@ A:AB$ Pump | Cost$ T | KW$ Prevent all damage that would be dealt to CARDNAME. | A:AB$ Effect | Cost$ Discard<1/Card.namedOriss, Samite Guardian> | CostDesc$ Grandeur — Discard another card named Oriss, Samite Guardian: | IsCurse$ True | StaticAbilities$ CantBeCast,CantAttack | ValidTgts$ Player | RememberObjects$ Targeted | AILogic$ BeginningOfOppTurn | SpellDescription$ Target player can't cast spells this turn, and creatures that player controls can't attack this turn. SVar:CantBeCast:Mode$ CantBeCast | EffectZone$ Command | ValidCard$ Card | Caster$ Player.IsRemembered | Description$ Targeted player can't cast spells this turn. SVar:CantAttack:Mode$ CantAttack | EffectZone$ Command | ValidCard$ Creature.RememberedPlayerCtrl | Description$ Creatures targeted player controls can't attack this turn. -AI:RemoveDeck:All SVar:NonCombatPriority:2 +AI:RemoveDeck:All DeckHints:Name$Oriss, Samite Guardian Oracle:{T}: Prevent all damage that would be dealt to target creature this turn.\nGrandeur — Discard another card named Oriss, Samite Guardian: Target player can't cast spells this turn, and creatures that player controls can't attack this turn. diff --git a/forge-gui/res/cardsfolder/o/orochi_merge_keeper.txt b/forge-gui/res/cardsfolder/o/orochi_merge_keeper.txt index b1f868b66f5..220fe6d071f 100644 --- a/forge-gui/res/cardsfolder/o/orochi_merge_keeper.txt +++ b/forge-gui/res/cardsfolder/o/orochi_merge_keeper.txt @@ -5,7 +5,7 @@ PT:1/1 A:AB$ Mana | Cost$ T | Produced$ G | SpellDescription$ Add {G}. S:Mode$ Continuous | Affected$ Card.Self+modified | AddAbility$ ManaGG | Description$ As long as CARDNAME is modified, it has "{T}: Add {G}{G}." (Equipment, Auras you control, and counters are modifications.) SVar:ManaGG:AB$ Mana | Cost$ T | Produced$ G | Amount$ 2 | SpellDescription$ Add {G}{G}. -DeckHints:Type$Equipment|Aura & Ability$Counters SVar:EquipMe:Once SVar:EnchantMe:Once +DeckHints:Type$Equipment|Aura & Ability$Counters Oracle:{T}: Add {G}.\nAs long as Orochi Merge-Keeper is modified, it has "{T}: Add {G}{G}." (Equipment, Auras you control, and counters are modifications.) diff --git a/forge-gui/res/cardsfolder/o/orvar_the_all_form.txt b/forge-gui/res/cardsfolder/o/orvar_the_all_form.txt index 1cf4072b098..deabb9ba1b1 100644 --- a/forge-gui/res/cardsfolder/o/orvar_the_all_form.txt +++ b/forge-gui/res/cardsfolder/o/orvar_the_all_form.txt @@ -7,7 +7,7 @@ T:Mode$ SpellCast | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | Tr SVar:TrigCopyTarget:DB$ CopyPermanent | Defined$ TriggeredSpellAbilityTargets | Choices$ Permanent.YouCtrl+Other | ConditionDefined$ TriggeredSpellAbility | ConditionPresent$ Spell.IsTargeting Valid Permanent.YouCtrl~Other T:Mode$ Discarded | ValidCard$ Card.Self | ValidCause$ SpellAbility.OppCtrl | Execute$ TrigTokenCopy | TriggerDescription$ When a spell or ability an opponent controls causes you to discard this card, create a token that's a copy of target permanent. SVar:TrigTokenCopy:DB$ CopyPermanent | ValidTgts$ Permanent -DeckHints:Type$Instant|Sorcery -DeckHas:Ability$Token SVar:DiscardMeByOpp:1 +DeckHas:Ability$Token +DeckHints:Type$Instant|Sorcery Oracle:Changeling\nWhenever you cast an instant or sorcery spell, if it targets one or more other permanents you control, create a token that's a copy of one of those permanents.\nWhen a spell or ability an opponent controls causes you to discard this card, create a token that's a copy of target permanent. diff --git a/forge-gui/res/cardsfolder/o/otharri_suns_glory.txt b/forge-gui/res/cardsfolder/o/otharri_suns_glory.txt index b100990ddfc..58cca24ef90 100644 --- a/forge-gui/res/cardsfolder/o/otharri_suns_glory.txt +++ b/forge-gui/res/cardsfolder/o/otharri_suns_glory.txt @@ -10,9 +10,9 @@ SVar:TrigExperience:DB$ PutCounter | Defined$ You | CounterType$ Experience | Co SVar:DBToken:DB$ Token | TokenScript$ r_2_2_rebel | TokenOwner$ You | TokenAmount$ X | TokenAttacking$ True | TokenTapped$ True | SpellDescription$ Then create a 2/2 red Rebel creature token that's tapped and attacking for each experience counter you have. A:AB$ ChangeZone | Cost$ 2 R W tapXType<1/Rebel> | Origin$ Graveyard | Destination$ Battlefield | Tapped$ True | ActivationZone$ Graveyard | SpellDescription$ Return NICKNAME from your graveyard to the battlefield tapped. SVar:X:Count$YourCountersExperience -DeckHas:Ability$Graveyard|Counters|Token & Type$Rebel -DeckHints:Type$Rebel SVar:HasAttackEffect:TRUE SVar:DiscardMe:2 SVar:SacMe:1 +DeckHas:Ability$Graveyard|Counters|Token & Type$Rebel +DeckHints:Type$Rebel Oracle:Flying, lifelink, haste\nWhenever 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.\n{2}{R}{W}, Tap an untapped Rebel you control: Return Otharri from your graveyard to the battlefield tapped. diff --git a/forge-gui/res/cardsfolder/o/overcooked.txt b/forge-gui/res/cardsfolder/o/overcooked.txt index 1b1672cdfb0..7506ddd1a4f 100644 --- a/forge-gui/res/cardsfolder/o/overcooked.txt +++ b/forge-gui/res/cardsfolder/o/overcooked.txt @@ -6,6 +6,6 @@ T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefiel SVar:TrigBranch:DB$ Branch | BranchConditionSVar$ Celebration | BranchConditionSVarCompare$ GE2 | TrueSubAbility$ DBConjure | FalseSubAbility$ DBFood SVar:DBFood:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_food_sac SVar:DBConjure:DB$ MakeCard | Conjure$ True | Name$ Food Fight | Zone$ Battlefield -DeckHas:Ability$Token & Type$Food SVar:Celebration:Count$ThisTurnEntered_Battlefield_Permanent.nonLand+YouCtrl +DeckHas:Ability$Token & Type$Food Oracle:Players can't gain life.\nCelebration — At the beginning of your end step, create a Food token. If two or more nonland permanents entered the battlefield under your control this turn, instead conjure a card named Food Fight onto the battlefield. diff --git a/forge-gui/res/cardsfolder/p/pack_rat.txt b/forge-gui/res/cardsfolder/p/pack_rat.txt index 10bde225a7f..d77263d6e7f 100644 --- a/forge-gui/res/cardsfolder/p/pack_rat.txt +++ b/forge-gui/res/cardsfolder/p/pack_rat.txt @@ -6,6 +6,6 @@ S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | SetPower$ A:AB$ CopyPermanent | Cost$ 2 B Discard<1/Card> | Defined$ Self | NumCopies$ 1 | SpellDescription$ Create a token that's a copy of CARDNAME. SVar:X:Count$Valid Rat.YouCtrl SVar:BuffedBy:Rat -DeckHints:Type$Rat SVar:NoZeroToughnessAI:True +DeckHints:Type$Rat Oracle:Pack Rat's power and toughness are each equal to the number of Rats you control.\n{2}{B}, Discard a card: Create a token that's a copy of Pack Rat. diff --git a/forge-gui/res/cardsfolder/p/painwracker_oni.txt b/forge-gui/res/cardsfolder/p/painwracker_oni.txt index c0582a60f81..0b5396c54ed 100644 --- a/forge-gui/res/cardsfolder/p/painwracker_oni.txt +++ b/forge-gui/res/cardsfolder/p/painwracker_oni.txt @@ -5,7 +5,7 @@ PT:5/4 K:Fear T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ TrigSac | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of your upkeep, sacrifice a creature if you don't control an Ogre. SVar:TrigSac:DB$ Sacrifice | SacValid$ Creature | Defined$ You | ConditionPresent$ Ogre.YouCtrl | ConditionCompare$ EQ0 -AI:RemoveDeck:Random SVar:NeedsToPlay:Ogre.YouCtrl +AI:RemoveDeck:Random DeckHints:Type$Ogre Oracle:Fear (This creature can't be blocked except by artifact creatures and/or black creatures.)\nAt the beginning of your upkeep, sacrifice a creature if you don't control an Ogre. diff --git a/forge-gui/res/cardsfolder/p/pako_arcane_retriever.txt b/forge-gui/res/cardsfolder/p/pako_arcane_retriever.txt index f13511b78c0..634293f9a2c 100644 --- a/forge-gui/res/cardsfolder/p/pako_arcane_retriever.txt +++ b/forge-gui/res/cardsfolder/p/pako_arcane_retriever.txt @@ -9,7 +9,7 @@ SVar:TrigExile:DB$ Dig | DigNum$ 1 | ChangeNum$ All | Defined$ Player | Destinat SVar:DBPutCounter:DB$ PutCounter | CounterType$ P1P1 | CounterNum$ X | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Count$ValidExile Card.IsRemembered+nonCreature -DeckHas:Ability$Counters SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters DeckHints:Name$Haldan, Avid Arcanist Oracle:Partner with Haldan, Avid Arcanist\nHaste\nWhenever Pako, Arcane Retriever attacks, exile the top card of each player's library and put a fetch counter on each of them. Put a +1/+1 counter on Pako for each noncreature card exiled this way. diff --git a/forge-gui/res/cardsfolder/p/parish_blade_trainee.txt b/forge-gui/res/cardsfolder/p/parish_blade_trainee.txt index 73a58da5dce..0b033cbb1ea 100644 --- a/forge-gui/res/cardsfolder/p/parish_blade_trainee.txt +++ b/forge-gui/res/cardsfolder/p/parish_blade_trainee.txt @@ -5,6 +5,6 @@ PT:1/2 K:Training T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigPutCounter | TriggerDescription$ When CARDNAME dies, put its counters on target creature you control. SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterType$ EachFromSource | EachFromSource$ TriggeredCardLKICopy -DeckHas:Ability$Counters SVar:SacMe:2 +DeckHas:Ability$Counters Oracle:Training\nWhen Parish-Blade Trainee dies, put its counters on target creature you control. diff --git a/forge-gui/res/cardsfolder/p/path_of_the_ghosthunter.txt b/forge-gui/res/cardsfolder/p/path_of_the_ghosthunter.txt index e511fd72cd3..f44389b30b5 100644 --- a/forge-gui/res/cardsfolder/p/path_of_the_ghosthunter.txt +++ b/forge-gui/res/cardsfolder/p/path_of_the_ghosthunter.txt @@ -6,6 +6,6 @@ SVar:DBSpace:DB$ BlankLine | SubAbility$ DBVote | SpellDescription$ ,,,,,, SVar:DBVote:DB$ Vote | Defined$ Player | VoteType$ Planeswalk,Chaos | VotePlaneswalk$ DBPlaneswalk | VoteChaos$ DBChaos | Tied$ DBChaos | StackDescription$ SpellDescription | SpellDescription$ Will of the Planeswalkers — Starting with you, each player votes for planeswalk or chaos. If planeswalk gets more votes, planeswalk. If chaos gets more votes or the vote is tied, chaos ensues. SVar:DBPlaneswalk:DB$ Planeswalk SVar:DBChaos:DB$ ChaosEnsues -DeckHas:Ability$Token & Type$Spirit SVar:X:Count$xPaid +DeckHas:Ability$Token & Type$Spirit Oracle:Create X 1/1 white Spirit creature tokens with flying.\nWill of the Planeswalkers — Starting with you, each player votes for planeswalk or chaos. If planeswalk gets more votes, planeswalk. If chaos gets more votes or the vote is tied, chaos ensues. diff --git a/forge-gui/res/cardsfolder/p/pearlspear_courier.txt b/forge-gui/res/cardsfolder/p/pearlspear_courier.txt index 959154ff844..c7aff07c49d 100644 --- a/forge-gui/res/cardsfolder/p/pearlspear_courier.txt +++ b/forge-gui/res/cardsfolder/p/pearlspear_courier.txt @@ -4,6 +4,6 @@ Types:Creature Human Soldier PT:2/1 K:You may choose not to untap CARDNAME during your untap step. A:AB$ Pump | Cost$ 2 W T | ValidTgts$ Creature.Soldier | TgtPrompt$ Select target Soldier creature | NumAtt$ 2 | NumDef$ 2 | KW$ Vigilance | Duration$ UntilUntaps | AILogic$ ContinuousBonus | SpellDescription$ Target Soldier creature gets +2/+2 and has vigilance for as long as CARDNAME remains tapped. -DeckNeeds:Type$Soldier SVar:AIUntapPreference:BetterTgtThanRemembered +DeckNeeds:Type$Soldier Oracle:You may choose not to untap Pearlspear Courier during your untap step.\n{2}{W}, {T}: Target Soldier creature gets +2/+2 and has vigilance for as long as Pearlspear Courier remains tapped. diff --git a/forge-gui/res/cardsfolder/p/perception_bobblehead.txt b/forge-gui/res/cardsfolder/p/perception_bobblehead.txt index f182ec84e12..256c177b1c8 100644 --- a/forge-gui/res/cardsfolder/p/perception_bobblehead.txt +++ b/forge-gui/res/cardsfolder/p/perception_bobblehead.txt @@ -7,6 +7,6 @@ SVar:DBPlay:DB$ Play | ValidZone$ Library | Valid$ Card.IsRemembered | ValidSA$ SVar:DBRestRandomOrder:DB$ ChangeZoneAll | ChangeType$ Card.IsRemembered | Origin$ Library | Destination$ Library | LibraryPosition$ -1 | RandomOrder$ True | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Count$Valid Bobblehead.YouCtrl -DeckNeeds:Type$Bobblehead DeckHas:Ability$Token & Type$Soldier +DeckNeeds:Type$Bobblehead Oracle:{T}: Add one mana of any color.\n{3}, {T}: Look at the top X cards of your library, where X is the number of Bobbleheads you control. You may cast a spell with mana value 3 or less from among them without paying its mana cost. Put the rest on the bottom of your library in a random order. diff --git a/forge-gui/res/cardsfolder/p/perrie_the_pulverizer.txt b/forge-gui/res/cardsfolder/p/perrie_the_pulverizer.txt index 0e35af04717..fc65d66684e 100644 --- a/forge-gui/res/cardsfolder/p/perrie_the_pulverizer.txt +++ b/forge-gui/res/cardsfolder/p/perrie_the_pulverizer.txt @@ -8,7 +8,7 @@ SVar:PlayMain1:TRUE T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ Whenever NICKNAME attacks, target creature you control gains trample and gets +X/+X, where X is the number of different kinds of counters among permanents you control. SVar:TrigPump:DB$ Pump | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | KW$ Trample | NumAtt$ +X | NumDef$ +X SVar:X:Count$DifferentCounterKinds_Permanent.YouCtrl -DeckHas:Ability$Counters SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters DeckHints:Type$Planeswalker & Keyword$Devour|Modular|Fading Oracle:When Perrie enters, put a shield counter on target creature. (If it would be dealt damage or destroyed, remove a shield counter from it instead.)\nWhenever Perrie attacks, target creature you control gains trample and gets +X/+X, where X is the number of different kinds of counters among permanents you control. diff --git a/forge-gui/res/cardsfolder/p/phelia_exuberant_shepherd.txt b/forge-gui/res/cardsfolder/p/phelia_exuberant_shepherd.txt index b3d2e10f3d2..b3dbd9a7d57 100644 --- a/forge-gui/res/cardsfolder/p/phelia_exuberant_shepherd.txt +++ b/forge-gui/res/cardsfolder/p/phelia_exuberant_shepherd.txt @@ -9,6 +9,6 @@ SVar:DelTrig:DB$ DelayedTrigger | Mode$ Phase | Phase$ End of Turn | Execute$ Tr SVar:TrigBounce:DB$ ChangeZone | Origin$ Exile | Destination$ Battlefield | Defined$ DelayTriggerRememberedLKI | Imprint$ True | SubAbility$ DBPutCounter SVar:DBPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 | ConditionDefined$ Imprinted | ConditionPresent$ Card.YouCtrl+ThisTurnEntered | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True | ClearImprinted$ True -DeckHas:Ability$Counters SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters Oracle:Flash\nWhenever Phelia, Exuberant Shepherd attacks, exile up to one other target nonland permanent. At the beginning of the next end step, return that card to the battlefield under its owner's control. If it entered under your control, put a +1/+1 counter on Phelia. diff --git a/forge-gui/res/cardsfolder/p/phylactery_lich.txt b/forge-gui/res/cardsfolder/p/phylactery_lich.txt index df41fe71bcc..43177ff87dd 100644 --- a/forge-gui/res/cardsfolder/p/phylactery_lich.txt +++ b/forge-gui/res/cardsfolder/p/phylactery_lich.txt @@ -9,7 +9,7 @@ SVar:DBPutCounter:DB$ PutCounter | CounterType$ PHYLACTERY | CounterNum$ 1 | Def SVar:DBCleanup:DB$ Cleanup | ClearChosenCard$ True T:Mode$ Always | TriggerZones$ Battlefield | IsPresent$ Permanent.counters_GE1_PHYLACTERY+YouCtrl | PresentCompare$ EQ0 | Execute$ TrigSac | TriggerDescription$ When you control no permanents with phylactery counters on them, sacrifice CARDNAME. SVar:TrigSac:DB$ Sacrifice +SVar:NeedsToPlay:Artifact.YouCtrl AI:RemoveDeck:Random DeckHints:Type$Artifact -SVar:NeedsToPlay:Artifact.YouCtrl Oracle:Indestructible\nAs Phylactery Lich enters, put a phylactery counter on an artifact you control.\nWhen you control no permanents with phylactery counters on them, sacrifice Phylactery Lich. diff --git a/forge-gui/res/cardsfolder/p/phyrexian_dreadnought.txt b/forge-gui/res/cardsfolder/p/phyrexian_dreadnought.txt index f0f1804287e..24550a572d9 100644 --- a/forge-gui/res/cardsfolder/p/phyrexian_dreadnought.txt +++ b/forge-gui/res/cardsfolder/p/phyrexian_dreadnought.txt @@ -10,8 +10,8 @@ SVar:SacrificeCreatures:DB$ SacrificeAll | Defined$ Remembered | ConditionCheckS SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:TotalPower:Remembered$CardPower SVar:X:Count$Valid Creature.YouCtrl -AI:RemoveDeck:Random SVar:NeedsToPlayVar:Y GE12 SVar:Y:Count$SumPower_Creature.YouCtrl+notnamedPhyrexian Dreadnought +AI:RemoveDeck:Random DeckHas:Ability$Sacrifice Oracle:Trample\nWhen Phyrexian Dreadnought enters, sacrifice it unless you sacrifice any number of creatures with total power 12 or greater. diff --git a/forge-gui/res/cardsfolder/p/plague_rats.txt b/forge-gui/res/cardsfolder/p/plague_rats.txt index 5f449934147..86fe34b8fc9 100644 --- a/forge-gui/res/cardsfolder/p/plague_rats.txt +++ b/forge-gui/res/cardsfolder/p/plague_rats.txt @@ -5,7 +5,7 @@ PT:*/* S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | SetPower$ X | SetToughness$ X | Description$ CARDNAME's power and toughness are each equal to the number of creatures named Plague Rats on the battlefield. SVar:X:Count$Valid Creature.namedPlague Rats SVar:BuffedBy:Creature.namedPlague Rats -AI:RemoveDeck:Random SVar:NoZeroToughnessAI:True +AI:RemoveDeck:Random DeckHints:Name$Plague Rats Oracle:Plague Rats's power and toughness are each equal to the number of creatures named Plague Rats on the battlefield. diff --git a/forge-gui/res/cardsfolder/p/plague_reaver.txt b/forge-gui/res/cardsfolder/p/plague_reaver.txt index 78521197f18..aee631b56c4 100644 --- a/forge-gui/res/cardsfolder/p/plague_reaver.txt +++ b/forge-gui/res/cardsfolder/p/plague_reaver.txt @@ -6,7 +6,7 @@ T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefiel SVar:SacAllOthers:DB$ SacrificeAll | ValidCards$ Creature.Other+YouCtrl A:AB$ DelayedTrigger | Cost$ Discard<2/Card> Sac<1/CARDNAME> | ValidTgts$ Opponent | Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.IsTriggerRemembered | RememberObjects$ Targeted,SacrificedCards | Execute$ DBChange | TriggerDescription$ Return CARDNAME to the battlefield under that player's control at the beginning of their next upkeep. | StackDescription$ Return CARDNAME to the battlefield under {p:Targeted}'s control at the beginning of their next upkeep. | SpellDescription$ Choose target opponent. Return CARDNAME to the battlefield under that player's control at the beginning of their next upkeep. SVar:DBChange:DB$ ChangeZone | Defined$ DelayTriggerRememberedLKI | Origin$ Graveyard | Destination$ Battlefield | GainControl$ DelayTriggerRemembered +SVar:DonateMe:3 AI:RemoveDeck:All DeckHas:Ability$Discard|Sacrifice -SVar:DonateMe:3 Oracle:At the beginning of your end step, sacrifice each other creature you control.\nDiscard two cards, Sacrifice Plague Reaver: Choose target opponent. Return Plague Reaver to the battlefield under that player's control at the beginning of their next upkeep. diff --git a/forge-gui/res/cardsfolder/p/plaguemaw_beast.txt b/forge-gui/res/cardsfolder/p/plaguemaw_beast.txt index 4ac6cc181b8..dce66d415c8 100644 --- a/forge-gui/res/cardsfolder/p/plaguemaw_beast.txt +++ b/forge-gui/res/cardsfolder/p/plaguemaw_beast.txt @@ -3,8 +3,8 @@ ManaCost:3 G G Types:Creature Phyrexian Beast PT:4/3 A:AB$ Proliferate | Cost$ T Sac<1/Creature> | SpellDescription$ Proliferate. -AI:RemoveDeck:All SVar:AIPreference:SacCost$Creature.token+powerLE3+toughnessLE3,Creature.cmcLE2 +AI:RemoveDeck:All DeckHas:Ability$Proliferate DeckNeeds:Ability$Counters Oracle:{T}, Sacrifice a creature: Proliferate. (Choose any number of permanents and/or players, then give each another counter of each kind already there.) diff --git a/forge-gui/res/cardsfolder/p/plaxcaster_frogling.txt b/forge-gui/res/cardsfolder/p/plaxcaster_frogling.txt index d5420f47de6..79b2a6d79a1 100644 --- a/forge-gui/res/cardsfolder/p/plaxcaster_frogling.txt +++ b/forge-gui/res/cardsfolder/p/plaxcaster_frogling.txt @@ -4,7 +4,7 @@ Types:Creature Frog Mutant PT:0/0 K:Graft:3 A:AB$ Pump | Cost$ 2 | ValidTgts$ Creature.counters_GE1_P1P1 | TgtPrompt$ Select target creature with a +1/+1 counter | KW$ Shroud | SpellDescription$ Target creature with a +1/+1 counter on it gains shroud until end of turn. -DeckNeeds:Ability$Counters -DeckHas:Ability$Counters SVar:AIGraftPreference:DontMoveCounterIfLethal +DeckHas:Ability$Counters +DeckNeeds:Ability$Counters Oracle:Graft 3 (This creature enters with three +1/+1 counters on it. Whenever another creature enters, you may move a +1/+1 counter from this creature onto it.)\n{2}: Target creature with a +1/+1 counter on it gains shroud until end of turn. (It can't be the target of spells or abilities.) diff --git a/forge-gui/res/cardsfolder/p/poetic_ingenuity.txt b/forge-gui/res/cardsfolder/p/poetic_ingenuity.txt index ba2f0954d3e..c79d5e7be0c 100644 --- a/forge-gui/res/cardsfolder/p/poetic_ingenuity.txt +++ b/forge-gui/res/cardsfolder/p/poetic_ingenuity.txt @@ -6,6 +6,6 @@ SVar:TrigToken:DB$ Token | TokenAmount$ X | TokenScript$ c_a_treasure_sac SVar:X:TriggerObjectsAttackers$Amount T:Mode$ SpellCast | ValidCard$ Artifact | ValidActivatingPlayer$ You | ActivationLimit$ 1 | Execute$ TrigTokenBis | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast an artifact spell, create a 3/1 red Dinosaur creature token. This ability triggers only once each turn. SVar:TrigTokenBis:DB$ Token | TokenScript$ r_3_1_dinosaur -DeckNeeds:Type$Dinosaur DeckHas:Ability$Token & Type$Treasure|Artifact|Dinosaur +DeckNeeds:Type$Dinosaur Oracle:Whenever one or more Dinosaurs you control attack, create that many Treasure tokens.\nWhenever you cast an artifact spell, create a 3/1 red Dinosaur creature token. This ability triggers only once each turn. diff --git a/forge-gui/res/cardsfolder/p/power_plant_worker.txt b/forge-gui/res/cardsfolder/p/power_plant_worker.txt index 97a48980b01..3a98a99f983 100644 --- a/forge-gui/res/cardsfolder/p/power_plant_worker.txt +++ b/forge-gui/res/cardsfolder/p/power_plant_worker.txt @@ -5,9 +5,9 @@ PT:4/4 A:AB$ Branch | Cost$ 3 | BranchConditionSVar$ UrzaCheck | BranchConditionSVarCompare$ GE2 | FalseSubAbility$ DBPump | TrueSubAbility$ DBPutCounter | ActivationLimit$ 1 | SpellDescription$ CARDNAME gets +2/+2 until end of turn. If you control creatures named Mine Worker and Tower Worker, put two +1/+1 counters on CARDNAME instead. Activate only once each turn. SVar:DBPump:DB$ Pump | Defined$ Self | NumAtt$ 2 | NumDef$ 2 SVar:DBPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 2 -DeckHas:Ability$Counters -DeckNeeds:Name$Mine Worker|Tower Worker SVar:UrzaCheck:SVar$X/Plus.Y SVar:X:Count$Valid Creature.YouCtrl+namedMine Worker/LimitMax.1 SVar:Y:Count$Valid Creature.YouCtrl+namedTower Worker/LimitMax.1 +DeckHas:Ability$Counters +DeckNeeds:Name$Mine Worker|Tower Worker Oracle:{3}: Power Plant Worker gets +2/+2 until end of turn. If you control creatures named Mine Worker and Tower Worker, put two +1/+1 counters on Power Plant Worker instead. Activate only once each turn. diff --git a/forge-gui/res/cardsfolder/p/poxwalkers.txt b/forge-gui/res/cardsfolder/p/poxwalkers.txt index f0023826d6c..5451077a003 100644 --- a/forge-gui/res/cardsfolder/p/poxwalkers.txt +++ b/forge-gui/res/cardsfolder/p/poxwalkers.txt @@ -5,7 +5,7 @@ PT:3/1 K:Deathtouch T:Mode$ SpellCast | ValidCard$ Card.!wasCastFromYourHand | ValidActivatingPlayer$ You | TriggerZones$ Graveyard | Execute$ TrigChange | TriggerDescription$ Curse of the Walking Pox — Whenever you cast a spell from anywhere other than your hand, return CARDNAME from your graveyard to the battlefield tapped. SVar:TrigChange:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | Tapped$ True -DeckHas:Ability$Graveyard SVar:SacMe:3 SVar:DiscardMe:3 +DeckHas:Ability$Graveyard Oracle:Deathtouch\nCurse of the Walking Pox — Whenever you cast a spell from anywhere other than your hand, return Poxwalkers from your graveyard to the battlefield tapped. diff --git a/forge-gui/res/cardsfolder/p/press_the_enemy.txt b/forge-gui/res/cardsfolder/p/press_the_enemy.txt index 8ef503a2bfe..3fa99df6468 100644 --- a/forge-gui/res/cardsfolder/p/press_the_enemy.txt +++ b/forge-gui/res/cardsfolder/p/press_the_enemy.txt @@ -4,8 +4,8 @@ Types:Instant A:SP$ ChangeZone | ValidTgts$ Permanent.nonLand+OppCtrl,Card.inZoneStack+OppCtrl | TgtZone$ Stack,Battlefield | Origin$ Battlefield,Stack | Fizzle$ True | Destination$ Hand | SubAbility$ DBMayPlay | SpellDescription$ Return target spell or nonland permanent an opponent controls to its owner's hand. SVar:DBMayPlay:DB$ Play | Valid$ Card.YouOwn | ValidZone$ Hand | ValidSA$ Instant.cmcLEZ,Sorcery.cmcLEZ | WithoutManaCost$ True | Optional$ True | SubAbility$ DBCleanup | SpellDescription$ You may cast an instant or sorcery spell with equal or lesser mana value from your hand without paying its mana cost. SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -DeckHints:Type$Sorcery|Instant SVar:X:SpellTargeted$CardManaCostLKI SVar:Y:Targeted$CardManaCostLKI SVar:Z:SVar$X/Plus.Y +DeckHints:Type$Sorcery|Instant Oracle:Return target spell or nonland permanent an opponent controls to its owner's hand. You may cast an instant or sorcery spell with equal or lesser mana value from your hand without paying its mana cost. diff --git a/forge-gui/res/cardsfolder/p/preston_garvey_minuteman.txt b/forge-gui/res/cardsfolder/p/preston_garvey_minuteman.txt index 5b0a3be0df4..b4d379ba765 100644 --- a/forge-gui/res/cardsfolder/p/preston_garvey_minuteman.txt +++ b/forge-gui/res/cardsfolder/p/preston_garvey_minuteman.txt @@ -6,6 +6,6 @@ T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Battlefiel SVar:TrigToken:DB$ Token | TokenScript$ settlement | TokenAmount$ 1 | TokenOwner$ You | TargetMin$ 0 | TargetMax$ 1 | AttachedTo$ Targeted | ValidTgts$ Land.YouCtrl | TgtPrompt$ Select up to one target land you control T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigUntapAll | TriggerDescription$ Whenever CARDNAME attacks, untap each enchanted permanent you control. SVar:TrigUntapAll:DB$ UntapAll | ValidCards$ Permanent.enchanted+YouCtrl -DeckHas:Ability$Token SVar:BuffedBy:Permanent.enchanted +DeckHas:Ability$Token Oracle:At the beginning of combat on your turn, create a green Aura enchantment token named Settlement attached to up to one target land you control. It has enchant land and "Enchanted land has '{T}: Add one mana of any color.'"\nWhenever Preston Garvey, Minuteman attacks, untap each enchanted permanent you control. diff --git a/forge-gui/res/cardsfolder/p/primaris_chaplain.txt b/forge-gui/res/cardsfolder/p/primaris_chaplain.txt index f38a0302054..8c612195f1d 100644 --- a/forge-gui/res/cardsfolder/p/primaris_chaplain.txt +++ b/forge-gui/res/cardsfolder/p/primaris_chaplain.txt @@ -5,6 +5,6 @@ PT:3/3 K:Battle cry T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ Rosarius — Whenever CARDNAME attacks, it gains indestructible until end of turn. SVar:TrigPump:DB$ Pump | Defined$ Self | KW$ Indestructible -DeckHas:Keyword$Indestructible SVar:HasAttackEffect:TRUE +DeckHas:Keyword$Indestructible Oracle:Battle cry (Whenever this creature attacks, each other attacking creature gets +1/+0 until end of turn.)\nRosarius — Whenever Primaris Chaplain attacks, it gains indestructible until end of turn. diff --git a/forge-gui/res/cardsfolder/p/primordial_hydra.txt b/forge-gui/res/cardsfolder/p/primordial_hydra.txt index 5d6b6bf8517..0f3150ad4d8 100644 --- a/forge-gui/res/cardsfolder/p/primordial_hydra.txt +++ b/forge-gui/res/cardsfolder/p/primordial_hydra.txt @@ -6,6 +6,6 @@ K:etbCounter:P1P1:X S:Mode$ Continuous | Affected$ Card.Self+counters_GT9_P1P1 | AddKeyword$ Trample | Description$ CARDNAME has trample as long as it has ten or more +1/+1 counters on it. T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDoubleCounters | TriggerDescription$ At the beginning of your upkeep, double the number of +1/+1 counters on CARDNAME. SVar:TrigDoubleCounters:DB$ MultiplyCounter | Defined$ Self | CounterType$ P1P1 -DeckHas:Ability$Counters SVar:X:Count$xPaid +DeckHas:Ability$Counters Oracle:Primordial Hydra enters with X +1/+1 counters on it.\nAt the beginning of your upkeep, double the number of +1/+1 counters on Primordial Hydra.\nPrimordial Hydra has trample as long as it has ten or more +1/+1 counters on it. diff --git a/forge-gui/res/cardsfolder/p/prismari_apprentice.txt b/forge-gui/res/cardsfolder/p/prismari_apprentice.txt index 3bcccedc94a..47e96333330 100644 --- a/forge-gui/res/cardsfolder/p/prismari_apprentice.txt +++ b/forge-gui/res/cardsfolder/p/prismari_apprentice.txt @@ -6,6 +6,6 @@ T:Mode$ SpellCastOrCopy | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ Yo SVar:TrigUnblockable:DB$ Effect | RememberObjects$ Self | ExileOnMoved$ Battlefield | StaticAbilities$ Unblockable | SubAbility$ DBPutCounter SVar:Unblockable:Mode$ CantBlockBy | ValidAttacker$ Card.IsRemembered | Description$ EFFECTSOURCE can't be blocked this turn. SVar:DBPutCounter:DB$ PutCounter | CounterType$ P1P1 | ConditionCheckSVar$ TriggeredStackInstance$CardManaCostLKI | ConditionSVarCompare$ GE5 -DeckNeeds:Type$Instant|Sorcery DeckHas:Ability$Counters +DeckNeeds:Type$Instant|Sorcery Oracle:Magecraft — Whenever you cast or copy an instant or sorcery spell, Prismari Apprentice can't be blocked this turn. If that spell has mana value 5 or greater, put a +1/+1 counter on Prismari Apprentice. diff --git a/forge-gui/res/cardsfolder/p/prized_elephant.txt b/forge-gui/res/cardsfolder/p/prized_elephant.txt index ec03807ca64..c64f05ea144 100644 --- a/forge-gui/res/cardsfolder/p/prized_elephant.txt +++ b/forge-gui/res/cardsfolder/p/prized_elephant.txt @@ -4,6 +4,6 @@ Types:Creature Elephant PT:3/3 S:Mode$ Continuous | Affected$ Card.Self | AddPower$ 1 | AddToughness$ 1 | IsPresent$ Forest.YouCtrl | Description$ CARDNAME gets +1/+1 as long as you control a Forest. A:AB$ Pump | Cost$ G | Defined$ Self | KW$ Trample | SpellDescription$ CARDNAME gets trample until end of turn. -DeckNeeds:Color$Green SVar:BuffedBy:Forest +DeckNeeds:Color$Green Oracle:Prized Elephant gets +1/+1 as long as you control a Forest.\n{G}: Prized Elephant gains trample until end of turn. (It can deal excess combat damage to the player or planeswalker it's attacking.) diff --git a/forge-gui/res/cardsfolder/p/probe.txt b/forge-gui/res/cardsfolder/p/probe.txt index 12b1833d1fa..f2b940524b4 100644 --- a/forge-gui/res/cardsfolder/p/probe.txt +++ b/forge-gui/res/cardsfolder/p/probe.txt @@ -5,7 +5,7 @@ K:Kicker:1 B A:SP$ Draw | NumCards$ 3 | SubAbility$ DBDiscardYou | SpellDescription$ Draw three cards, SVar:DBDiscardYou:DB$ Discard | Defined$ You | NumCards$ 2 | SubAbility$ DBDiscardTarget | Mode$ TgtChoose | SpellDescription$ then discard two cards. SVar:DBDiscardTarget:DB$ Discard | Condition$ Kicked | ValidTgts$ Player | TgtPrompt$ Select target player | NumCards$ 2 | Mode$ TgtChoose | SpellDescription$ If CARDNAME was kicked, target player discards two cards. -DeckHints:Color$Black SVar:NeedsToPlayKickedVar:Z GE1 SVar:Z:Count$ValidHand Card.OppOwn +DeckHints:Color$Black Oracle:Kicker {1}{B} (You may pay an additional {1}{B} as you cast this spell.)\nDraw three cards, then discard two cards. If this spell was kicked, target player discards two cards. diff --git a/forge-gui/res/cardsfolder/p/profts_eidetic_memory.txt b/forge-gui/res/cardsfolder/p/profts_eidetic_memory.txt index 65081c022d2..b08a5d89e2c 100644 --- a/forge-gui/res/cardsfolder/p/profts_eidetic_memory.txt +++ b/forge-gui/res/cardsfolder/p/profts_eidetic_memory.txt @@ -8,6 +8,6 @@ T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Battlefiel SVar:TrigPutCounters:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterType$ P1P1 | CounterNum$ Y SVar:X:Count$YouDrewThisTurn SVar:Y:SVar$X/Minus.1 -DeckHas:Ability$Counters SVar:PlayMain1:TRUE +DeckHas:Ability$Counters Oracle:When Proft's Eidetic Memory enters, draw a card.\nYou have no maximum hand size.\nAt the beginning of combat on your turn, if you've drawn more than one card this turn, put X +1/+1 counters on target creature you control, where X is the number of cards you've drawn this turn minus one. diff --git a/forge-gui/res/cardsfolder/p/protect_the_negotiators.txt b/forge-gui/res/cardsfolder/p/protect_the_negotiators.txt index da9d718e4b6..0b0c90fdb56 100644 --- a/forge-gui/res/cardsfolder/p/protect_the_negotiators.txt +++ b/forge-gui/res/cardsfolder/p/protect_the_negotiators.txt @@ -5,7 +5,7 @@ K:Kicker:W A:SP$ Token | Condition$ Kicked | TokenScript$ w_1_1_soldier | SubAbility$ DBCounter | SpellDescription$ If this spell was kicked, create a 1/1 white Soldier creature token. Counter target spell unless its controller pays {1} for each creature you control. SVar:DBCounter:DB$ Counter | TargetType$ Spell | TgtPrompt$ Select target spell | ValidTgts$ Card | UnlessCost$ Y | SpellDescription$ Counter target spell unless its controller pays {1} for each creature you control. SVar:Y:Count$Valid Creature.YouCtrl +SVar:BuffedBy:Creature DeckHas:Ability$Token DeckHints:Color$White -SVar:BuffedBy:Creature Oracle:Kicker {W} (You may pay an additional {W} as you cast this spell.)\nIf this spell was kicked, create a 1/1 white Soldier creature token.\nCounter target spell unless its controller pays {1} for each creature you control. diff --git a/forge-gui/res/cardsfolder/p/protective_parents.txt b/forge-gui/res/cardsfolder/p/protective_parents.txt index 9a554dedd81..be422c7dba6 100644 --- a/forge-gui/res/cardsfolder/p/protective_parents.txt +++ b/forge-gui/res/cardsfolder/p/protective_parents.txt @@ -4,6 +4,6 @@ Types:Creature Human Peasant PT:3/2 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME dies, create a Young Hero Role token attached to up to one target creature you control. (If you control another Role on it, put that one into the graveyard. Enchanted creature has "Whenever this creature attacks, if its toughness is 3 or less, put a +1/+1 counter on it.") SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ role_young_hero | TokenOwner$ You | TargetMin$ 0 | TargetMax$ 1 | AttachedTo$ Targeted | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select up to one target creature you control -DeckHas:Ability$Token & Type$Role|Aura SVar:SacMe:2 +DeckHas:Ability$Token & Type$Role|Aura Oracle:When Protective Parents dies, create a Young Hero Role token attached to up to one target creature you control. (If you control another Role on it, put that one into the graveyard. Enchanted creature has "Whenever this creature attacks, if its toughness is 3 or less, put a +1/+1 counter on it.") diff --git a/forge-gui/res/cardsfolder/p/provisions_merchant.txt b/forge-gui/res/cardsfolder/p/provisions_merchant.txt index dab85977a21..70a3ad36375 100644 --- a/forge-gui/res/cardsfolder/p/provisions_merchant.txt +++ b/forge-gui/res/cardsfolder/p/provisions_merchant.txt @@ -6,6 +6,6 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_food_sac | TokenOwner$ You T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPumpAll | TriggerDescription$ Whenever CARDNAME attacks, you may sacrifice a Food. If you do, attacking creatures get +1/+1 and gain trample until end of turn. SVar:TrigPumpAll:AB$ PumpAll | Cost$ Sac<1/Food> | ValidCards$ Creature.attacking | NumAtt$ +1 | NumDef$ +1 | KW$ Trample -DeckHas:Ability$LifeGain|Token|Counters & Type$Food SVar:HasAttackEffect:TRUE +DeckHas:Ability$LifeGain|Token|Counters & Type$Food Oracle:When Provisions Merchant enters, create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.")\nWhenever Provisions Merchant attacks, you may sacrifice a Food. If you do, attacking creatures get +1/+1 and gain trample until end of turn. diff --git a/forge-gui/res/cardsfolder/p/psionic_ritual.txt b/forge-gui/res/cardsfolder/p/psionic_ritual.txt index 6cb59ad44f1..24a01db2c85 100644 --- a/forge-gui/res/cardsfolder/p/psionic_ritual.txt +++ b/forge-gui/res/cardsfolder/p/psionic_ritual.txt @@ -7,7 +7,7 @@ SVar:DBCopy:DB$ Play | Defined$ Remembered | Amount$ All | CopyCard$ True | With SVar:ExileSelf:DB$ ChangeZone | Origin$ Stack | Destination$ Exile | Defined$ Self | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True AI:RemoveDeck:All -DeckNeeds:Type$Horror -DeckHints:Type$Instant|Sorcery DeckHas:Ability$Graveyard +DeckHints:Type$Instant|Sorcery +DeckNeeds:Type$Horror Oracle:Replicate—Tap an untapped Horror you control. (When you cast this spell, copy it for each time you paid its replicate cost. You may choose new targets for the copies.)\nExile target instant or sorcery card from a graveyard and copy it. You may cast the copy without paying its mana cost.\nExile Psionic Ritual. diff --git a/forge-gui/res/cardsfolder/p/pterodon_knight.txt b/forge-gui/res/cardsfolder/p/pterodon_knight.txt index 48a17f6ced8..da1870f218f 100644 --- a/forge-gui/res/cardsfolder/p/pterodon_knight.txt +++ b/forge-gui/res/cardsfolder/p/pterodon_knight.txt @@ -3,6 +3,6 @@ ManaCost:3 W Types:Creature Human Knight PT:3/3 S:Mode$ Continuous | Affected$ Card.Self | AddKeyword$ Flying | IsPresent$ Dinosaur.YouCtrl | Description$ CARDNAME has flying as long as you control a Dinosaur. -DeckHints:Type$Dinosaur SVar:BuffedBy:Dinosaur +DeckHints:Type$Dinosaur Oracle:Pterodon Knight has flying as long as you control a Dinosaur. diff --git a/forge-gui/res/cardsfolder/p/public_thoroughfare.txt b/forge-gui/res/cardsfolder/p/public_thoroughfare.txt index 5324e641fd9..6d103f68f89 100644 --- a/forge-gui/res/cardsfolder/p/public_thoroughfare.txt +++ b/forge-gui/res/cardsfolder/p/public_thoroughfare.txt @@ -6,6 +6,6 @@ SVar:ETBTapped:DB$ Tap | Defined$ Self | ETB$ True T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigSac | TriggerDescription$ When CARDNAME enters, sacrifice it unless you tap an untapped artifact or land you control. SVar:TrigSac:DB$ Sacrifice | UnlessCost$ tapXType<1/Artifact;Land/artifact or land> | UnlessPayer$ You A:AB$ Mana | Cost$ T | Produced$ Any | SpellDescription$ Add one mana of any color. -DeckHints:Type$Artifact SVar:NeedsToPlay:Land.untapped+YouCtrl;Artifact.untapped+YouCtrl +DeckHints:Type$Artifact Oracle:Public Thoroughfare enters tapped.\nWhen Public Thoroughfare enters, sacrifice it unless you tap an untapped artifact or land you control.\n{T}: Add one mana of any color. diff --git a/forge-gui/res/cardsfolder/p/pugnacious_hammerskull.txt b/forge-gui/res/cardsfolder/p/pugnacious_hammerskull.txt index 5b9c2b09b07..a1bbd09ebb6 100644 --- a/forge-gui/res/cardsfolder/p/pugnacious_hammerskull.txt +++ b/forge-gui/res/cardsfolder/p/pugnacious_hammerskull.txt @@ -5,6 +5,6 @@ PT:6/6 T:Mode$ Attacks | ValidCard$ Card.Self | IsPresent$ Dinosaur.YouCtrl+Other | PresentCompare$ EQ0 | NoResolvingCheck$ True | TriggerZones$ Battlefield | Execute$ TrigStunCounter | TriggerDescription$ Whenever CARDNAME attacks while you don't control another Dinosaur, put a stun counter on it. (If a permanent with a stun counter would become untapped, remove one from it instead.) SVar:TrigStunCounter:DB$ PutCounter | Defined$ Self | CounterType$ Stun | CounterNum$ 1 SVar:HasAttackEffect:TRUE -DeckNeeds:Type$Dinosaur DeckHas:Ability$Counters +DeckNeeds:Type$Dinosaur Oracle:Whenever Pugnacious Hammerskull attacks while you don't control another Dinosaur, put a stun counter on it. (If a permanent with a stun counter would become untapped, remove one from it instead.) diff --git a/forge-gui/res/cardsfolder/p/pugnacious_pugilist.txt b/forge-gui/res/cardsfolder/p/pugnacious_pugilist.txt index 5036ffa20b8..c1f2540c9d8 100644 --- a/forge-gui/res/cardsfolder/p/pugnacious_pugilist.txt +++ b/forge-gui/res/cardsfolder/p/pugnacious_pugilist.txt @@ -5,6 +5,6 @@ PT:4/4 T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Whenever CARDNAME attacks, create a tapped and attacking 1/1 red Devil creature token with "When this creature dies, it deals 1 damage to any target." SVar:TrigToken:DB$ Token | TokenScript$ r_1_1_devil_burn | TokenTapped$ True | TokenAttacking$ True K:Blitz:3 R -DeckHas:Ability$Token|Sacrifice & Type$Devil SVar:HasAttackEffect:TRUE +DeckHas:Ability$Token|Sacrifice & Type$Devil Oracle:Whenever Pugnacious Pugilist attacks, create a tapped and attacking 1/1 red Devil creature token with "When this creature dies, it deals 1 damage to any target."\nBlitz {3}{R} (If you cast this spell for its blitz cost, it gains haste and "When this creature dies, draw a card." Sacrifice it at the beginning of the next end step.) diff --git a/forge-gui/res/cardsfolder/p/purestrain_genestealer.txt b/forge-gui/res/cardsfolder/p/purestrain_genestealer.txt index f98c705fe7a..5504a3c55c1 100644 --- a/forge-gui/res/cardsfolder/p/purestrain_genestealer.txt +++ b/forge-gui/res/cardsfolder/p/purestrain_genestealer.txt @@ -5,6 +5,6 @@ PT:1/1 K:etbCounter:P1P1:2 T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigRamp | TriggerDescription$ Vanguard Species — Whenever CARDNAME attacks, you may remove a +1/+1 counter from it. If you do, search your library for a basic land card, put it onto the battlefield tapped, then shuffle. SVar:TrigRamp:AB$ ChangeZone | Cost$ SubCounter<1/P1P1> | Origin$ Library | Destination$ Battlefield | Tapped$ True | ChangeType$ Land.Basic | ChangeNum$ 1 -DeckHas:Ability$Counters SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters Oracle:Purestrain Genestealer enters with two +1/+1 counters on it.\nVanguard Species — Whenever Purestrain Genestealer attacks, you may remove a +1/+1 counter from it. If you do, search your library for a basic land card, put it onto the battlefield tapped, then shuffle. diff --git a/forge-gui/res/cardsfolder/p/pyromancer_ascension.txt b/forge-gui/res/cardsfolder/p/pyromancer_ascension.txt index 12ce6bcd135..6074cfbb000 100644 --- a/forge-gui/res/cardsfolder/p/pyromancer_ascension.txt +++ b/forge-gui/res/cardsfolder/p/pyromancer_ascension.txt @@ -5,8 +5,8 @@ T:Mode$ SpellCast | ValidCard$ Instant.sharesNameWith YourGraveyard,Sorcery.shar T:Mode$ SpellCast | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | IsPresent$ Card.Self+counters_GE2_QUEST | Execute$ TrigCopySpell | OptionalDecider$ You | TriggerDescription$ Whenever you cast an instant or sorcery spell while CARDNAME has two or more quest counters on it, you may copy that spell. You may choose new targets for the copy. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ QUEST | CounterNum$ 1 | ConditionDefined$ TriggeredCard SVar:TrigCopySpell:DB$ CopySpellAbility | Defined$ TriggeredSpellAbility | AILogic$ Always | MayChooseTarget$ True +SVar:MaxQuestEffect:2 +DeckHas:Ability$Counters DeckHints:Keyword$Retrace|Flashback DeckNeeds:Type$Instant|Sorcery -DeckHas:Ability$Counters -SVar:MaxQuestEffect:2 Oracle:Whenever you cast an instant or sorcery spell that has the same name as a card in your graveyard, you may put a quest counter on Pyromancer Ascension.\nWhenever you cast an instant or sorcery spell while Pyromancer Ascension has two or more quest counters on it, you may copy that spell. You may choose new targets for the copy. diff --git a/forge-gui/res/cardsfolder/q/quest_for_ancient_secrets.txt b/forge-gui/res/cardsfolder/q/quest_for_ancient_secrets.txt index eb5b1e730a5..611c1daa3c7 100644 --- a/forge-gui/res/cardsfolder/q/quest_for_ancient_secrets.txt +++ b/forge-gui/res/cardsfolder/q/quest_for_ancient_secrets.txt @@ -4,7 +4,7 @@ Types:Enchantment A:AB$ ChangeZoneAll | Cost$ SubCounter<5/QUEST> Sac<1/CARDNAME> | TgtPrompt$ Select target player. | ValidTgts$ Player | ChangeType$ Card | Origin$ Graveyard | Destination$ Library | Shuffle$ True | SpellDescription$ Target player shuffles their graveyard into their library. T:Mode$ ChangesZone | Origin$ Any | Destination$ Graveyard | ValidCard$ Card.nonToken+YouOwn | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigPutCounter | TriggerDescription$ Whenever a card is put into your graveyard from anywhere, you may put a quest counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ QUEST | CounterNum$ 1 +SVar:MaxQuestEffect:5 AI:RemoveDeck:Random DeckHas:Ability$Counters -SVar:MaxQuestEffect:5 Oracle:Whenever a card is put into your graveyard from anywhere, you may put a quest counter on Quest for Ancient Secrets.\nRemove five quest counters from Quest for Ancient Secrets and sacrifice it: Target player shuffles their graveyard into their library. diff --git a/forge-gui/res/cardsfolder/q/quest_for_pure_flame.txt b/forge-gui/res/cardsfolder/q/quest_for_pure_flame.txt index 1e20f89e369..8f6329b97c5 100644 --- a/forge-gui/res/cardsfolder/q/quest_for_pure_flame.txt +++ b/forge-gui/res/cardsfolder/q/quest_for_pure_flame.txt @@ -8,7 +8,7 @@ SVar:DamageEvent:Event$ DamageDone | ValidSource$ Card.YouCtrl,Emblem.YouCtrl | SVar:DmgTwice:DB$ ReplaceEffect | VarName$ DamageAmount | VarValue$ X SVar:X:ReplaceCount$DamageAmount/Twice SVar:PlayMain1:TRUE +SVar:MaxQuestEffect:4 AI:RemoveDeck:All DeckHas:Ability$Counters -SVar:MaxQuestEffect:4 Oracle:Whenever a source you control deals damage to an opponent, you may put a quest counter on Quest for Pure Flame.\nRemove four quest counters from Quest for Pure Flame and sacrifice it: If any source you control would deal damage to a permanent or player this turn, it deals double that damage to that permanent or player instead. diff --git a/forge-gui/res/cardsfolder/q/quest_for_the_gemblades.txt b/forge-gui/res/cardsfolder/q/quest_for_the_gemblades.txt index 91451c5f9b8..18d5644930f 100644 --- a/forge-gui/res/cardsfolder/q/quest_for_the_gemblades.txt +++ b/forge-gui/res/cardsfolder/q/quest_for_the_gemblades.txt @@ -4,6 +4,6 @@ Types:Enchantment A:AB$ PutCounter | Cost$ SubCounter<1/QUEST> Sac<1/CARDNAME> | ValidTgts$ Creature | TgtPrompt$ Select target creature | CounterType$ P1P1 | CounterNum$ 4 | SpellDescription$ Put four +1/+1 counters on target creature. T:Mode$ DamageDone | ValidSource$ Creature.YouCtrl | ValidTarget$ Creature | TriggerZones$ Battlefield | OptionalDecider$ You | CombatDamage$ True | Execute$ TrigPutCounter | TriggerDescription$ Whenever a creature you control deals combat damage to a creature, you may put a quest counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ QUEST | CounterNum$ 1 -DeckHas:Ability$Counters SVar:MaxQuestEffect:1 +DeckHas:Ability$Counters Oracle:Whenever a creature you control deals combat damage to a creature, you may put a quest counter on Quest for the Gemblades.\nRemove a quest counter from Quest for the Gemblades and sacrifice it: Put four +1/+1 counters on target creature. diff --git a/forge-gui/res/cardsfolder/q/quest_for_the_goblin_lord.txt b/forge-gui/res/cardsfolder/q/quest_for_the_goblin_lord.txt index 05209c92a80..5aa0d8cd04c 100644 --- a/forge-gui/res/cardsfolder/q/quest_for_the_goblin_lord.txt +++ b/forge-gui/res/cardsfolder/q/quest_for_the_goblin_lord.txt @@ -5,6 +5,6 @@ S:Mode$ Continuous | Affected$ Creature.YouCtrl | AddPower$ 2 | IsPresent$ Card. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Goblin.YouCtrl | Execute$ TrigPutCounter | OptionalDecider$ You | TriggerZones$ Battlefield | TriggerDescription$ Whenever a Goblin you control enters, you may put a quest counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ QUEST | CounterNum$ 1 SVar:MaxQuestEffect:5 -DeckNeeds:Type$Goblin DeckHas:Ability$Counters +DeckNeeds:Type$Goblin Oracle:Whenever a Goblin you control enters, you may put a quest counter on Quest for the Goblin Lord.\nAs long as Quest for the Goblin Lord has five or more quest counters on it, creatures you control get +2/+0. diff --git a/forge-gui/res/cardsfolder/q/quest_for_the_holy_relic.txt b/forge-gui/res/cardsfolder/q/quest_for_the_holy_relic.txt index e355d066818..ff453066a95 100644 --- a/forge-gui/res/cardsfolder/q/quest_for_the_holy_relic.txt +++ b/forge-gui/res/cardsfolder/q/quest_for_the_holy_relic.txt @@ -4,8 +4,8 @@ Types:Enchantment T:Mode$ SpellCast | ValidCard$ Creature | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigPutCounter | TriggerDescription$ Whenever you cast a creature spell, you may put a quest counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ QUEST | CounterNum$ 1 A:AB$ ChangeZone | Cost$ SubCounter<5/QUEST> Sac<1/CARDNAME> | Origin$ Library | Destination$ Battlefield | ChangeType$ Card.Equipment+YouOwn | ChangeNum$ 1 | AttachAfter$ Creature.YouCtrl | SpellDescription$ Search your library for an Equipment card, put it onto the battlefield, and attach it to a creature you control. Then shuffle your library. -AI:RemoveDeck:Random -DeckNeeds:Type$Equipment -DeckHas:Ability$Counters SVar:MaxQuestEffect:5 +AI:RemoveDeck:Random +DeckHas:Ability$Counters +DeckNeeds:Type$Equipment Oracle:Whenever you cast a creature spell, you may put a quest counter on Quest for the Holy Relic.\nRemove five quest counters from Quest for the Holy Relic and sacrifice it: Search your library for an Equipment card, put it onto the battlefield, attach it to a creature you control, then shuffle. diff --git a/forge-gui/res/cardsfolder/q/quest_for_the_necropolis.txt b/forge-gui/res/cardsfolder/q/quest_for_the_necropolis.txt index 3b1053bfa99..9360c00b80d 100644 --- a/forge-gui/res/cardsfolder/q/quest_for_the_necropolis.txt +++ b/forge-gui/res/cardsfolder/q/quest_for_the_necropolis.txt @@ -5,6 +5,6 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.Y SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ QUEST | CounterNum$ 1 A:AB$ ChangeZone | Cost$ 5 B Sac<1/CARDNAME> | Origin$ Graveyard | Destination$ Battlefield | GainControl$ True | SorcerySpeed$ True | ReduceCost$ X | TgtPrompt$ Select target creature card in a graveyard | ValidTgts$ Creature | SpellDescription$ Put target creature card from a graveyard onto the battlefield under your control. This ability costs {1} less to activate for each quest counter on CARDNAME. Activate only as a sorcery. SVar:X:Count$CardCounters.QUEST -DeckHas:Ability$Counters SVar:MaxQuestEffect:5 +DeckHas:Ability$Counters Oracle:Landfall — Whenever a land you control enters, you may put a quest counter on Quest for the Necropolis.\n{5}{B}, Sacrifice Quest for the Necropolis: Put target creature card from a graveyard onto the battlefield under your control. This ability costs {1} less to activate for each quest counter on Quest for the Necropolis. Activate only as a sorcery. diff --git a/forge-gui/res/cardsfolder/q/quest_for_the_nihil_stone.txt b/forge-gui/res/cardsfolder/q/quest_for_the_nihil_stone.txt index 6240722c831..5278ee754a1 100644 --- a/forge-gui/res/cardsfolder/q/quest_for_the_nihil_stone.txt +++ b/forge-gui/res/cardsfolder/q/quest_for_the_nihil_stone.txt @@ -7,7 +7,7 @@ SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ QUEST | Counte SVar:TrigLoseLife:DB$ LoseLife | Defined$ TriggeredPlayer | LifeAmount$ 5 SVar:CardsInHand:Count$ValidHand Card.ActivePlayerCtrl SVar:PlayMain1:TRUE +SVar:MaxQuestEffect:2 AI:RemoveDeck:Random DeckHints:Ability$Discard -SVar:MaxQuestEffect:2 Oracle:Whenever an opponent discards a card, you may put a quest counter on Quest for the Nihil Stone.\nAt the beginning of each opponent's upkeep, if that player has no cards in hand and Quest for the Nihil Stone has two or more quest counters on it, you may have that player lose 5 life. diff --git a/forge-gui/res/cardsfolder/q/quest_for_ulas_temple.txt b/forge-gui/res/cardsfolder/q/quest_for_ulas_temple.txt index a8c4ea9edc4..321e4045ece 100644 --- a/forge-gui/res/cardsfolder/q/quest_for_ulas_temple.txt +++ b/forge-gui/res/cardsfolder/q/quest_for_ulas_temple.txt @@ -7,7 +7,7 @@ SVar:DBPutCounter:DB$ PutCounter | CounterType$ QUEST | CounterNum$ 1 | Defined$ T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ Player | Execute$ TrigChangeZone | OptionalDecider$ You | TriggerZones$ Battlefield | IsPresent$ Card.Self+counters_GE3_QUEST | PresentCompare$ EQ1 | TriggerDescription$ At the beginning of each end step, if there are three or more quest counters on CARDNAME, you may put a Kraken, Leviathan, Octopus, or Serpent creature card from your hand onto the battlefield. SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Hand | Destination$ Battlefield | ChangeType$ Creature.Kraken,Creature.Leviathan,Creature.Octopus,Creature.Serpent | ChangeNum$ 1 | Hidden$ True SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +SVar:MaxQuestEffect:3 DeckHas:Ability$Counters DeckNeeds:Type$Kraken|Leviathan|Octopus|Serpent -SVar:MaxQuestEffect:3 Oracle:At the beginning of your upkeep, you may look at the top card of your library. If it's a creature card, you may reveal it and put a quest counter on Quest for Ula's Temple.\nAt the beginning of each end step, if there are three or more quest counters on Quest for Ula's Temple, you may put a Kraken, Leviathan, Octopus, or Serpent creature card from your hand onto the battlefield. From 9766d4b1e58f705051d17c8cdfd7c35a4265ce7a Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 12:10:34 +0100 Subject: [PATCH 26/91] Edit pile cleanup: Line reordering, second pass: part 7, folders 'r', 'rebalanced' --- forge-gui/res/cardsfolder/r/radiant_scrollwielder.txt | 2 +- forge-gui/res/cardsfolder/r/raff_weatherlight_stalwart.txt | 2 +- forge-gui/res/cardsfolder/r/ragefire_hellkite.txt | 2 +- forge-gui/res/cardsfolder/r/raiding_party.txt | 2 +- forge-gui/res/cardsfolder/r/rakavolver.txt | 2 +- forge-gui/res/cardsfolder/r/rally_at_the_hornburg.txt | 2 +- forge-gui/res/cardsfolder/r/ravenloft_adventurer.txt | 2 +- forge-gui/res/cardsfolder/r/reckless_detective.txt | 2 +- forge-gui/res/cardsfolder/r/recon_craft_theta.txt | 4 ++-- forge-gui/res/cardsfolder/r/redemption_choir.txt | 2 +- forge-gui/res/cardsfolder/r/relic_amulet.txt | 2 +- forge-gui/res/cardsfolder/r/replication_specialist.txt | 2 +- forge-gui/res/cardsfolder/r/repository_skaab.txt | 4 ++-- forge-gui/res/cardsfolder/r/requiem_angel.txt | 2 +- forge-gui/res/cardsfolder/r/restless_anchorage.txt | 2 +- forge-gui/res/cardsfolder/r/restless_bivouac.txt | 2 +- forge-gui/res/cardsfolder/r/restless_cottage.txt | 2 +- forge-gui/res/cardsfolder/r/restless_fortress.txt | 4 ++-- forge-gui/res/cardsfolder/r/restless_prairie.txt | 2 +- forge-gui/res/cardsfolder/r/restless_reef.txt | 2 +- forge-gui/res/cardsfolder/r/restless_ridgeline.txt | 2 +- forge-gui/res/cardsfolder/r/restless_spire.txt | 2 +- forge-gui/res/cardsfolder/r/restless_vents.txt | 2 +- forge-gui/res/cardsfolder/r/restless_vinestalk.txt | 2 +- forge-gui/res/cardsfolder/r/retether.txt | 2 +- forge-gui/res/cardsfolder/r/rimefeather_owl.txt | 2 +- forge-gui/res/cardsfolder/r/ring_of_evos_isle.txt | 2 +- forge-gui/res/cardsfolder/r/ring_of_kalonia.txt | 2 +- forge-gui/res/cardsfolder/r/ring_of_thune.txt | 2 +- forge-gui/res/cardsfolder/r/ring_of_valkas.txt | 2 +- forge-gui/res/cardsfolder/r/ring_of_xathrid.txt | 2 +- forge-gui/res/cardsfolder/r/rionya_fire_dancer.txt | 2 +- forge-gui/res/cardsfolder/r/rivaz_of_the_claw.txt | 2 +- forge-gui/res/cardsfolder/r/river_of_tears.txt | 2 +- forge-gui/res/cardsfolder/r/rohgahh_kher_keep_overlord.txt | 2 +- forge-gui/res/cardsfolder/r/rohgahh_of_kher_keep.txt | 2 +- forge-gui/res/cardsfolder/r/rona_sheoldreds_faithful.txt | 2 +- forge-gui/res/cardsfolder/r/rotwidow_pack.txt | 2 +- forge-gui/res/cardsfolder/r/rukarumal_biologist.txt | 2 +- forge-gui/res/cardsfolder/r/rulik_mons_warren_chief.txt | 2 +- forge-gui/res/cardsfolder/r/rummaging_wizard.txt | 2 +- .../r/runo_stromkirk_krothuss_lord_of_the_deep.txt | 2 +- forge-gui/res/cardsfolder/r/rush_the_room.txt | 2 +- forge-gui/res/cardsfolder/r/rust_monster.txt | 2 +- forge-gui/res/cardsfolder/r/ruthless_technomancer.txt | 2 +- .../res/cardsfolder/rebalanced/a-death_priest_of_myrkul.txt | 2 +- forge-gui/res/cardsfolder/rebalanced/a-dokuchi_silencer.txt | 2 +- forge-gui/res/cardsfolder/rebalanced/a-earthquake_dragon.txt | 2 +- forge-gui/res/cardsfolder/rebalanced/a-haywire_mite.txt | 2 +- .../res/cardsfolder/rebalanced/a-iridescent_hornbeetle.txt | 2 +- forge-gui/res/cardsfolder/rebalanced/a-kargan_intimidator.txt | 2 +- forge-gui/res/cardsfolder/rebalanced/a-karn_living_legacy.txt | 2 +- .../cardsfolder/rebalanced/a-mishra_excavation_prodigy.txt | 4 ++-- .../res/cardsfolder/rebalanced/a-omnath_locus_of_creation.txt | 2 +- .../res/cardsfolder/rebalanced/a-rulik_mons_warren_chief.txt | 2 +- forge-gui/res/cardsfolder/rebalanced/a-sigardian_paladin.txt | 2 +- forge-gui/res/cardsfolder/rebalanced/a-soul_of_windgrace.txt | 2 +- .../res/cardsfolder/rebalanced/a-tatyova_steward_of_tides.txt | 2 +- 58 files changed, 62 insertions(+), 62 deletions(-) diff --git a/forge-gui/res/cardsfolder/r/radiant_scrollwielder.txt b/forge-gui/res/cardsfolder/r/radiant_scrollwielder.txt index d24ff515fd1..705ec50d933 100644 --- a/forge-gui/res/cardsfolder/r/radiant_scrollwielder.txt +++ b/forge-gui/res/cardsfolder/r/radiant_scrollwielder.txt @@ -10,6 +10,6 @@ SVar:Play:Mode$ Continuous | MayPlay$ True | EffectZone$ Command | Affected$ Car SVar:ReplaceGraveyard:Event$ Moved | ValidLKI$ Card.CastSa Spell.MayPlaySource | Origin$ Stack | Destination$ Graveyard | ReplaceWith$ MoveExile SVar:MoveExile:DB$ ChangeZone | Defined$ ReplacedCard | Origin$ Stack | Destination$ Exile SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -DeckNeeds:Type$Instant|Sorcery DeckHas:Ability$LifeGain +DeckNeeds:Type$Instant|Sorcery Oracle:Instant and sorcery spells you control have lifelink.\nAt the beginning of your upkeep, exile an instant or sorcery card at random from your graveyard. You may cast it this turn. If a spell cast this way would be put into your graveyard, exile it instead. diff --git a/forge-gui/res/cardsfolder/r/raff_weatherlight_stalwart.txt b/forge-gui/res/cardsfolder/r/raff_weatherlight_stalwart.txt index 6d49a32d736..7413be8d882 100644 --- a/forge-gui/res/cardsfolder/r/raff_weatherlight_stalwart.txt +++ b/forge-gui/res/cardsfolder/r/raff_weatherlight_stalwart.txt @@ -5,6 +5,6 @@ PT:1/3 T:Mode$ SpellCast | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDraw | TriggerDescription$ Whenever you cast an instant or sorcery spell, you may tap two untapped creatures you control. If you do, draw a card. SVar:TrigDraw:AB$ Draw | Cost$ tapXType<2/Creature> A:AB$ PumpAll | Cost$ 3 W W | ValidCards$ Creature.YouCtrl | NumAtt$ +1 | KW$ Vigilance | NumDef$ +1 | SpellDescription$ Creatures you control get +1/+1 and gain vigilance until end of turn. -DeckHints:Type$Instant|Sorcery SVar:BuffedBy:Creature +DeckHints:Type$Instant|Sorcery Oracle:Whenever you cast an instant or sorcery spell, you may tap two untapped creatures you control. If you do, draw a card.\n{3}{W}{W}: Creatures you control get +1/+1 and gain vigilance until end of turn. diff --git a/forge-gui/res/cardsfolder/r/ragefire_hellkite.txt b/forge-gui/res/cardsfolder/r/ragefire_hellkite.txt index 5e8d467b493..b0f6e99dfb0 100644 --- a/forge-gui/res/cardsfolder/r/ragefire_hellkite.txt +++ b/forge-gui/res/cardsfolder/r/ragefire_hellkite.txt @@ -5,6 +5,6 @@ PT:5/3 K:Flying T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPump | OptionalDecider$ You | TriggerDescription$ Whenever CARDNAME attacks, you may sacrifice another creature. If you do, CARDNAME gains double strike until end of turn. SVar:TrigPump:AB$ Pump | Cost$ Sac<1/Creature.Other/another creature> | Defined$ Self | KW$ Double Strike -DeckHas:Ability$Sacrifice SVar:HasAttackEffect:TRUE +DeckHas:Ability$Sacrifice Oracle:Flying\nWhenever Ragefire Hellkite attacks, you may sacrifice another creature. If you do, Ragefire Hellkite gains double strike until end of turn. diff --git a/forge-gui/res/cardsfolder/r/raiding_party.txt b/forge-gui/res/cardsfolder/r/raiding_party.txt index 50762507940..bd9a036f117 100644 --- a/forge-gui/res/cardsfolder/r/raiding_party.txt +++ b/forge-gui/res/cardsfolder/r/raiding_party.txt @@ -9,7 +9,7 @@ SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True | ClearChosenCard$ True SVar:DBDestroy:DB$ DestroyAll | ValidCards$ Plains.IsNotImprinted | SubAbility$ DBCleanImp | AILogic$ RaidingParty | StackDescription$ None SVar:DBCleanImp:DB$ Cleanup | ClearImprinted$ True SVar:TappedXTwo:Count$Valid Creature.IsRemembered/Times.2 -AI:RemoveDeck:Random SVar:NeedsToPlay:Plains.OppCtrl +AI:RemoveDeck:Random DeckNeeds:Type$Orc Oracle:Raiding Party can't be the target of white spells or abilities from white sources.\nSacrifice an Orc: Each player may tap any number of untapped white creatures they control. For each creature tapped this way, that player chooses up to two Plains. Then destroy all Plains that weren't chosen this way by any player. diff --git a/forge-gui/res/cardsfolder/r/rakavolver.txt b/forge-gui/res/cardsfolder/r/rakavolver.txt index cd7095f33e5..48191be534b 100644 --- a/forge-gui/res/cardsfolder/r/rakavolver.txt +++ b/forge-gui/res/cardsfolder/r/rakavolver.txt @@ -13,6 +13,6 @@ SVar:VolverX:TriggerCount$DamageAmount SVar:VolverPumped:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 | ETB$ True | SubAbility$ VolverLaunch | SpellDescription$ If CARDNAME was kicked with its {U} kicker, it enters with a +1/+1 counter on it and with flying. SVar:VolverLaunch:DB$ Animate | Defined$ Self | Keywords$ Flying | Duration$ Permanent AI:RemoveDeck:Random -DeckNeeds:Color$White|Blue DeckHas:Ability$Counters +DeckNeeds:Color$White|Blue Oracle:Kicker {1}{W} and/or {U} (You may pay an additional {1}{W} and/or {U} as you cast this spell.)\nIf Rakavolver was kicked with its {1}{W} kicker, it enters with two +1/+1 counters on it and with "Whenever Rakavolver deals damage, you gain that much life."\nIf Rakavolver was kicked with its {U} kicker, it enters with a +1/+1 counter on it and with flying. diff --git a/forge-gui/res/cardsfolder/r/rally_at_the_hornburg.txt b/forge-gui/res/cardsfolder/r/rally_at_the_hornburg.txt index 4bfb03f2c04..079785ce773 100644 --- a/forge-gui/res/cardsfolder/r/rally_at_the_hornburg.txt +++ b/forge-gui/res/cardsfolder/r/rally_at_the_hornburg.txt @@ -3,7 +3,7 @@ ManaCost:1 R Types:Sorcery A:SP$ Token | TokenAmount$ 2 | TokenScript$ w_1_1_human_soldier | TokenOwner$ You | SubAbility$ TrigPump | SpellDescription$ Create two 1/1 white Human Soldier creature tokens. SVar:TrigPump:DB$ PumpAll | ValidCards$ Human.YouCtrl | KW$ Haste | SpellDescription$ Humans you control gain haste until end of turn. -DeckHas:Ability$Token & Type$Human|Soldier SVar:PlayMain1:TRUE +DeckHas:Ability$Token & Type$Human|Soldier DeckHints:Type$Human Oracle:Create two 1/1 white Human Soldier creature tokens. Humans you control gain haste until end of turn. diff --git a/forge-gui/res/cardsfolder/r/ravenloft_adventurer.txt b/forge-gui/res/cardsfolder/r/ravenloft_adventurer.txt index 9254f7048b8..d6eff347fad 100644 --- a/forge-gui/res/cardsfolder/r/ravenloft_adventurer.txt +++ b/forge-gui/res/cardsfolder/r/ravenloft_adventurer.txt @@ -12,6 +12,6 @@ T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ Tr SVar:TrigLoseLife:DB$ LoseLife | Defined$ TriggeredDefendingPlayer | LifeAmount$ Y SVar:X:PlayerCountPropertyYou$DungeonsCompleted SVar:Y:TriggeredDefendingPlayer$ValidExile Card.YouOwn+counters_GE1_HIT -DeckHints:Name$Etrata, the Silencer|Mari, the Killing Quill SVar:HasAttackEffect:TRUE +DeckHints:Name$Etrata, the Silencer|Mari, the Killing Quill Oracle:When Ravenloft Adventurer enters, you take the initiative.\nIf a creature an opponent controls would die, instead exile it and put a hit counter on it.\nWhenever Ravenloft Adventurer attacks, if you've completed a dungeon, defending player loses 1 life for each card they own in exile with a hit counter on it. diff --git a/forge-gui/res/cardsfolder/r/reckless_detective.txt b/forge-gui/res/cardsfolder/r/reckless_detective.txt index af4e5213135..1b96e7c1dce 100644 --- a/forge-gui/res/cardsfolder/r/reckless_detective.txt +++ b/forge-gui/res/cardsfolder/r/reckless_detective.txt @@ -7,7 +7,7 @@ SVar:TrigChoice:DB$ GenericChoice | Choices$ DBSacToDraw,DBDiscardToDraw SVar:DBSacToDraw:DB$ Draw | UnlessCost$ Sac<1/Artifact> | UnlessPayer$ You | UnlessSwitched$ True | SubAbility$ DBPump | SpellDescription$ Sacrifice an artifact. SVar:DBDiscardToDraw:DB$ Draw | UnlessCost$ Discard<1/Card> | UnlessPayer$ You | UnlessSwitched$ True | SubAbility$ DBPump | SpellDescription$ Discard a card. SVar:DBPump:DB$ Pump | Defined$ Self | NumAtt$ 2 +SVar:HasAttackEffect:TRUE DeckHas:Ability$Sacrifice|Graveyard|Discard DeckHints:Type$Artifact|Clue|Treasure -SVar:HasAttackEffect:TRUE Oracle:Whenever Reckless Detective attacks, you may sacrifice an artifact or discard a card. If you do, draw a card and Reckless Detective gets +2/+0 until end of turn. diff --git a/forge-gui/res/cardsfolder/r/recon_craft_theta.txt b/forge-gui/res/cardsfolder/r/recon_craft_theta.txt index 6589424900a..f94021da05d 100644 --- a/forge-gui/res/cardsfolder/r/recon_craft_theta.txt +++ b/forge-gui/res/cardsfolder/r/recon_craft_theta.txt @@ -10,7 +10,7 @@ SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigProliferate | TriggerDescription$ Whenever CARDNAME attacks, proliferate. (Choose any number of permanents and/or players, then give each another counter of each kind already there.) SVar:TrigProliferate:DB$ Proliferate K:Crew:2 -DeckHints:Ability$Counters & Type$Planeswalker -DeckHas:Ability$Counters & Type$Alien SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters & Type$Alien +DeckHints:Ability$Counters & Type$Planeswalker Oracle:Flying\nWhen Recon Craft Theta enters, create a 0/0 blue Alien creature token. Put a +1/+1 counter on it.\nWhenever Recon Craft Theta attacks, proliferate. (Choose any number of permanents and/or players, then give each another counter of each kind already there.)\nCrew 2 diff --git a/forge-gui/res/cardsfolder/r/redemption_choir.txt b/forge-gui/res/cardsfolder/r/redemption_choir.txt index 691ec2043dd..019fad2150d 100644 --- a/forge-gui/res/cardsfolder/r/redemption_choir.txt +++ b/forge-gui/res/cardsfolder/r/redemption_choir.txt @@ -7,7 +7,7 @@ T:Mode$ ChangesZone | CheckSVar$ X | SVarCompare$ GE3 | Origin$ Any | Destinatio T:Mode$ Attacks | CheckSVar$ X | SVarCompare$ GE3 | ValidCard$ Card.Self | Execute$ TrigChange | TriggerZones$ Battlefield | Secondary$ True | TriggerDescription$ Coven — Whenever CARDNAME enters or attacks, if you control three or more creatures with different powers, return target permanent card with mana value 3 or less from your graveyard to the battlefield. SVar:TrigChange:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | ValidTgts$ Permanent.YouOwn+cmcLE3 SVar:X:Count$DifferentPower_Creature.YouCtrl +SVar:HasAttackEffect:TRUE DeckHas:Ability$LifeGain|Graveyard DeckHints:Ability$Graveyard|Mill -SVar:HasAttackEffect:TRUE Oracle:Lifelink\nCoven — Whenever Redemption Choir enters or attacks, if you control three or more creatures with different powers, return target permanent card with mana value 3 or less from your graveyard to the battlefield. diff --git a/forge-gui/res/cardsfolder/r/relic_amulet.txt b/forge-gui/res/cardsfolder/r/relic_amulet.txt index c2f82bdd1bf..2854416f7dd 100644 --- a/forge-gui/res/cardsfolder/r/relic_amulet.txt +++ b/forge-gui/res/cardsfolder/r/relic_amulet.txt @@ -7,6 +7,6 @@ A:AB$ DealDamage | Cost$ 2 T SubCounter | NumDmg$ X | ValidTgts$ Cre SVar:X:SVar$CostCountersRemoved SVar:BuffedBy:Instant,Sorcery,Wizard AI:RemoveDeck:Random -DeckNeeds:Type$Instant|Sorcery|Wizard DeckHas:Ability$Counters +DeckNeeds:Type$Instant|Sorcery|Wizard Oracle:Whenever you cast an instant, sorcery, or Wizard spell, put a charge counter on Relic Amulet.\n{2}, {T}, Remove all charge counters from Relic Amulet: It deals that much damage to target creature. diff --git a/forge-gui/res/cardsfolder/r/replication_specialist.txt b/forge-gui/res/cardsfolder/r/replication_specialist.txt index 76814b0c022..c9c68e933b5 100644 --- a/forge-gui/res/cardsfolder/r/replication_specialist.txt +++ b/forge-gui/res/cardsfolder/r/replication_specialist.txt @@ -5,6 +5,6 @@ PT:3/4 K:Flying T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Artifact.nonToken+YouCtrl | TriggerZones$ Battlefield | Execute$ TrigCopy | TriggerDescription$ Whenever a nontoken artifact you control enters, you may pay {1}{U}. If you do, create a token that's a copy of that artifact. SVar:TrigCopy:AB$ CopyPermanent | Cost$ 1 U | Defined$ TriggeredCard -DeckNeeds:Type$Artifact DeckHas:Ability$Token +DeckNeeds:Type$Artifact Oracle:Flying\nWhenever a nontoken artifact you control enters, you may pay {1}{U}. If you do, create a token that's a copy of that artifact. diff --git a/forge-gui/res/cardsfolder/r/repository_skaab.txt b/forge-gui/res/cardsfolder/r/repository_skaab.txt index 6f2b319379b..104dbde18cb 100644 --- a/forge-gui/res/cardsfolder/r/repository_skaab.txt +++ b/forge-gui/res/cardsfolder/r/repository_skaab.txt @@ -5,10 +5,10 @@ PT:3/3 K:Exploit T:Mode$ Exploited | ValidCard$ Creature | ValidSource$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigChangeZone | TriggerDescription$ When CARDNAME exploits a creature, return target instant or sorcery card from your graveyard to your hand. SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | TgtPrompt$ Select target instant or sorcery card in your graveyard | ValidTgts$ Instant.YouCtrl,Sorcery.YouCtrl -DeckHas:Ability$Sacrifice|Graveyard -DeckHints:Type$Instant|Sorcery SVar:X:Count$ValidGraveyard Instant.YouOwn,Sorcery.YouOwn/LimitMax.1 SVar:Y:Count$Valid Creature.token,Creature.cmcLE2/LimitMax.1 SVar:Z:SVar$X/Plus.Y SVar:NeedsToPlayVar:Z EQ2 +DeckHas:Ability$Sacrifice|Graveyard +DeckHints:Type$Instant|Sorcery Oracle:Exploit (When this creature enters, you may sacrifice a creature.)\nWhen Repository Skaab exploits a creature, return target instant or sorcery card from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/r/requiem_angel.txt b/forge-gui/res/cardsfolder/r/requiem_angel.txt index 030a716e410..6bc6eb8f0d8 100644 --- a/forge-gui/res/cardsfolder/r/requiem_angel.txt +++ b/forge-gui/res/cardsfolder/r/requiem_angel.txt @@ -5,6 +5,6 @@ PT:5/5 K:Flying T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Creature.nonSpirit+YouCtrl+Other | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Whenever another non-Spirit creature you control dies, create a 1/1 white Spirit creature token with flying. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ w_1_1_spirit_flying | TokenOwner$ You -DeckHas:Ability$Token SVar:PlayMain1:TRUE +DeckHas:Ability$Token Oracle:Flying\nWhenever another non-Spirit creature you control dies, create a 1/1 white Spirit creature token with flying. diff --git a/forge-gui/res/cardsfolder/r/restless_anchorage.txt b/forge-gui/res/cardsfolder/r/restless_anchorage.txt index bb0cdea2255..3d49fd878a7 100644 --- a/forge-gui/res/cardsfolder/r/restless_anchorage.txt +++ b/forge-gui/res/cardsfolder/r/restless_anchorage.txt @@ -7,6 +7,6 @@ A:AB$ Mana | Cost$ T | Produced$ Combo W U | SpellDescription$ Add {W} or {U}. A:AB$ Animate | Cost$ 1 W U | Defined$ Self | Power$ 2 | Toughness$ 3 | Types$ Creature,Bird | Colors$ White,Blue | OverwriteColors$ True | Keywords$ Flying | SpellDescription$ Until end of turn, CARDNAME becomes a 2/3 white and blue Bird creature with flying. It's still a land. T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Whenever CARDNAME attacks, create a Map token. SVar:TrigToken:DB$ Token | TokenScript$ c_a_map_sac_explore -DeckHas:Ability$Token|Sacrifice|Counters & Type$Bird|Artifact|Map & Color$White|Blue SVar:HasAttackEffect:TRUE +DeckHas:Ability$Token|Sacrifice|Counters & Type$Bird|Artifact|Map & Color$White|Blue Oracle:Restless Anchorage enters tapped.\n{T}: Add {W} or {U}\n{1}{W}{U}: Until end of turn, Restless Anchorage becomes a 2/3 white and blue Bird creature with flying. It's still a land.\nWhenever Restless Anchorage attacks, create a Map token. diff --git a/forge-gui/res/cardsfolder/r/restless_bivouac.txt b/forge-gui/res/cardsfolder/r/restless_bivouac.txt index b8219f76d22..2ac1fb5f2aa 100644 --- a/forge-gui/res/cardsfolder/r/restless_bivouac.txt +++ b/forge-gui/res/cardsfolder/r/restless_bivouac.txt @@ -7,6 +7,6 @@ A:AB$ Mana | Cost$ T | Produced$ Combo R W | SpellDescription$ Add {R} or {W}. A:AB$ Animate | Cost$ 1 R W | Defined$ Self | Power$ 2 | Toughness$ 2 | Types$ Creature,Ox | Colors$ Red,White | OverwriteColors$ True | SpellDescription$ CARDNAME becomes a 2/2 red and white Ox creature until end of turn. It's still a land. T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever CARDNAME attacks, put a +1/+1 counter on target creature you control. SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterType$ P1P1 | CounterNum$ 1 -DeckHas:Ability$Counters & Type$Ox & Color$Red|White SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters & Type$Ox & Color$Red|White Oracle:Restless Bivouac enters tapped.\n{T}: Add {R} or {W}.\n{1}{R}{W}: Restless Bivouac becomes a 2/2 red and white Ox creature until end of turn. It's still a land.\nWhenever Restless Bivouac attacks, put a +1/+1 counter on target creature you control. diff --git a/forge-gui/res/cardsfolder/r/restless_cottage.txt b/forge-gui/res/cardsfolder/r/restless_cottage.txt index a8b15207b06..fa942d82e43 100644 --- a/forge-gui/res/cardsfolder/r/restless_cottage.txt +++ b/forge-gui/res/cardsfolder/r/restless_cottage.txt @@ -8,6 +8,6 @@ A:AB$ Animate | Cost$ 2 B G | Defined$ Self | Power$ 4 | Toughness$ 4 | Types$ C T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigFood | TriggerDescription$ Whenever CARDNAME attacks, create a Food token and exile up to one target card from a graveyard. SVar:TrigFood:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_food_sac | TokenOwner$ You | SubAbility$ DBExile SVar:DBExile:DB$ ChangeZone | Origin$ Graveyard | Destination$ Exile | ValidTgts$ Card | TargetMin$ 0 | TargetMax$ 1 | TgtPrompt$ Select up to one target card from a graveyard -DeckHas:Ability$LifeGain|Token|Graveyard & Type$Horror|Food & Color$Black|Green SVar:HasAttackEffect:TRUE +DeckHas:Ability$LifeGain|Token|Graveyard & Type$Horror|Food & Color$Black|Green Oracle:Restless Cottage enters tapped.\n{T}: Add {B} or {G}.\n{2}{B}{G}: Restless Cottage becomes a 4/4 black and green Horror creature until end of turn. It's still a land.\nWhenever Restless Cottage attacks, create a Food token and exile up to one target card from a graveyard. diff --git a/forge-gui/res/cardsfolder/r/restless_fortress.txt b/forge-gui/res/cardsfolder/r/restless_fortress.txt index 1ce2f4dcc0f..9024177e869 100644 --- a/forge-gui/res/cardsfolder/r/restless_fortress.txt +++ b/forge-gui/res/cardsfolder/r/restless_fortress.txt @@ -8,6 +8,6 @@ A:AB$ Animate | Cost$ 2 W B | Defined$ Self | Power$ 1 | Toughness$ 4 | Types$ C T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigLoseLife | TriggerDescription$ Whenever CARDNAME attacks, defending player loses 2 life and you gain 2 life. SVar:TrigLoseLife:DB$ LoseLife | Defined$ TriggeredDefendingPlayer | LifeAmount$ 2 | SubAbility$ DBGainLife SVar:DBGainLife:DB$ GainLife | LifeAmount$ 2 -DeckHas:Ability$LifeGain & Type$Nightmare & Color$White|Black SVar:HasAttackEffect:TRUE -Oracle:Restless Fortress enters tapped.\n{T}: Add {W} or {B}.\n{2}{W}{B}: Restless Fortress becomes a 1/4 white and black Nightmare creature until end of turn. It's still a land.\nWhenever Restless Fortress attacks, defending player loses 2 life and you gain 2 life. +DeckHas:Ability$LifeGain & Type$Nightmare & Color$White|Black +Oracle:Restless Fortress enters tapped.\n{T}: Add {W} or {B}.\n\n{2}{W}{B}: Restless Fortress becomes a 1/4 white and black Nightmare creature until end of turn. It's still a land.\nWhenever Restless Fortress attacks, defending player loses 2 life and you gain 2 life. diff --git a/forge-gui/res/cardsfolder/r/restless_prairie.txt b/forge-gui/res/cardsfolder/r/restless_prairie.txt index 74cface7ee0..76643564889 100644 --- a/forge-gui/res/cardsfolder/r/restless_prairie.txt +++ b/forge-gui/res/cardsfolder/r/restless_prairie.txt @@ -7,6 +7,6 @@ A:AB$ Mana | Cost$ T | Produced$ Combo G W | SpellDescription$ Add {G} or {W}. A:AB$ Animate | Cost$ 2 G W | Defined$ Self | Power$ 3 | Toughness$ 3 | Types$ Creature,Llama | Colors$ Green,White | OverwriteColors$ True | SpellDescription$ CARDNAME becomes a 3/3 green and white Llama creature until end of turn. It's still a land. T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigPumpAll | TriggerDescription$ Whenever CARDNAME attacks, other creatures you control get +1/+1 until end of turn. SVar:TrigPumpAll:DB$ PumpAll | ValidCards$ Creature.StrictlyOther+YouCtrl | NumAtt$ +1 | NumDef$ +1 -DeckHas:Type$Llama & Color$Green|White SVar:HasAttackEffect:TRUE +DeckHas:Type$Llama & Color$Green|White Oracle:Restless Prairie enters tapped.\n{T}: Add {G} or {W}.\n{2}{G}{W}: Restless Prairie becomes a 3/3 green and white Llama creature until end of turn. It's still a land.\nWhenever Restless Prairie attacks, other creatures you control get +1/+1 until end of turn. diff --git a/forge-gui/res/cardsfolder/r/restless_reef.txt b/forge-gui/res/cardsfolder/r/restless_reef.txt index 3e854b981ee..4827643a8bc 100644 --- a/forge-gui/res/cardsfolder/r/restless_reef.txt +++ b/forge-gui/res/cardsfolder/r/restless_reef.txt @@ -7,6 +7,6 @@ A:AB$ Mana | Cost$ T | Produced$ Combo U B | SpellDescription$ Add {U} or {B}. A:AB$ Animate | Cost$ 2 U B | Defined$ Self | Power$ 4 | Toughness$ 4 | Types$ Creature,Shark | Colors$ Blue,Black | OverwriteColors$ True | Keywords$ Deathtouch | SpellDescription$ CARDNAME becomes a 4/4 blue and black Shark creature with deathtouch until end of turn. It's still a land. T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigMill | TriggerDescription$ Whenever CARDNAME attacks, target player mills 4 cards. SVar:TrigMill:DB$ Mill | NumCards$ 4 | ValidTgts$ Player -DeckHas:Ability$Mill|Graveyard & Type$Shark & Color$Blue|Black SVar:HasAttackEffect:TRUE +DeckHas:Ability$Mill|Graveyard & Type$Shark & Color$Blue|Black Oracle:Restless Reef enters tapped.\n{T}: Add {U} or {B}.\n{2}{U}{B}: Restless Reef becomes a 4/4 blue and black Shark creature with deathtouch until end of turn. It's still a land.\nWhenever Restless Reef attacks, target player mills 4 cards. diff --git a/forge-gui/res/cardsfolder/r/restless_ridgeline.txt b/forge-gui/res/cardsfolder/r/restless_ridgeline.txt index c1b10dce5d4..0884b205bd0 100644 --- a/forge-gui/res/cardsfolder/r/restless_ridgeline.txt +++ b/forge-gui/res/cardsfolder/r/restless_ridgeline.txt @@ -8,6 +8,6 @@ A:AB$ Animate | Cost$ 2 R G | Defined$ Self | Power$ 3 | Toughness$ 4 | Types$ C T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ Whenever CARDNAME attacks, another target attacking creature gets +2/+0 until end of turn. Untap that creature. SVar:TrigPump:DB$ Pump | ValidTgts$ Creature.attacking+Other | TgtPrompt$ Select another target attacking creature | NumAtt$ +2 | SubAbility$ DBUntap SVar:DBUntap:DB$ Untap | Defined$ Targeted -DeckHas:Type$Dinosaur & Color$Red|Green SVar:HasAttackEffect:TRUE +DeckHas:Type$Dinosaur & Color$Red|Green Oracle:Restless Ridgeline enters tapped.\n{T}: Add {R} or {G}.\n{2}{R}{G}: Restless Ridgeline becomes a 3/4 red and green Dinosaur creature until end of turn. It's still a land.\nWhenever Restless Ridgeline attacks, another target attacking creature gets +2/+0 until end of turn. Untap that creature. diff --git a/forge-gui/res/cardsfolder/r/restless_spire.txt b/forge-gui/res/cardsfolder/r/restless_spire.txt index ba7255330f9..7d27ca46974 100644 --- a/forge-gui/res/cardsfolder/r/restless_spire.txt +++ b/forge-gui/res/cardsfolder/r/restless_spire.txt @@ -8,6 +8,6 @@ A:AB$ Animate | Cost$ U R | Defined$ Self | Power$ 2 | Toughness$ 1 | staticAbil SVar:FirstStrikeStatic:Mode$ Continuous | Affected$ Card.Self | AddKeyword$ First Strike | Condition$ PlayerTurn | Description$ As long as it's your turn, CARDNAME has first strike. T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigScry | TriggerDescription$ Whenever CARDNAME attacks, scry 1. SVar:TrigScry:DB$ Scry | ScryNum$ 1 -DeckHas:Ability$LifeGain & Type$Elemental & Color$Blue|Red SVar:HasAttackEffect:TRUE +DeckHas:Ability$LifeGain & Type$Elemental & Color$Blue|Red Oracle:Restless Spire enters tapped.\n{T}: Add {U} or {R}.\n{U}{R}: Until end of turn, Restless Spire becomes a 2/1 blue and red Elemental creature with "As long as it's your turn, this creature has first strike." It's still a land.\nWhenever Restless Spire attacks, scry 1. diff --git a/forge-gui/res/cardsfolder/r/restless_vents.txt b/forge-gui/res/cardsfolder/r/restless_vents.txt index 31b55fbd41b..2444c50606f 100644 --- a/forge-gui/res/cardsfolder/r/restless_vents.txt +++ b/forge-gui/res/cardsfolder/r/restless_vents.txt @@ -7,6 +7,6 @@ A:AB$ Mana | Cost$ T | Produced$ Combo B R | SpellDescription$ Add {B} or {R}. A:AB$ Animate | Cost$ 1 B R | Defined$ Self | Power$ 2 | Toughness$ 3 | Types$ Creature,Insect | Keywords$ Menace | Colors$ Black,Red | OverwriteColors$ True | SpellDescription$ Until end of turn, CARDNAME becomes a 2/3 black and red Insect creature with menace. It's still a land. T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigLoot | TriggerDescription$ Whenever CARDNAME attacks, you may discard a card. If you do, draw a card. SVar:TrigLoot:AB$ Draw | Cost$ Discard<1/Card> -DeckHas:Ability$Discard & Type$Insect & Color$Black|Red SVar:HasAttackEffect:TRUE +DeckHas:Ability$Discard & Type$Insect & Color$Black|Red Oracle:Restless Vents enters tapped.\n{T}: Add {B} or {R}.\n{1}{B}{R}: Until end of turn, Restless Vents becomes a 2/3 black and red Insect creature with menace. It's still a land.\nWhenever Restless Vents attacks, you may discard a card. If you do, draw a card. diff --git a/forge-gui/res/cardsfolder/r/restless_vinestalk.txt b/forge-gui/res/cardsfolder/r/restless_vinestalk.txt index f028c6999cb..a5148f76e4e 100644 --- a/forge-gui/res/cardsfolder/r/restless_vinestalk.txt +++ b/forge-gui/res/cardsfolder/r/restless_vinestalk.txt @@ -7,6 +7,6 @@ A:AB$ Mana | Cost$ T | Produced$ Combo G U | SpellDescription$ Add {G} or {U}. A:AB$ Animate | Cost$ 3 G U | Defined$ Self | Power$ 5 | Toughness$ 5 | Types$ Creature,Plant | Keywords$ Trample | Colors$ Green,Blue | OverwriteColors$ True | SpellDescription$ Until end of turn, CARDNAME becomes a 5/5 green and blue Plant creature with trample. It's still a land. T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigAnimate | TriggerDescription$ Whenever CARDNAME attacks, up to one other target creature has base power and toughness 3/3 until end of turn. SVar:TrigAnimate:DB$ Animate | ValidTgts$ Creature.Other | TgtPrompt$ Select up to one target other creature | Power$ 3 | Toughness$ 3 | TargetMin$ 0 | TargetMax$ 1 -DeckHas:Type$Plant & Color$Green|Blue SVar:HasAttackEffect:TRUE +DeckHas:Type$Plant & Color$Green|Blue Oracle:Restless Vinestalk enters tapped.\n{T}: Add {G} or {U}.\n{3}{G}{U}:Until end of turn, Restless Vinestalk becomes a 5/5 green and blue Plant creature with trample. It's still a land.\nWhenever Restless Vinestalk attacks, up to one other target creature has base power and toughness 3/3 until end of turn. diff --git a/forge-gui/res/cardsfolder/r/retether.txt b/forge-gui/res/cardsfolder/r/retether.txt index 3f9df10cff8..c2137912ac4 100644 --- a/forge-gui/res/cardsfolder/r/retether.txt +++ b/forge-gui/res/cardsfolder/r/retether.txt @@ -2,7 +2,7 @@ Name:Retether ManaCost:3 W Types:Sorcery A:SP$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | Defined$ ValidGraveyard Aura.YouOwn | AttachedTo$ Creature | AILogic$ Pump | SpellDescription$ Return each Aura card from your graveyard to the battlefield. Only creatures can be enchanted this way. (Aura cards that can't enchant a creature on the battlefield remain in your graveyard.) +SVar:NeedsToPlay:Creature.YouCtrl AI:RemoveDeck:Random DeckNeeds:Type$Aura -SVar:NeedsToPlay:Creature.YouCtrl Oracle:Return each Aura card from your graveyard to the battlefield. Only creatures can be enchanted this way. (Aura cards that can't enchant a creature on the battlefield remain in your graveyard.) diff --git a/forge-gui/res/cardsfolder/r/rimefeather_owl.txt b/forge-gui/res/cardsfolder/r/rimefeather_owl.txt index 276b5f872b1..d0893c02bac 100644 --- a/forge-gui/res/cardsfolder/r/rimefeather_owl.txt +++ b/forge-gui/res/cardsfolder/r/rimefeather_owl.txt @@ -8,7 +8,7 @@ A:AB$ PutCounter | Cost$ 1 S | ValidTgts$ Permanent | TgtPrompt$ Select target p S:Mode$ Continuous | EffectZone$ Battlefield | Affected$ Permanent.counters_GE1_ICE | AddType$ Snow | Description$ Permanents with ice counters on them are snow. SVar:X:Count$Valid Permanent.Snow SVar:BuffedBy:Permanent.Snow +SVar:NoZeroToughnessAI:True AI:RemoveDeck:Random DeckNeeds:Type$Snow -SVar:NoZeroToughnessAI:True Oracle:Flying\nRimefeather Owl's power and toughness are each equal to the number of snow permanents on the battlefield.\n{1}{S}: Put an ice counter on target permanent.\nPermanents with ice counters on them are snow. diff --git a/forge-gui/res/cardsfolder/r/ring_of_evos_isle.txt b/forge-gui/res/cardsfolder/r/ring_of_evos_isle.txt index 6ca6df53fb8..6d2c10a9417 100644 --- a/forge-gui/res/cardsfolder/r/ring_of_evos_isle.txt +++ b/forge-gui/res/cardsfolder/r/ring_of_evos_isle.txt @@ -5,7 +5,7 @@ K:Equip:1 A:AB$ Pump | Cost$ 2 | Defined$ Equipped | KW$ Hexproof | SpellDescription$ Equipped creature gains hexproof until end of turn. T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ EvosCounter | TriggerDescription$ At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's blue. SVar:EvosCounter:DB$ PutCounter | Defined$ Equipped | ConditionDefined$ Equipped | ConditionPresent$ Creature.Blue | ConditionCompare$ EQ1 | CounterType$ P1P1 | CounterNum$ 1 -AI:RemoveDeck:Random SVar:AttachAi:AITgts$ Creature.Blue +AI:RemoveDeck:Random DeckNeeds:Color$Blue Oracle:{2}: Equipped creature gains hexproof until end of turn. (It can't be the target of spells or abilities your opponents control.)\nAt the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's blue.\nEquip {1} ({1}: Attach to target creature you control. Equip only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/r/ring_of_kalonia.txt b/forge-gui/res/cardsfolder/r/ring_of_kalonia.txt index e27ce243768..6c106026449 100644 --- a/forge-gui/res/cardsfolder/r/ring_of_kalonia.txt +++ b/forge-gui/res/cardsfolder/r/ring_of_kalonia.txt @@ -5,7 +5,7 @@ K:Equip:1 S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddKeyword$ Trample | Description$ Equipped creature has trample. T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ KaloniaCounter | TriggerDescription$ At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's green. SVar:KaloniaCounter:DB$ PutCounter | Defined$ Equipped | ConditionDefined$ Equipped | ConditionPresent$ Creature.Green | ConditionCompare$ EQ1 | CounterType$ P1P1 | CounterNum$ 1 -AI:RemoveDeck:Random SVar:AttachAi:AITgts$ Creature.Green +AI:RemoveDeck:Random DeckNeeds:Color$Green Oracle:Equipped creature has trample. (It can deal excess combat damage to the player or planeswalker it's attacking.)\nAt the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's green.\nEquip {1} ({1}: Attach to target creature you control. Equip only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/r/ring_of_thune.txt b/forge-gui/res/cardsfolder/r/ring_of_thune.txt index 7f496f08923..260f5c6ebb3 100644 --- a/forge-gui/res/cardsfolder/r/ring_of_thune.txt +++ b/forge-gui/res/cardsfolder/r/ring_of_thune.txt @@ -5,7 +5,7 @@ K:Equip:1 S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddKeyword$ Vigilance | Description$ Equipped creature has vigilance. T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ ThuneCounter | TriggerDescription$ At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's white. SVar:ThuneCounter:DB$ PutCounter | Defined$ Equipped | ConditionDefined$ Equipped | ConditionPresent$ Creature.White | ConditionCompare$ EQ1 | CounterType$ P1P1 | CounterNum$ 1 -AI:RemoveDeck:Random SVar:AttachAi:AITgts$ Creature.White +AI:RemoveDeck:Random DeckNeeds:Color$White Oracle:Equipped creature has vigilance. (Attacking doesn't cause it to tap.)\nAt the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's white.\nEquip {1} ({1}: Attach to target creature you control. Equip only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/r/ring_of_valkas.txt b/forge-gui/res/cardsfolder/r/ring_of_valkas.txt index 7bfac8f0365..c4803e62f1c 100644 --- a/forge-gui/res/cardsfolder/r/ring_of_valkas.txt +++ b/forge-gui/res/cardsfolder/r/ring_of_valkas.txt @@ -5,7 +5,7 @@ K:Equip:1 S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddKeyword$ Haste | Description$ Equipped creature has haste. T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ ValkasCounter | TriggerDescription$ At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's red. SVar:ValkasCounter:DB$ PutCounter | Defined$ Equipped | ConditionDefined$ Equipped | ConditionPresent$ Creature.Red | ConditionCompare$ EQ1 | CounterType$ P1P1 | CounterNum$ 1 -AI:RemoveDeck:Random SVar:AttachAi:AITgts$ Creature.Red +AI:RemoveDeck:Random DeckNeeds:Color$Red Oracle:Equipped creature has haste. (It can attack and {T} no matter when it came under your control.)\nAt the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's red.\nEquip {1} ({1}: Attach to target creature you control. Equip only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/r/ring_of_xathrid.txt b/forge-gui/res/cardsfolder/r/ring_of_xathrid.txt index 1ae1f0e19d6..52245272491 100644 --- a/forge-gui/res/cardsfolder/r/ring_of_xathrid.txt +++ b/forge-gui/res/cardsfolder/r/ring_of_xathrid.txt @@ -5,7 +5,7 @@ K:Equip:1 A:AB$ Regenerate | Cost$ 2 | Defined$ Equipped | SpellDescription$ Regenerate equipped creature. T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ XathridCounter | TriggerDescription$ At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's black. SVar:XathridCounter:DB$ PutCounter | Defined$ Equipped | ConditionDefined$ Equipped | ConditionPresent$ Creature.Black | ConditionCompare$ EQ1 | CounterType$ P1P1 | CounterNum$ 1 -AI:RemoveDeck:Random SVar:AttachAi:AITgts$ Creature.Black +AI:RemoveDeck:Random DeckNeeds:Color$Black Oracle:{2}: Regenerate equipped creature. (The next time that creature would be destroyed this turn, it isn't. Instead tap it, remove all damage from it, and remove it from combat.)\nAt the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's black.\nEquip {1} ({1}: Attach to target creature you control. Equip only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/r/rionya_fire_dancer.txt b/forge-gui/res/cardsfolder/r/rionya_fire_dancer.txt index c48c88ff44a..4b98887e483 100644 --- a/forge-gui/res/cardsfolder/r/rionya_fire_dancer.txt +++ b/forge-gui/res/cardsfolder/r/rionya_fire_dancer.txt @@ -5,6 +5,6 @@ PT:3/4 T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | Execute$ TrigCopy | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of combat on your turn, create X tokens that are copies of another target creature you control, where X is one plus the number of instant and sorcery spells you've cast this turn. They gain haste. Exile them at the beginning of the next end step. SVar:TrigCopy:DB$ CopyPermanent | NumCopies$ X | ValidTgts$ Creature.YouCtrl+Other | TgtPrompt$ Select another target creature you control | PumpKeywords$ Haste | AtEOT$ Exile SVar:X:Count$ThisTurnCast_Instant.YouCtrl,Sorcery.YouCtrl/Plus.1 -DeckNeeds:Type$Instant|Sorcery DeckHas:Ability$Token +DeckNeeds:Type$Instant|Sorcery Oracle:At the beginning of combat on your turn, create X tokens that are copies of another target creature you control, where X is one plus the number of instant and sorcery spells you've cast this turn. They gain haste. Exile them at the beginning of the next end step. diff --git a/forge-gui/res/cardsfolder/r/rivaz_of_the_claw.txt b/forge-gui/res/cardsfolder/r/rivaz_of_the_claw.txt index 7622e1dc77e..5e1a59bcb92 100644 --- a/forge-gui/res/cardsfolder/r/rivaz_of_the_claw.txt +++ b/forge-gui/res/cardsfolder/r/rivaz_of_the_claw.txt @@ -9,6 +9,6 @@ T:Mode$ SpellCast | ValidCard$ Dragon.wasCastFromYourGraveyard | ValidActivating SVar:DBAnimate:DB$ Animate | Defined$ TriggeredCard | Duration$ Permanent | Triggers$ TrigDieExile SVar:TrigDieExile:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigExile | TriggerDescription$ When this creature dies, exile it. SVar:TrigExile:DB$ ChangeZone | Defined$ TriggeredNewCardLKICopy | Origin$ Graveyard | Destination$ Exile -DeckNeeds:Type$Dragon & Modifier$NoToken DeckHas:Ability$Graveyard +DeckNeeds:Type$Dragon & Modifier$NoToken Oracle:Menace\n{T}: Add two mana in any combination of colors. Spend this mana only to cast Dragon creature spells.\nOnce during each of your turns, you may cast a Dragon creature spell from your graveyard.\nWhenever you cast a Dragon creature spell from your graveyard, it gains "When this creature dies, exile it." diff --git a/forge-gui/res/cardsfolder/r/river_of_tears.txt b/forge-gui/res/cardsfolder/r/river_of_tears.txt index c600ae87e54..c16198c9d21 100644 --- a/forge-gui/res/cardsfolder/r/river_of_tears.txt +++ b/forge-gui/res/cardsfolder/r/river_of_tears.txt @@ -3,7 +3,7 @@ ManaCost:no cost Types:Land A:AB$ Mana | Cost$ T | Produced$ U | ConditionCheckSVar$ X | ConditionSVarCompare$ EQ0 | SubAbility$ ManaB | SpellDescription$ Add {U}. If you played a land this turn, add {B} instead. SVar:ManaB:DB$ Mana | Produced$ B | ConditionCheckSVar$ X | ConditionSVarCompare$ GE1 +SVar:X:PlayerCountPropertyYou$LandsPlayed AI:RemoveDeck:Random DeckHints:Color$Blue|Black -SVar:X:PlayerCountPropertyYou$LandsPlayed Oracle:{T}: Add {U}. If you played a land this turn, add {B} instead. diff --git a/forge-gui/res/cardsfolder/r/rohgahh_kher_keep_overlord.txt b/forge-gui/res/cardsfolder/r/rohgahh_kher_keep_overlord.txt index 06272110be1..dc3aa1b228a 100644 --- a/forge-gui/res/cardsfolder/r/rohgahh_kher_keep_overlord.txt +++ b/forge-gui/res/cardsfolder/r/rohgahh_kher_keep_overlord.txt @@ -7,7 +7,7 @@ T:Mode$ SpellCast | ValidCard$ Kobold | ValidActivatingPlayer$ You | Execute$ Tr SVar:TrigTokenDragon:AB$ Token | Cost$ 2 | TokenAmount$ 1 | TokenOwner$ You | TokenScript$ r_4_4_dragon_flying T:Mode$ SpellCast | ValidCard$ Dragon | ValidActivatingPlayer$ You | Execute$ TrigTokenKobold | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast a Dragon spell, create a 0/1 red Kobold creature token named Kobolds of Kher Keep. SVar:TrigTokenKobold:DB$ Token | TokenAmount$ 1 | TokenOwner$ You | TokenScript$ kobolds_of_kher_keep +SVar:PlayMain1:TRUE DeckHints:Name$Kobolds of Kher Keep DeckNeeds:Type$Dragon|Kobold -SVar:PlayMain1:TRUE Oracle:Other Kobolds you control get +2/+2.\nWhenever you cast a Kobold spell, you may pay {2}. If you do, create a 4/4 red Dragon creature token with flying.\nWhenever you cast a Dragon spell, create a 0/1 red Kobold creature token named Kobolds of Kher Keep. diff --git a/forge-gui/res/cardsfolder/r/rohgahh_of_kher_keep.txt b/forge-gui/res/cardsfolder/r/rohgahh_of_kher_keep.txt index e0c320b5424..a1a87790be0 100644 --- a/forge-gui/res/cardsfolder/r/rohgahh_of_kher_keep.txt +++ b/forge-gui/res/cardsfolder/r/rohgahh_of_kher_keep.txt @@ -8,6 +8,6 @@ SVar:DBChooseP:DB$ ChoosePlayer | Defined$ You | Choices$ Player.Opponent | AILo SVar:DBGainControl:DB$ GainControl | NewController$ Player.Chosen | AllValid$ Card.Self,Creature.YouCtrl+namedKobolds of Kher Keep | SubAbility$ DBClearChosen SVar:DBClearChosen:DB$ Cleanup | ClearChosenPlayer$ True S:Mode$ Continuous | Affected$ Creature.YouCtrl+namedKobolds of Kher Keep | AddPower$ 2 | AddToughness$ 2 | Description$ Creatures you control named Kobolds of Kher Keep get +2/+2. -DeckHints:Name$Kobolds of Kher Keep & Type$Kobold SVar:PlayMain1:TRUE +DeckHints:Name$Kobolds of Kher Keep & Type$Kobold Oracle:At the beginning of your upkeep, you may pay {R}{R}{R}. If you don't, tap Rohgahh of Kher Keep and all creatures named Kobolds of Kher Keep, then an opponent gains control of them.\nCreatures you control named Kobolds of Kher Keep get +2/+2. diff --git a/forge-gui/res/cardsfolder/r/rona_sheoldreds_faithful.txt b/forge-gui/res/cardsfolder/r/rona_sheoldreds_faithful.txt index 54eeb4cae10..20bc4871a9e 100644 --- a/forge-gui/res/cardsfolder/r/rona_sheoldreds_faithful.txt +++ b/forge-gui/res/cardsfolder/r/rona_sheoldreds_faithful.txt @@ -5,7 +5,7 @@ PT:3/4 T:Mode$ SpellCast | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDrain | TriggerDescription$ Whenever you cast an instant or sorcery spell, each opponent loses 1 life. SVar:TrigDrain:DB$ LoseLife | Defined$ Opponent | LifeAmount$ 1 S:Mode$ Continuous | Affected$ Card.Self | MayPlay$ True | AffectedZone$ Graveyard | EffectZone$ Graveyard | RaiseCost$ Discard<2/Card> | ActivationZone$ Graveyard | Description$ You may cast CARDNAME from your graveyard by discarding two cards in addition to paying its other costs. +SVar:DiscardMe:1 DeckHas:Ability$Discard|Graveyard DeckNeeds:Type$Instant|Sorcery -SVar:DiscardMe:1 Oracle:Whenever you cast an instant or sorcery spell, each opponent loses 1 life.\nYou may cast Rona, Sheoldred's Faithful from your graveyard by discarding two cards in addition to paying its other costs. diff --git a/forge-gui/res/cardsfolder/r/rotwidow_pack.txt b/forge-gui/res/cardsfolder/r/rotwidow_pack.txt index 6f7ac5c23ad..60b6cbfc2b8 100644 --- a/forge-gui/res/cardsfolder/r/rotwidow_pack.txt +++ b/forge-gui/res/cardsfolder/r/rotwidow_pack.txt @@ -6,6 +6,6 @@ K:Reach A:AB$ Token | Cost$ 3 B G ExileFromGrave<1/Creature> | TokenAmount$ 1 | TokenScript$ g_1_2_spider_reach | TokenOwner$ You | SubAbility$ DBLoseLife | SpellDescription$ Create a 1/2 green Spider creature token with reach, then each opponent loses 1 life for each Spider you control. SVar:DBLoseLife:DB$ LoseLife | Defined$ Player.Opponent | LifeAmount$ X SVar:X:Count$Valid Spider.YouCtrl -DeckHas:Ability$Token SVar:AIPreference:ExileFromGraveCost$Creature+YouOwn+inZoneGraveyard +DeckHas:Ability$Token Oracle:Reach\n{3}{B}{G}, Exile a creature card from your graveyard: Create a 1/2 green Spider creature token with reach, then each opponent loses 1 life for each Spider you control. diff --git a/forge-gui/res/cardsfolder/r/rukarumal_biologist.txt b/forge-gui/res/cardsfolder/r/rukarumal_biologist.txt index e0871134218..2d522180959 100644 --- a/forge-gui/res/cardsfolder/r/rukarumal_biologist.txt +++ b/forge-gui/res/cardsfolder/r/rukarumal_biologist.txt @@ -6,8 +6,8 @@ K:ETBReplacement:Other:ChooseCT SVar:ChooseCT:DB$ ChooseType | Defined$ You | Type$ Creature | SpellDescription$ As CARDNAME enters, choose a creature type. | AILogic$ MostProminentInComputerDeck S:Mode$ Continuous | Affected$ Creature.YouCtrl+nonToken,Sliver.YouCtrl | AffectedZone$ Battlefield,Hand,Graveyard,Exile,Stack,Library,Command | AddType$ ChosenType | Description$ Slivers you control and nontoken creatures you control are the chosen type in addition to their other creature types. The same is true for creature spells you control and creature cards you own that aren't on the battlefield. A:AB$ Token | Cost$ 3 T | TokenAmount$ 1 | TokenScript$ c_1_1_sliver | TokenOwner$ You | SpellDescription$ Create a 1/1 colorless Sliver creature token. +SVar:HasAttackEffect:TRUE AI:RemoveDeck:Random DeckHas:Ability$Token & Type$Sliver DeckNeeds:Type$Sliver -SVar:HasAttackEffect:TRUE Oracle:As Rukarumel, Biologist enters, choose a creature type.\nSlivers you control and nontoken creatures you control are the chosen type in addition to their other creature types. The same is true for creature spells you control and creature cards you own that aren't on the battlefield.\n{3}, {T}: Create a 1/1 colorless Sliver creature token. diff --git a/forge-gui/res/cardsfolder/r/rulik_mons_warren_chief.txt b/forge-gui/res/cardsfolder/r/rulik_mons_warren_chief.txt index 88c8472cd29..9c5288b53d1 100644 --- a/forge-gui/res/cardsfolder/r/rulik_mons_warren_chief.txt +++ b/forge-gui/res/cardsfolder/r/rulik_mons_warren_chief.txt @@ -7,6 +7,6 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ DBDig | TriggerDescription$ Wh SVar:DBDig:DB$ Dig | DigNum$ 1 | ChangeNum$ 1 | ChangeValid$ Card.Land | ForceRevealToController$ True | Optional$ True | RememberChanged$ True | DestinationZone$ Battlefield | DestinationZone2$ Library | LibraryPosition2$ 0 | SubAbility$ DBToken SVar:DBToken:DB$ Token | ConditionDefined$ Remembered | ConditionPresent$ Card.inZoneBattlefield | ConditionCompare$ EQ0 | TokenScript$ r_1_1_goblin | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -DeckHas:Ability$Token SVar:HasAttackEffect:TRUE +DeckHas:Ability$Token Oracle:Menace (This creature can't be blocked except by two or more creatures.)\nWhenever Rulik Mons, Warren Chief attacks, look at the top card of your library. If it's a land card, you may put it onto the battlefield tapped. If you didn't put a card onto the battlefield this way, create a 1/1 red Goblin creature token. diff --git a/forge-gui/res/cardsfolder/r/rummaging_wizard.txt b/forge-gui/res/cardsfolder/r/rummaging_wizard.txt index deb1d314a2f..70f5085f48c 100644 --- a/forge-gui/res/cardsfolder/r/rummaging_wizard.txt +++ b/forge-gui/res/cardsfolder/r/rummaging_wizard.txt @@ -3,7 +3,7 @@ ManaCost:3 U Types:Creature Human Wizard PT:2/2 A:AB$ Surveil | Cost$ 2 U | Amount$ 1 | SpellDescription$ Surveil 1. (Look at the top card of your library. You may put that card into your graveyard.) -AI:RemoveDeck:All SVar:TrigSurveil:DB$ Surveil | Amount$ 1 +AI:RemoveDeck:All DeckHas:Ability$Surveil|Graveyard Oracle:{2}{U}: Surveil 1. (Look at the top card of your library. You may put that card into your graveyard.) diff --git a/forge-gui/res/cardsfolder/r/runo_stromkirk_krothuss_lord_of_the_deep.txt b/forge-gui/res/cardsfolder/r/runo_stromkirk_krothuss_lord_of_the_deep.txt index b8934c77605..32aff3a280d 100644 --- a/forge-gui/res/cardsfolder/r/runo_stromkirk_krothuss_lord_of_the_deep.txt +++ b/forge-gui/res/cardsfolder/r/runo_stromkirk_krothuss_lord_of_the_deep.txt @@ -25,6 +25,6 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigCopy | TriggerDescription$ SVar:TrigCopy:DB$ CopyPermanent | ValidTgts$ Creature.Other+attacking | TgtPrompt$ Select another target attacking creature | TokenTapped$ True | TokenAttacking$ True | NumCopies$ X | AITgts$ Kraken.Other+attacking,Leviathan.Other+attacking,Octopus.Other+attacking,Serpent.Other+attacking SVar:X:Count$Compare Y GE1.2.1 SVar:Y:Targeted$Valid Kraken,Leviathan,Octopus,Serpent -DeckHints:Type$Kraken|Leviathan|Octopus|Serpent SVar:HasAttackEffect:TRUE +DeckHints:Type$Kraken|Leviathan|Octopus|Serpent Oracle:Flying\nWhenever Krothuss, Lord of the Deep attacks, create a tapped and attacking token that's a copy of another target attacking creature. If that creature is a Kraken, Leviathan, Octopus, or Serpent, create two of those tokens instead. diff --git a/forge-gui/res/cardsfolder/r/rush_the_room.txt b/forge-gui/res/cardsfolder/r/rush_the_room.txt index dbd323cd075..306c7713b80 100644 --- a/forge-gui/res/cardsfolder/r/rush_the_room.txt +++ b/forge-gui/res/cardsfolder/r/rush_the_room.txt @@ -3,6 +3,6 @@ ManaCost:R Types:Instant A:SP$ Pump | ValidTgts$ Creature | NumAtt$ +1 | SubAbility$ DBPump | KW$ First Strike | SpellDescription$ Target creature gets +1/+0 and gains first strike until end of turn. SVar:DBPump:DB$ Pump | Defined$ Targeted | KW$ Haste | ConditionDefined$ Targeted | ConditionPresent$ Orc,Goblin | SpellDescription$ If it's a Goblin or Orc, it also gains haste until end of turn. -DeckHints:Type$Goblin|Orc SVar:PlayMain1:TRUE +DeckHints:Type$Goblin|Orc Oracle:Target creature gets +1/+0 and gains first strike until end of turn. If it's a Goblin or Orc, it also gains haste until end of turn. diff --git a/forge-gui/res/cardsfolder/r/rust_monster.txt b/forge-gui/res/cardsfolder/r/rust_monster.txt index 6c94be854a9..bc6bc25b6a8 100644 --- a/forge-gui/res/cardsfolder/r/rust_monster.txt +++ b/forge-gui/res/cardsfolder/r/rust_monster.txt @@ -4,6 +4,6 @@ Types:Creature Beast PT:2/1 K:First Strike A:AB$ Pump | Cost$ Sac<1/Artifact> | Defined$ Self | NumAtt$ 2 | SpellDescription$ CARDNAME gets +2/+0 until end of turn. -DeckNeeds:Type$Artifact DeckHas:Ability$Sacrifice +DeckNeeds:Type$Artifact Oracle:First strike\nSacrifice an artifact: Rust Monster gets +2/+0 until end of turn. diff --git a/forge-gui/res/cardsfolder/r/ruthless_technomancer.txt b/forge-gui/res/cardsfolder/r/ruthless_technomancer.txt index 6575c6d819e..3d8695d93a4 100644 --- a/forge-gui/res/cardsfolder/r/ruthless_technomancer.txt +++ b/forge-gui/res/cardsfolder/r/ruthless_technomancer.txt @@ -7,7 +7,7 @@ SVar:TrigToken:AB$ Token | Cost$ Sac<1/Creature.Other/another creature you contr SVar:Y:Sacrificed$CardPower A:AB$ ChangeZone | Cost$ XMin1 2 B Sac | Origin$ Graveyard | Destination$ Battlefield | ValidTgts$ Creature.powerLEX+YouOwn | TgtPrompt$ Select target creature with power X or less | SpellDescription$ Return target creature card with power X or less from your graveyard to the battlefield. X can't be 0. SVar:X:Count$xPaid +SVar:AIPreference:SacCost$Artifact.cmcLE1 DeckHas:Ability$Sacrifice|Token|Graveyard & Type$Treasure|Artifact DeckHints:Type$Artifact -SVar:AIPreference:SacCost$Artifact.cmcLE1 Oracle:When Ruthless Technomancer enters, you may sacrifice another creature you control. If you do, create a number of Treasure tokens equal to that creature's power.\n{2}{B}, Sacrifice X artifacts: Return target creature card with power X or less from your graveyard to the battlefield. X can't be 0. diff --git a/forge-gui/res/cardsfolder/rebalanced/a-death_priest_of_myrkul.txt b/forge-gui/res/cardsfolder/rebalanced/a-death_priest_of_myrkul.txt index 40fde8a714b..5da20660841 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-death_priest_of_myrkul.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-death_priest_of_myrkul.txt @@ -6,7 +6,7 @@ S:Mode$ Continuous | Affected$ Zombie.YouCtrl,Skeleton.YouCtrl,Vampire.YouCtrl | T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | CheckSVar$ X | SVarCompare$ GE1 | Execute$ TrigToken | TriggerDescription$ At the beginning of your end step, if a creature died this turn, create a 1/1 black Skeleton creature token. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ b_1_1_skeleton | TokenOwner$ You SVar:X:Count$ThisTurnEntered_Graveyard_from_Battlefield_Creature -DeckHas:Ability$Token SVar:PlayMain1:TRUE +DeckHas:Ability$Token DeckHints:Type$Skeleton|Zombie|Vampire Oracle:Skeletons, Vampires, and Zombies you control get +1/+1.\nAt the beginning of your end step, if a creature died this turn, create a 1/1 black Skeleton creature token. diff --git a/forge-gui/res/cardsfolder/rebalanced/a-dokuchi_silencer.txt b/forge-gui/res/cardsfolder/rebalanced/a-dokuchi_silencer.txt index 8ffef7e16da..080f355d5b9 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-dokuchi_silencer.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-dokuchi_silencer.txt @@ -6,6 +6,6 @@ K:Ninjutsu:1 B T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | Execute$ TrigImmediateTrig | CombatDamage$ True | OptionalDecider$ You | TriggerDescription$ Whenever CARDNAME deals combat damage to a player, you may discard a card. When you do, destroy target creature or planeswalker that player controls. SVar:TrigImmediateTrig:AB$ ImmediateTrigger | Cost$ Discard<1/Card> | Execute$ TrigDestroy | TriggerDescription$ When you do, destroy target creature or planeswalker that player controls. SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.ControlledBy Spawner>TriggeredTarget,Planeswalker.ControlledBy Spawner>TriggeredTarget | TgtPrompt$ Select target creature or planeswalker damaged player controls -DeckHas:Ability$Discard SVar:AIPreference:DiscardCost$Card.cmcLE3 +DeckHas:Ability$Discard Oracle:Ninjutsu {1}{B}\nWhenever Dokuchi Silencer deals combat damage to a player, you may discard a card. When you do, destroy target creature or planeswalker that player controls. diff --git a/forge-gui/res/cardsfolder/rebalanced/a-earthquake_dragon.txt b/forge-gui/res/cardsfolder/rebalanced/a-earthquake_dragon.txt index ea5375956b5..bdf88028444 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-earthquake_dragon.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-earthquake_dragon.txt @@ -8,6 +8,6 @@ S:Mode$ ReduceCost | ValidCard$ Card.Self | Type$ Spell | Amount$ X | EffectZone A:AB$ ChangeZone | Cost$ 2 G Sac<1/Land> | Origin$ Graveyard | Destination$ Hand | ActivationZone$ Graveyard | SpellDescription$ Return CARDNAME from your graveyard to your hand. SVar:DiscardMe:1 SVar:PlayMain1:TRUE -DeckHints:Type$Dragon SVar:X:Count$Valid Creature.Dragon+notnamedEarthquake Dragon+notnamedA-Earthquake Dragon+YouCtrl$SumCMC +DeckHints:Type$Dragon Oracle:This spell costs {X} less to cast, where X is the total mana value of Dragons you control not named Earthquake Dragon.\nFlying, trample\n{2}{G}, Sacrifice a land: Return Earthquake Dragon from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/rebalanced/a-haywire_mite.txt b/forge-gui/res/cardsfolder/rebalanced/a-haywire_mite.txt index e30a4e520fa..3704fcdd3f3 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-haywire_mite.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-haywire_mite.txt @@ -5,7 +5,7 @@ PT:1/2 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigGainLife | TriggerDescription$ When CARDNAME dies, you gain 3 life. SVar:TrigGainLife:DB$ GainLife | LifeAmount$ 3 A:AB$ ChangeZone | Cost$ G Sac<1/CARDNAME> | ValidTgts$ Enchantment.nonCreature,Artifact.nonCreature | TgtPrompt$ Select target noncreature artifact or noncreature enchantment | Origin$ Battlefield | Destination$ Exile | SpellDescription$ Exile target noncreature artifact or noncreature enchantment. +SVar:SacMe:1 DeckHas:Ability$LifeGain|Sacrifice DeckHints:Color$Green -SVar:SacMe:1 Oracle:When Haywire Mite dies, you gain 3 life.\n{G}, Sacrifice Haywire Mite: Exile target noncreature artifact or noncreature enchantment. diff --git a/forge-gui/res/cardsfolder/rebalanced/a-iridescent_hornbeetle.txt b/forge-gui/res/cardsfolder/rebalanced/a-iridescent_hornbeetle.txt index 3a71972483a..7cb2c9c05bc 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-iridescent_hornbeetle.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-iridescent_hornbeetle.txt @@ -5,6 +5,6 @@ PT:3/3 T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ At the beginning of your end step, create a 1/1 green Insect creature token for each +1/+1 counter you've put on creatures under your control this turn. SVar:TrigToken:DB$ Token | TokenAmount$ X | TokenOwner$ You | TokenScript$ g_1_1_insect SVar:X:Count$CountersAddedThisTurn P1P1 You Creature.YouCtrl -DeckNeeds:Ability$Counters DeckHas:Ability$Counters +DeckNeeds:Ability$Counters Oracle:At the beginning of your end step, create a 1/1 green Insect creature token for each +1/+1 counter you've put on creatures under your control this turn. diff --git a/forge-gui/res/cardsfolder/rebalanced/a-kargan_intimidator.txt b/forge-gui/res/cardsfolder/rebalanced/a-kargan_intimidator.txt index 07057830c6c..1fd45f34620 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-kargan_intimidator.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-kargan_intimidator.txt @@ -6,6 +6,6 @@ S:Mode$ CantBlockBy | ValidAttacker$ Creature.Warrior | ValidBlocker$ Creature.C A:AB$ Charm | Cost$ 1 | Choices$ Pump,Coward | ChoiceRestriction$ ThisTurn | CharmNum$ 1 SVar:Pump:DB$ Pump | ValidTgts$ Warrior | TgtPrompt$ Select target Warrior | NumAtt$ 1 | NumDef$ 1 | KW$ Trample | SpellDescription$ Target Warrior gets +1/+1 and gains trample until end of turn. SVar:Coward:DB$ Animate | ValidTgts$ Creature | TgtPrompt$ Select target creature | Types$ Coward | RemoveCreatureTypes$ True | SpellDescription$ Target creature becomes a Coward until end of turn. -DeckHints:Type$Warrior SVar:PlayMain1:TRUE +DeckHints:Type$Warrior Oracle:Cowards can't block Warriors.\n{1}: Choose one that hasn't been chosen this turn —\n• Target Warrior gets +1/+1 and gains trample until end of turn.\n• Target creature becomes a Coward until end of turn. diff --git a/forge-gui/res/cardsfolder/rebalanced/a-karn_living_legacy.txt b/forge-gui/res/cardsfolder/rebalanced/a-karn_living_legacy.txt index 8f85689e08e..c52bc3634f1 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-karn_living_legacy.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-karn_living_legacy.txt @@ -8,7 +8,7 @@ SVar:DBDig:DB$ Dig | DigNum$ X | ChangeNum$ 1 | RestRandomOrder$ True | UnlessCo A:AB$ Effect | Cost$ SubCounter<6/LOYALTY> | Planeswalker$ True | Ultimate$ True | AILogic$ Always | Stackable$ False | Name$ Emblem — Karn, Living Legacy | Image$ emblem_karn_living_legacy | Duration$ Permanent | Abilities$ KarnPing | SpellDescription$ You get an emblem with "Tap an untapped artifact you control: This emblem deals 1 damage to any target." SVar:KarnPing:AB$ DealDamage | Cost$ tapXType<1/Artifact> | ActivationZone$ Command | ValidTgts$ Any | NumDmg$ 1 SVar:PlayMain1:TRUE +SVar:X:Count$ChosenNumber DeckHas:Ability$Token & Type$Artifact DeckNeeds:Type$Artifact -SVar:X:Count$ChosenNumber Oracle:[+1]: Create a tapped Powerstone token.\n[0]: Pay any amount of mana. Look at that many cards from the top of your library, then put one of those cards into your hand and the rest on the bottom of your library in a random order.\n[-6]: You get an emblem with "Tap an untapped artifact you control: This emblem deals 1 damage to any target." diff --git a/forge-gui/res/cardsfolder/rebalanced/a-mishra_excavation_prodigy.txt b/forge-gui/res/cardsfolder/rebalanced/a-mishra_excavation_prodigy.txt index 38adf3a0c3f..ed3b1f240bd 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-mishra_excavation_prodigy.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-mishra_excavation_prodigy.txt @@ -5,7 +5,7 @@ PT:2/1 A:AB$ Draw | Cost$ 1 T Discard<1/Card> | SpellDescription$ Draw a card. T:Mode$ DiscardedAll | ValidPlayer$ You | ValidCard$ Card.Artifact | TriggerZones$ Battlefield | ActivationLimit$ 1 | Execute$ TrigMana | TriggerDescription$ Whenever you discard one or more artifact cards, add {R}{R}. This ability triggers only once each turn. SVar:TrigMana:DB$ Mana | Produced$ R R -DeckHints:Type$Artifact -DeckHas:Ability$Discard SVar:AIPreference:DiscardCost$Card.Artifact +DeckHas:Ability$Discard +DeckHints:Type$Artifact Oracle:{1}, {T}, Discard a card: Draw a card.\nWhenever you discard one or more artifact cards, add {R}{R}. This ability triggers only once each turn. diff --git a/forge-gui/res/cardsfolder/rebalanced/a-omnath_locus_of_creation.txt b/forge-gui/res/cardsfolder/rebalanced/a-omnath_locus_of_creation.txt index a1ca318007a..8ad0756bf1c 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-omnath_locus_of_creation.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-omnath_locus_of_creation.txt @@ -9,6 +9,6 @@ SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ 4 | ConditionCheckSVar SVar:DBMana:DB$ Mana | Produced$ R G W U | ConditionCheckSVar$ LandfallAmount | ConditionSVarCompare$ EQ2 | SubAbility$ DBDamageAll SVar:DBDamageAll:DB$ DamageAll | ValidPlayers$ Opponent | ValidCards$ Planeswalker.YouDontCtrl | NumDmg$ 4 | ConditionCheckSVar$ LandfallAmount | ConditionSVarCompare$ EQ3 SVar:LandfallAmount:Count$ResolvedThisTurn -DeckHas:Ability$LifeGain SVar:BuffedBy:Land +DeckHas:Ability$LifeGain Oracle:When Omnath, Locus of Creation enters, draw a card.\nLandfall — Whenever a land you control enters, you gain 4 life if this is the first time this ability has resolved this turn. If it's the second time, add {R}{G}{W}{U}. If it's the third time, Omnath deals 4 damage to each opponent and each planeswalker you don't control. diff --git a/forge-gui/res/cardsfolder/rebalanced/a-rulik_mons_warren_chief.txt b/forge-gui/res/cardsfolder/rebalanced/a-rulik_mons_warren_chief.txt index 6f83b7d3ea3..4aa88c190c4 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-rulik_mons_warren_chief.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-rulik_mons_warren_chief.txt @@ -8,6 +8,6 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ DBDig | TriggerDescription$ Wh SVar:DBDig:DB$ Dig | DigNum$ 1 | ChangeNum$ 1 | ChangeValid$ Card.Land | ForceRevealToController$ True | Optional$ True | RememberChanged$ True | DestinationZone$ Battlefield | DestinationZone2$ Library | LibraryPosition2$ 0 | SubAbility$ DBToken SVar:DBToken:DB$ Token | ConditionDefined$ Remembered | ConditionPresent$ Card.inZoneBattlefield | ConditionCompare$ EQ0 | TokenScript$ r_1_1_goblin | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -DeckHas:Ability$Token SVar:HasAttackEffect:TRUE +DeckHas:Ability$Token Oracle:Menace\nWhenever Rulik Mons, Warren Chief enters or attacks, look at the top card of your library. If it's a land card, you may put it onto the battlefield tapped. If you didn't put a card onto the battlefield this way, create a 1/1 red Goblin creature token. diff --git a/forge-gui/res/cardsfolder/rebalanced/a-sigardian_paladin.txt b/forge-gui/res/cardsfolder/rebalanced/a-sigardian_paladin.txt index 9ecc4847fe3..f882e64a887 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-sigardian_paladin.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-sigardian_paladin.txt @@ -5,6 +5,6 @@ PT:4/3 S:Mode$ Continuous | Affected$ Card.Self | AddKeyword$ Trample & Lifelink | CheckSVar$ X | Description$ As long as you've put one or more +1/+1 counters on a creature this turn, CARDNAME has trample and lifelink. SVar:X:Count$CountersAddedThisTurn P1P1 You Creature A:AB$ Pump | Cost$ G W | ValidTgts$ Creature.YouCtrl+counters_GE1_P1P1 | TgtPrompt$ Select target creature with a +1/+1 counter on it | KW$ Trample & Lifelink | SpellDescription$ Target creature you control with a +1/+1 counter on it gains trample and lifelink until end of turn. -DeckNeeds:Ability$Counters DeckHas:Ability$LifeGain +DeckNeeds:Ability$Counters Oracle:As long as you've put one or more +1/+1 counters on a creature this turn, Sigardian Paladin has trample and lifelink.\n{G}{W}: Target creature you control with a +1/+1 counter on it gains trample and lifelink until end of turn. diff --git a/forge-gui/res/cardsfolder/rebalanced/a-soul_of_windgrace.txt b/forge-gui/res/cardsfolder/rebalanced/a-soul_of_windgrace.txt index 9e17ef8801d..51e08a370c6 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-soul_of_windgrace.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-soul_of_windgrace.txt @@ -9,6 +9,6 @@ A:AB$ GainLife | Cost$ G Discard<1/Land> | LifeAmount$ 3 | SpellDescription$ You A:AB$ Draw | Cost$ R Discard<1/Land> | SpellDescription$ Draw a card. A:AB$ Pump | Cost$ B Discard<1/Land> | KW$ Indestructible | SubAbility$ DBTap | StackDescription$ SpellDescription | SpellDescription$ CARDNAME gains indestructible until end of turn. SVar:DBTap:DB$ Tap | Defined$ Self | StackDescription$ SpellDescription | SpellDescription$ Tap it. -DeckHas:Ability$LifeGain|Discard|Graveyard & Keyword$Indestructible SVar:HasAttackEffect:TRUE +DeckHas:Ability$LifeGain|Discard|Graveyard & Keyword$Indestructible Oracle:Whenever Soul of Windgrace enters or attacks, you may put a land card from a graveyard onto the battlefield tapped under your control.\n{G}, Discard a land card: You gain 3 life.\n{R}, Discard a land card: Draw a card.\n{B}, Discard a land card: Soul of Windgrace gains indestructible until end of turn. Tap it. diff --git a/forge-gui/res/cardsfolder/rebalanced/a-tatyova_steward_of_tides.txt b/forge-gui/res/cardsfolder/rebalanced/a-tatyova_steward_of_tides.txt index 9c2e29e721a..c9b95e0950f 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-tatyova_steward_of_tides.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-tatyova_steward_of_tides.txt @@ -5,6 +5,6 @@ PT:4/4 S:Mode$ Continuous | Affected$ Creature.Land+YouCtrl | AddKeyword$ Flying | Description$ Land creatures you control have flying. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.YouCtrl | IsPresent$ Land.YouCtrl | PresentCompare$ GE7 | TriggerZones$ Battlefield | Execute$ TrigAnimate | TriggerDescription$ Whenever a land you control enters, if you control seven or more lands, up to one target land you control becomes a 4/4 Elemental creature with haste. It's still a land. SVar:TrigAnimate:DB$ Animate | ValidTgts$ Land.YouCtrl | TargetMin$ 0 | TargetMax$ 1 | Duration$ Permanent | TgtPrompt$ Select up to one target land you control | Power$ 4 | Toughness$ 4 | Types$ Elemental,Creature | Keywords$ Haste -DeckHints:Type$Land SVar:BuffedBy:Land +DeckHints:Type$Land Oracle:Land creatures you control have flying.\nWhenever a land you control enters, if you control seven or more lands, up to one target land you control becomes a 4/4 Elemental creature with haste. It's still a land. From 7fc3e18ff503b3e69649a10dee0937cacd63a755 Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 12:11:20 +0100 Subject: [PATCH 27/91] Edit pile cleanup: Line reordering, second pass: part 8, folder 's' --- forge-gui/res/cardsfolder/s/sage_of_fables.txt | 2 +- forge-gui/res/cardsfolder/s/sage_of_lat_nam.txt | 2 +- forge-gui/res/cardsfolder/s/saheeli_sublime_artificer.txt | 2 +- forge-gui/res/cardsfolder/s/saint_traft_and_rem_karolus.txt | 2 +- forge-gui/res/cardsfolder/s/sample_collector.txt | 4 ++-- forge-gui/res/cardsfolder/s/sanctuary_warden.txt | 2 +- forge-gui/res/cardsfolder/s/sanguine_spy.txt | 2 +- forge-gui/res/cardsfolder/s/saproling_cluster.txt | 2 +- forge-gui/res/cardsfolder/s/saproling_infestation.txt | 2 +- forge-gui/res/cardsfolder/s/sarah_jane_smith.txt | 2 +- forge-gui/res/cardsfolder/s/sarevok_the_usurper.txt | 2 +- forge-gui/res/cardsfolder/s/scrapyard_recombiner.txt | 2 +- forge-gui/res/cardsfolder/s/screaming_phantom.txt | 2 +- forge-gui/res/cardsfolder/s/screeching_scorchbeast.txt | 2 +- forge-gui/res/cardsfolder/s/scrib_nibblers.txt | 2 +- forge-gui/res/cardsfolder/s/scrounging_bandar.txt | 2 +- forge-gui/res/cardsfolder/s/scurrilous_sentry.txt | 2 +- forge-gui/res/cardsfolder/s/scute_swarm.txt | 2 +- forge-gui/res/cardsfolder/s/sedraxis_alchemist.txt | 6 +++--- forge-gui/res/cardsfolder/s/seed_spark.txt | 2 +- forge-gui/res/cardsfolder/s/sentinel_sarah_lyons.txt | 2 +- forge-gui/res/cardsfolder/s/setessan_champion.txt | 2 +- forge-gui/res/cardsfolder/s/setessan_skirmisher.txt | 2 +- forge-gui/res/cardsfolder/s/shadowborn_apostle.txt | 4 ++-- forge-gui/res/cardsfolder/s/shagrat_loot_bearer.txt | 2 +- forge-gui/res/cardsfolder/s/shaun_father_of_synths.txt | 2 +- forge-gui/res/cardsfolder/s/sheoldreds_assimilator.txt | 2 +- forge-gui/res/cardsfolder/s/shivan_emissary.txt | 2 +- forge-gui/res/cardsfolder/s/shuriken.txt | 2 +- forge-gui/res/cardsfolder/s/sidar_jabari_of_zhalfir.txt | 2 +- forge-gui/res/cardsfolder/s/sigardian_paladin.txt | 2 +- forge-gui/res/cardsfolder/s/silvar_devourer_of_the_free.txt | 4 ++-- forge-gui/res/cardsfolder/s/simic_basilisk.txt | 4 ++-- forge-gui/res/cardsfolder/s/six.txt | 2 +- forge-gui/res/cardsfolder/s/skanos_dragonheart.txt | 2 +- forge-gui/res/cardsfolder/s/skull_of_orm.txt | 2 +- forge-gui/res/cardsfolder/s/skywarp_skaab.txt | 2 +- forge-gui/res/cardsfolder/s/sliver_gravemother.txt | 2 +- forge-gui/res/cardsfolder/s/sliversmith.txt | 4 ++-- forge-gui/res/cardsfolder/s/sludge_monster.txt | 2 +- forge-gui/res/cardsfolder/s/smelting_vat.txt | 2 +- forge-gui/res/cardsfolder/s/sneaky_snacker.txt | 2 +- forge-gui/res/cardsfolder/s/so_shiny.txt | 2 +- forge-gui/res/cardsfolder/s/solarion.txt | 2 +- forge-gui/res/cardsfolder/s/soul_of_windgrace.txt | 2 +- forge-gui/res/cardsfolder/s/soul_stair_expedition.txt | 2 +- forge-gui/res/cardsfolder/s/sovereign_okinec_ahau.txt | 2 +- forge-gui/res/cardsfolder/s/spark_double.txt | 2 +- forge-gui/res/cardsfolder/s/spinal_parasite.txt | 2 +- forge-gui/res/cardsfolder/s/spincrusher.txt | 2 +- forge-gui/res/cardsfolder/s/spiteful_squad.txt | 2 +- forge-gui/res/cardsfolder/s/sporeback_troll.txt | 4 ++-- forge-gui/res/cardsfolder/s/squee_dubious_monarch.txt | 2 +- forge-gui/res/cardsfolder/s/stalwart_speartail.txt | 2 +- forge-gui/res/cardsfolder/s/star_pupil.txt | 2 +- forge-gui/res/cardsfolder/s/steel_overseer.txt | 2 +- forge-gui/res/cardsfolder/s/steel_plume_marshal.txt | 2 +- forge-gui/res/cardsfolder/s/stinging_cave_crawler.txt | 2 +- forge-gui/res/cardsfolder/s/storm_fleet_negotiator.txt | 2 +- forge-gui/res/cardsfolder/s/storm_of_souls.txt | 2 +- forge-gui/res/cardsfolder/s/strength_bobblehead.txt | 2 +- forge-gui/res/cardsfolder/s/strength_of_night.txt | 2 +- forge-gui/res/cardsfolder/s/strength_of_solidarity.txt | 4 ++-- forge-gui/res/cardsfolder/s/subterranean_schooner.txt | 2 +- forge-gui/res/cardsfolder/s/sultai_ascendancy.txt | 2 +- forge-gui/res/cardsfolder/s/sunspring_expedition.txt | 2 +- forge-gui/res/cardsfolder/s/suntouched_myr.txt | 2 +- forge-gui/res/cardsfolder/s/surgical_skullbomb.txt | 2 +- forge-gui/res/cardsfolder/s/sword_of_truth_and_justice.txt | 2 +- 69 files changed, 78 insertions(+), 78 deletions(-) diff --git a/forge-gui/res/cardsfolder/s/sage_of_fables.txt b/forge-gui/res/cardsfolder/s/sage_of_fables.txt index 018c31583cc..cc1f5c43738 100644 --- a/forge-gui/res/cardsfolder/s/sage_of_fables.txt +++ b/forge-gui/res/cardsfolder/s/sage_of_fables.txt @@ -5,7 +5,7 @@ PT:2/2 K:ETBReplacement:Other:AddExtraCounter:Mandatory:Battlefield:Creature.Wizard+Other+YouCtrl SVar:AddExtraCounter:DB$ PutCounter | ETB$ True | Defined$ ReplacedCard | CounterType$ P1P1 | CounterNum$ 1 | SpellDescription$ Each other Wizard creature you control enters with an additional +1/+1 counter on it. A:AB$ Draw | Cost$ 2 SubCounter<1/P1P1/Creature.YouCtrl/a creature you control> | NumCards$ 1 | SpellDescription$ Draw a card. -DeckNeeds:Type$Wizard DeckHas:Ability$Counters +DeckNeeds:Type$Wizard # TODO: The AI won't use the "draw a card" ability on this yet, needs some logic improvement. Otherwise, the AI uses this card fine and it may be good in a Wizard-themed deck. Oracle:Each other Wizard creature you control enters with an additional +1/+1 counter on it.\n{2}, Remove a +1/+1 counter from a creature you control: Draw a card. diff --git a/forge-gui/res/cardsfolder/s/sage_of_lat_nam.txt b/forge-gui/res/cardsfolder/s/sage_of_lat_nam.txt index ef55d72e43d..1b1f916b170 100644 --- a/forge-gui/res/cardsfolder/s/sage_of_lat_nam.txt +++ b/forge-gui/res/cardsfolder/s/sage_of_lat_nam.txt @@ -4,6 +4,6 @@ Types:Creature Human Artificer PT:1/2 A:AB$ Draw | Cost$ T Sac<1/Artifact> | NumCards$ 1 | SpellDescription$ Draw a card. AI:RemoveDeck:Random -DeckNeeds:Type$Artifact DeckHas:Ability$Sacrifice +DeckNeeds:Type$Artifact Oracle:{T}, Sacrifice an artifact: Draw a card. diff --git a/forge-gui/res/cardsfolder/s/saheeli_sublime_artificer.txt b/forge-gui/res/cardsfolder/s/saheeli_sublime_artificer.txt index 9ef63fd27f5..d692ff22285 100644 --- a/forge-gui/res/cardsfolder/s/saheeli_sublime_artificer.txt +++ b/forge-gui/res/cardsfolder/s/saheeli_sublime_artificer.txt @@ -7,6 +7,6 @@ SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_1_1_a_servo | TokenOw SVar:BuffedBy:Card.nonCreature+nonLand A:AB$ Pump | Cost$ SubCounter<2/LOYALTY> | Planeswalker$ True | ValidTgts$ Artifact.YouCtrl | TgtPrompt$ Select target artifact you control | SubAbility$ SaheeliCopy | StackDescription$ None | SpellDescription$ Target artifact you control becomes a copy of another target artifact or creature you control until end of turn, except it's an artifact in addition to its other types. SVar:SaheeliCopy:DB$ Clone | CloneTarget$ ParentTarget | ValidTgts$ Artifact.YouCtrl,Creature.YouCtrl | TgtPrompt$ Select another target artifact or creature you control | AddTypes$ Artifact | Duration$ UntilEndOfTurn -DeckHas:Ability$Token SVar:BuffedBy:Card.nonCreature+nonLand +DeckHas:Ability$Token Oracle:Whenever you cast a noncreature spell, create a 1/1 colorless Servo artifact creature token.\n[-2]: Target artifact you control becomes a copy of another target artifact or creature you control until end of turn, except it's an artifact in addition to its other types. diff --git a/forge-gui/res/cardsfolder/s/saint_traft_and_rem_karolus.txt b/forge-gui/res/cardsfolder/s/saint_traft_and_rem_karolus.txt index a9239567eda..6b46259e3d4 100644 --- a/forge-gui/res/cardsfolder/s/saint_traft_and_rem_karolus.txt +++ b/forge-gui/res/cardsfolder/s/saint_traft_and_rem_karolus.txt @@ -9,6 +9,6 @@ SVar:DBTokenTrice:DB$ Token | TokenScript$ w_4_4_angel_flying | ConditionCheckSV SVar:Resolved:Count$ResolvedThisTurn T:Mode$ SpellCast | ValidCard$ Card.withConvoke | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigUntap | TriggerDescription$ Whenever you cast a spell that has convoke, untap CARDNAME. SVar:TrigUntap:DB$ Untap | Defined$ Self -DeckNeeds:Keyword$Convoke DeckHas:Ability$Token & Type$Human|Angel|Spirit +DeckNeeds:Keyword$Convoke Oracle:Whenever Saint Traft and Rem Karolus becomes tapped, create a 1/1 red Human creature token if this is the first time this ability has resolved this turn. If it's the second time, create a 1/1 blue Spirit creature token with flying. If it's the third time, create a 4/4 white Angel creature token with flying.\nWhenever you cast a spell that has convoke, untap Saint Traft and Rem Karolus. diff --git a/forge-gui/res/cardsfolder/s/sample_collector.txt b/forge-gui/res/cardsfolder/s/sample_collector.txt index 2face618d69..4016a53d55e 100644 --- a/forge-gui/res/cardsfolder/s/sample_collector.txt +++ b/forge-gui/res/cardsfolder/s/sample_collector.txt @@ -5,7 +5,7 @@ PT:2/3 T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigImmediateTrig | TriggerDescription$ Whenever CARDNAME attacks, you may collect evidence 3. When you do, put a +1/+1 counter on target creature you control. (To collect evidence 3, exile cards with total mana value 3 or greater from your graveyard.) SVar:TrigImmediateTrig:AB$ ImmediateTrigger | Cost$ CollectEvidence<3> | Execute$ TrigCounter | SpellDescription$ When you do, put a +1/+1 counter on target creature you control. SVar:TrigCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterType$ P1P1 -DeckHints:Ability$Graveyard|Mill|Discard|Dredge -DeckHas:Ability$Counters SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters +DeckHints:Ability$Graveyard|Mill|Discard|Dredge Oracle:Whenever Sample Collector attacks, you may collect evidence 3. When you do, put a +1/+1 counter on target creature you control. (To collect evidence 3, exile cards with total mana value 3 or greater from your graveyard.) diff --git a/forge-gui/res/cardsfolder/s/sanctuary_warden.txt b/forge-gui/res/cardsfolder/s/sanctuary_warden.txt index 25723af0b9e..8973367328b 100644 --- a/forge-gui/res/cardsfolder/s/sanctuary_warden.txt +++ b/forge-gui/res/cardsfolder/s/sanctuary_warden.txt @@ -8,7 +8,7 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigChange | TriggerZones$ Battlefield | OptionalDecider$ You | Secondary$ True | TriggerDescription$ Whenever CARDNAME enters or attacks, you may remove a counter from a creature or planeswalker you control. If you do, draw a card and create a 1/1 green and white Citizen creature token. SVar:TrigChange:AB$ Draw | Cost$ RemoveAnyCounter<1/Any/Card.Creature;Card.Planeswalker/a creature or planeswalker you control> | SubAbility$ DBToken SVar:DBToken:DB$ Token | TokenScript$ gw_1_1_citizen +SVar:HasAttackEffect:TRUE DeckHas:Ability$Token|Counters & Type$Citizen DeckHints:Ability$Counters -SVar:HasAttackEffect:TRUE Oracle:Flying\nSanctuary Warden enters with two shield counters on it.\nWhenever Sanctuary Warden enters or attacks, you may remove a counter from a creature or planeswalker you control. If you do, draw a card and create a 1/1 green and white Citizen creature token. diff --git a/forge-gui/res/cardsfolder/s/sanguine_spy.txt b/forge-gui/res/cardsfolder/s/sanguine_spy.txt index 046170a66b3..a0695c5fab2 100644 --- a/forge-gui/res/cardsfolder/s/sanguine_spy.txt +++ b/forge-gui/res/cardsfolder/s/sanguine_spy.txt @@ -8,6 +8,6 @@ A:AB$ Surveil | Cost$ 1 Sac<1/Creature.Other/another creature> | Amount$ 1 | Spe T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | CheckSVar$ X | SVarCompare$ GE5 | Execute$ TrigDraw | TriggerDescription$ At the beginning of your end step, if there are five or more mana values among cards in your graveyard, you may pay 2 life. If you do, draw a card. SVar:TrigDraw:AB$ Draw | Cost$ PayLife<2> SVar:X:Count$ValidGraveyard Card.YouOwn$DifferentCMC -DeckHas:Ability$Sacrifice|LifeGain|Surveil|Graveyard SVar:AIPreference:SacCost$Creature.token,Creature.cmcLE2 +DeckHas:Ability$Sacrifice|LifeGain|Surveil|Graveyard Oracle:Menace, lifelink\n{1}, Sacrifice another creature: Surveil 1. (Look at the top card of your library. You may put that card into your graveyard.)\nAt the beginning of your end step, if there are five or more mana values among cards in your graveyard, you may pay 2 life. If you do, draw a card. diff --git a/forge-gui/res/cardsfolder/s/saproling_cluster.txt b/forge-gui/res/cardsfolder/s/saproling_cluster.txt index ecfd91ca7e3..41e0538a5b9 100644 --- a/forge-gui/res/cardsfolder/s/saproling_cluster.txt +++ b/forge-gui/res/cardsfolder/s/saproling_cluster.txt @@ -2,7 +2,7 @@ Name:Saproling Cluster ManaCost:1 G Types:Enchantment A:AB$ Token | Cost$ 1 Discard<1/Card> | TokenAmount$ 1 | TokenScript$ g_1_1_saproling | TokenOwner$ You | Activator$ Player | SpellDescription$ Create a 1/1 green Saproling creature token. Any player may activate this ability. -AI:RemoveDeck:All SVar:NonStackingEffect:True +AI:RemoveDeck:All DeckHas:Ability$Discard|Token Oracle:{1}, Discard a card: Create a 1/1 green Saproling creature token. Any player may activate this ability. diff --git a/forge-gui/res/cardsfolder/s/saproling_infestation.txt b/forge-gui/res/cardsfolder/s/saproling_infestation.txt index dd80c03d918..09a8018eba2 100644 --- a/forge-gui/res/cardsfolder/s/saproling_infestation.txt +++ b/forge-gui/res/cardsfolder/s/saproling_infestation.txt @@ -4,6 +4,6 @@ Types:Enchantment T:Mode$ SpellCast | ValidCard$ Card.YouCtrl+kicked | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Whenever a player kicks a spell, you create a 1/1 green Saproling creature token. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ g_1_1_saproling | TokenOwner$ You AI:RemoveDeck:Random -DeckNeeds:Keyword$Kicker DeckHas:Ability$Token +DeckNeeds:Keyword$Kicker Oracle:Whenever a player kicks a spell, you create a 1/1 green Saproling creature token. diff --git a/forge-gui/res/cardsfolder/s/sarah_jane_smith.txt b/forge-gui/res/cardsfolder/s/sarah_jane_smith.txt index eebf8ec5c5d..95275d48ddf 100644 --- a/forge-gui/res/cardsfolder/s/sarah_jane_smith.txt +++ b/forge-gui/res/cardsfolder/s/sarah_jane_smith.txt @@ -5,6 +5,6 @@ PT:2/1 T:Mode$ SpellCast | ValidCard$ Card.Historic | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | ActivationLimit$ 1 | Execute$ TrigInvestigate | TriggerDescription$ Whenever you cast a historic spell, investigate. This ability triggers only once each turn. (Artifacts, legendaries, and Sagas are historic. To investigate, create a Clue token. It's an artifact with "{2}, Sacrifice this artifact: Draw a card.") SVar:TrigInvestigate:DB$ Investigate K:Doctor's companion -DeckNeeds:Type$Artifact|Enchantment|Legendary DeckHas:Ability$Token|Sacrifice & Type$Artifact|Clue +DeckNeeds:Type$Artifact|Enchantment|Legendary Oracle:Whenever you cast a historic spell, investigate. This ability triggers only once each turn. (Artifacts, legendaries, and Sagas are historic. To investigate, create a Clue token. It's an artifact with "{2}, Sacrifice this artifact: Draw a card.")\nDoctor's companion (You can have two commanders if the other is the Doctor.) diff --git a/forge-gui/res/cardsfolder/s/sarevok_the_usurper.txt b/forge-gui/res/cardsfolder/s/sarevok_the_usurper.txt index 0722bd5c085..960e054e439 100644 --- a/forge-gui/res/cardsfolder/s/sarevok_the_usurper.txt +++ b/forge-gui/res/cardsfolder/s/sarevok_the_usurper.txt @@ -32,9 +32,9 @@ PT:4/4 T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ At the beginning of combat on your turn, target creature you control gets +X/+0 until end of turn, where X is the number of creature, instant, and sorcery cards in your graveyard. SVar:TrigPump:DB$ Pump | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | NumAtt$ X SVar:X:Count$ValidGraveyard Instant.YouOwn,Sorcery.YouOwn,Creature.YouOwn +SVar:BuffedBy:Instant,Sorcery DeckHas:Ability$Graveyard DeckHints:Type$Instant|Sorcery -SVar:BuffedBy:Instant,Sorcery Oracle:At the beginning of combat on your turn, target creature you control gets +X/+0 until end of turn, where X is the number of creature, instant, and sorcery cards in your graveyard. SPECIALIZE:BLACK diff --git a/forge-gui/res/cardsfolder/s/scrapyard_recombiner.txt b/forge-gui/res/cardsfolder/s/scrapyard_recombiner.txt index 07e90ad5429..6889d8d2ecd 100644 --- a/forge-gui/res/cardsfolder/s/scrapyard_recombiner.txt +++ b/forge-gui/res/cardsfolder/s/scrapyard_recombiner.txt @@ -4,8 +4,8 @@ Types:Artifact Creature Construct PT:0/0 K:Modular:2 A:AB$ ChangeZone | Cost$ T Sac<1/Artifact> | Origin$ Library | Destination$ Hand | ChangeType$ Card.Construct | ChangeNum$ 1 | SpellDescription$ Search your library for a Construct card, reveal it, put it into your hand, then shuffle. -AI:RemoveDeck:Random SVar:AIPreference:SacCost$Artifact.token,Artifact.cmcEQ1 +AI:RemoveDeck:Random DeckHas:Ability$Counters DeckHints:Type$Construct Oracle:Modular 2 (This creature enters with two +1/+1 counters on it. When it dies, you may put its +1/+1 counters on target artifact creature.)\n{T}, Sacrifice an artifact: Search your library for a Construct card, reveal it, put it into your hand, then shuffle. diff --git a/forge-gui/res/cardsfolder/s/screaming_phantom.txt b/forge-gui/res/cardsfolder/s/screaming_phantom.txt index cd27a3e0d30..4a1a4bf609f 100644 --- a/forge-gui/res/cardsfolder/s/screaming_phantom.txt +++ b/forge-gui/res/cardsfolder/s/screaming_phantom.txt @@ -5,6 +5,6 @@ PT:2/2 K:Flying T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigMill | TriggerDescription$ Whenever CARDNAME attacks, mill a card. (Put the top card of your library into your graveyard.) SVar:TrigMill:DB$ Mill | NumCards$ 1 -DeckHas:Ability$Mill|Graveyard SVar:HasAttackEffect:TRUE +DeckHas:Ability$Mill|Graveyard Oracle:Flying\nWhenever Screaming Phantom attacks, mill a card. (Put the top card of your library into your graveyard.) diff --git a/forge-gui/res/cardsfolder/s/screeching_scorchbeast.txt b/forge-gui/res/cardsfolder/s/screeching_scorchbeast.txt index 030c6dae1e1..92a406e7e60 100644 --- a/forge-gui/res/cardsfolder/s/screeching_scorchbeast.txt +++ b/forge-gui/res/cardsfolder/s/screeching_scorchbeast.txt @@ -8,7 +8,7 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigRadiation | TriggerDescrip SVar:TrigRadiation:DB$ Radiation | Defined$ Player | Num$ 2 T:Mode$ MilledAll | ValidPlayer$ Player | ValidCard$ Card.nonLand | TriggerZones$ Battlefield | Execute$ TrigToken | ResolvedLimit$ 1 | OptionalDecider$ You | TriggerDescription$ Whenever one or more nonland cards are milled, you may create that many 2/2 black Zombie Mutant creature tokens. Do this only once each turn. SVar:TrigToken:DB$ Token | TokenAmount$ TriggerCount$Amount | TokenScript$ b_2_2_zombie_mutant | TokenOwner$ You +SVar:HasAttackEffect:TRUE DeckHas:Ability$Token & Type$Zombie DeckHints:Ability$Mill -SVar:HasAttackEffect:TRUE Oracle:Flying, menace\nWhenever Screeching Scorchbeast attacks, each player gets two rad counters.\nWhenever one or more nonland cards are milled, you may create that many 2/2 black Zombie Mutant creature tokens. Do this only once each turn. diff --git a/forge-gui/res/cardsfolder/s/scrib_nibblers.txt b/forge-gui/res/cardsfolder/s/scrib_nibblers.txt index 725e64f81a6..7d0191f9497 100644 --- a/forge-gui/res/cardsfolder/s/scrib_nibblers.txt +++ b/forge-gui/res/cardsfolder/s/scrib_nibblers.txt @@ -7,6 +7,6 @@ SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ 1 | ConditionDefined$ SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.YouCtrl | OptionalDecider$ You | TriggerZones$ Battlefield | Execute$ TrigUntap | TriggerDescription$ Landfall — Whenever a land you control enters, you may untap CARDNAME. SVar:TrigUntap:DB$ Untap | Defined$ Self -DeckHas:Ability$LifeGain SVar:BuffedBy:Land +DeckHas:Ability$LifeGain Oracle:{T}: Exile the top card of target player's library. If it's a land card, you gain 1 life.\nLandfall — Whenever a land you control enters, you may untap Scrib Nibblers. diff --git a/forge-gui/res/cardsfolder/s/scrounging_bandar.txt b/forge-gui/res/cardsfolder/s/scrounging_bandar.txt index 322055f42c0..e0c31b9d9cb 100644 --- a/forge-gui/res/cardsfolder/s/scrounging_bandar.txt +++ b/forge-gui/res/cardsfolder/s/scrounging_bandar.txt @@ -6,6 +6,6 @@ K:etbCounter:P1P1:2 T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigMoveCounter | TriggerDescription$ At the beginning of your upkeep, you may move any number of +1/+1 counters from CARDNAME onto another target creature. SVar:TrigMoveCounter:DB$ MoveCounter | ValidTgts$ Creature.Other | TgtPrompt$ Select target creature | Source$ Self | CounterType$ P1P1 | CounterNum$ Any AI:RemoveDeck:All -DeckNeeds:Ability$Counters DeckHas:Ability$Counters +DeckNeeds:Ability$Counters Oracle:Scrounging Bandar enters with two +1/+1 counters on it.\nAt the beginning of your upkeep, you may move any number of +1/+1 counters from Scrounging Bandar onto another target creature. diff --git a/forge-gui/res/cardsfolder/s/scurrilous_sentry.txt b/forge-gui/res/cardsfolder/s/scurrilous_sentry.txt index 0ca1928ce10..eec98857b8c 100644 --- a/forge-gui/res/cardsfolder/s/scurrilous_sentry.txt +++ b/forge-gui/res/cardsfolder/s/scurrilous_sentry.txt @@ -6,6 +6,6 @@ K:Menace T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigConnive | TriggerDescription$ Whenever CARDNAME enters or attacks, it connives. (Draw a card, then discard a card. If you discarded a nonland card, put a +1/+1 counter on this creature.) T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigConnive | TriggerZones$ Battlefield | Secondary$ True | TriggerDescription$ Whenever CARDNAME enters or attacks, it connives. (Draw a card, then discard a card. If you discarded a nonland card, put a +1/+1 counter on this creature.) SVar:TrigConnive:DB$ Connive -DeckHas:Ability$Counters|Discard SVar:HasAttackEffect:True +DeckHas:Ability$Counters|Discard Oracle:Menace\nWhenever Scurrilous Sentry enters or attacks, it connives. (Draw a card, then discard a card. If you discarded a nonland card, put a +1/+1 counter on this creature.) diff --git a/forge-gui/res/cardsfolder/s/scute_swarm.txt b/forge-gui/res/cardsfolder/s/scute_swarm.txt index e63f4d31dcf..1f8e7903d65 100644 --- a/forge-gui/res/cardsfolder/s/scute_swarm.txt +++ b/forge-gui/res/cardsfolder/s/scute_swarm.txt @@ -7,6 +7,6 @@ SVar:TrigBranch:DB$ Branch | BranchConditionSVar$ X | BranchConditionSVarCompare SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ g_1_1_insect | TokenOwner$ You SVar:DBCopy:DB$ CopyPermanent | Defined$ Self | NumCopies$ 1 SVar:X:Count$Valid Land.YouCtrl -DeckHas:Ability$Token SVar:BuffedBy:Land +DeckHas:Ability$Token Oracle:Landfall — Whenever a land you control enters, create a 1/1 green Insect creature token. If you control six or more lands, create a token that's a copy of Scute Swarm instead. diff --git a/forge-gui/res/cardsfolder/s/sedraxis_alchemist.txt b/forge-gui/res/cardsfolder/s/sedraxis_alchemist.txt index 2404cdd74c0..8c0cb8329ee 100644 --- a/forge-gui/res/cardsfolder/s/sedraxis_alchemist.txt +++ b/forge-gui/res/cardsfolder/s/sedraxis_alchemist.txt @@ -4,8 +4,8 @@ Types:Creature Zombie Wizard PT:2/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | IsPresent$ Permanent.Blue+YouCtrl | Execute$ TrigBounce | TriggerDescription$ When CARDNAME enters, if you control a blue permanent, return target nonland permanent to its owner's hand. SVar:TrigBounce:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | ValidTgts$ Permanent.nonLand | TgtPrompt$ Select target nonland permanent -AI:RemoveDeck:Random -DeckNeeds:Color$Blue -DeckHints:Color$Blue SVar:PlayMain1:TRUE +AI:RemoveDeck:Random +DeckHints:Color$Blue +DeckNeeds:Color$Blue Oracle:When Sedraxis Alchemist enters, if you control a blue permanent, return target nonland permanent to its owner's hand. diff --git a/forge-gui/res/cardsfolder/s/seed_spark.txt b/forge-gui/res/cardsfolder/s/seed_spark.txt index df62ecaf3b6..a3486083546 100644 --- a/forge-gui/res/cardsfolder/s/seed_spark.txt +++ b/forge-gui/res/cardsfolder/s/seed_spark.txt @@ -5,6 +5,6 @@ A:SP$ Destroy | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select target artif SVar:MakeToken:DB$ Token | ConditionManaSpent$ G | TokenAmount$ 2 | TokenOwner$ You | TokenScript$ g_1_1_saproling | SpellDescription$ If {G} was spent to cast CARDNAME, create two 1/1 green Saproling creature tokens. SVar:ManaNeededToAvoidNegativeEffect:green AI:RemoveDeck:Random -DeckNeeds:Color$Green DeckHas:Ability$Token +DeckNeeds:Color$Green Oracle:Destroy target artifact or enchantment. If {G} was spent to cast this spell, create two 1/1 green Saproling creature tokens. diff --git a/forge-gui/res/cardsfolder/s/sentinel_sarah_lyons.txt b/forge-gui/res/cardsfolder/s/sentinel_sarah_lyons.txt index 68f635656df..90a77df7800 100644 --- a/forge-gui/res/cardsfolder/s/sentinel_sarah_lyons.txt +++ b/forge-gui/res/cardsfolder/s/sentinel_sarah_lyons.txt @@ -8,6 +8,6 @@ SVar:X:Count$ThisTurnEntered_Battlefield_Artifact.YouCtrl T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigDamage | IsPresent$ Creature.attacking+Other | NoResolvingCheck$ True | PresentCompare$ GE2 | TriggerDescription$ Battalion — Whenever CARDNAME and at least two other creatures attack, CARDNAME deals damage equal to the number of artifacts you control to target player. SVar:TrigDamage:DB$ DealDamage | ValidTgts$ Player | NumDmg$ Y SVar:Y:Count$Valid Artifact.YouCtrl -DeckNeeds:Type$Artifact SVar:HasAttackEffect:TRUE +DeckNeeds:Type$Artifact Oracle:Haste\nAs long as an artifact entered the battlefield under your control this turn, creatures you control get +2/+2.\nBattalion — Whenever Sentinel Sarah Lyons and at least two other creatures attack, Sentinel Sarah Lyons deals damage equal to the number of artifacts you control to target player. diff --git a/forge-gui/res/cardsfolder/s/setessan_champion.txt b/forge-gui/res/cardsfolder/s/setessan_champion.txt index 8d6c0ce1026..8d38d020e57 100644 --- a/forge-gui/res/cardsfolder/s/setessan_champion.txt +++ b/forge-gui/res/cardsfolder/s/setessan_champion.txt @@ -5,7 +5,7 @@ PT:1/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Enchantment.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigCounter | TriggerDescription$ Constellation — Whenever an enchantment you control enters, put a +1/+1 counter on CARDNAME and draw a card. SVar:TrigCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBDraw SVar:DBDraw:DB$ Draw | NumCards$ 1 +SVar:BuffedBy:Enchantment DeckHas:Ability$Counters DeckNeeds:Type$Enchantment -SVar:BuffedBy:Enchantment Oracle:Constellation — Whenever an enchantment you control enters, put a +1/+1 counter on Setessan Champion and draw a card. diff --git a/forge-gui/res/cardsfolder/s/setessan_skirmisher.txt b/forge-gui/res/cardsfolder/s/setessan_skirmisher.txt index 8615ddc4e0a..9d70d2a60c9 100644 --- a/forge-gui/res/cardsfolder/s/setessan_skirmisher.txt +++ b/forge-gui/res/cardsfolder/s/setessan_skirmisher.txt @@ -4,6 +4,6 @@ Types:Creature Human Warrior PT:2/1 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Enchantment.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ Constellation — Whenever an enchantment you control enters, CARDNAME gets +1/+1 until end of turn. SVar:TrigPump:DB$ Pump | Defined$ Self | NumAtt$ +1 | NumDef$ +1 -DeckNeeds:Type$Enchantment SVar:BuffedBy:Enchantment +DeckNeeds:Type$Enchantment Oracle:Constellation — Whenever an enchantment you control enters, Setessan Skirmisher gets +1/+1 until end of turn. diff --git a/forge-gui/res/cardsfolder/s/shadowborn_apostle.txt b/forge-gui/res/cardsfolder/s/shadowborn_apostle.txt index e6296409139..1d5cb9eaf78 100644 --- a/forge-gui/res/cardsfolder/s/shadowborn_apostle.txt +++ b/forge-gui/res/cardsfolder/s/shadowborn_apostle.txt @@ -4,7 +4,7 @@ Types:Creature Human Cleric PT:1/1 K:A deck can have any number of cards named CARDNAME. A:AB$ ChangeZone | Cost$ B Sac<6/Creature.namedShadowborn Apostle/creatures named Shadowborn Apostle> | Origin$ Library | Destination$ Battlefield | ChangeType$ Creature.Demon | ChangeNum$ 1 | SpellDescription$ Search your library for a Demon creature card, put it onto the battlefield, then shuffle. -DeckNeeds:Name$Shadowborn Apostle & Type$Demon -DeckHints:Name$Shadowborn Demon SVar:AIPreference:SacCost$Card +DeckHints:Name$Shadowborn Demon +DeckNeeds:Name$Shadowborn Apostle & Type$Demon Oracle:A deck can have any number of cards named Shadowborn Apostle.\n{B}, Sacrifice six creatures named Shadowborn Apostle: Search your library for a Demon creature card, put it onto the battlefield, then shuffle. diff --git a/forge-gui/res/cardsfolder/s/shagrat_loot_bearer.txt b/forge-gui/res/cardsfolder/s/shagrat_loot_bearer.txt index 75ab0c38d54..695db3f81da 100644 --- a/forge-gui/res/cardsfolder/s/shagrat_loot_bearer.txt +++ b/forge-gui/res/cardsfolder/s/shagrat_loot_bearer.txt @@ -6,7 +6,7 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigAttach | TriggerZones$ Bat SVar:TrigAttach:DB$ Attach | ValidTgts$ Equipment | TargetMin$ 0 | TargetMax$ 1 | TgtPrompt$ Select up to one target equipment to attach to NICKNAME | Object$ Targeted | Defined$ Self | SubAbility$ DBAmass SVar:DBAmass:DB$ Amass | Type$ Orc | Num$ X SVar:X:Count$Valid Equipment.Attached +SVar:HasAttackEffect:TRUE DeckHas:Ability$Token|Counters & Type$Orc|Army DeckHints:Type$Equipment -SVar:HasAttackEffect:TRUE Oracle:Whenever Shagrat, Loot Bearer attacks, attach up to one target Equipment to it. Then amass Orcs X, where X is the number of Equipment attached to Shagrat. (Control of the Equipment doesn't change. To amass Orcs X, put X +1/+1 counters on an Army you control. It's also an Orc. If you don't control an Army, create a 0/0 black Orc Army creature token first.) diff --git a/forge-gui/res/cardsfolder/s/shaun_father_of_synths.txt b/forge-gui/res/cardsfolder/s/shaun_father_of_synths.txt index fa5bc2ce09b..78809af3eef 100644 --- a/forge-gui/res/cardsfolder/s/shaun_father_of_synths.txt +++ b/forge-gui/res/cardsfolder/s/shaun_father_of_synths.txt @@ -6,7 +6,7 @@ T:Mode$ AttackersDeclared | ValidAttackers$ Creature.YouCtrl | OptionalDecider$ SVar:TrigCopy:DB$ CopyPermanent | ValidTgts$ Creature.attacking+Other+Legendary+YouCtrl | TgtPrompt$ Select target attacking legendary creature you control other than NICKNAME | NonLegendary$ True | AddTypes$ Artifact & Synth | TokenTapped$ True | TokenAttacking$ True T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ TrigExile | TriggerDescription$ When NICKNAME leaves the battlefield, exile all Synth tokens you control. SVar:TrigExile:DB$ ChangeZoneAll | Origin$ Battlefield | Destination$ Exile | ChangeType$ Synth.YouCtrl+token -DeckHas:Ability$Token & Type$Synth SVar:HasAttackEffect:TRUE +DeckHas:Ability$Token & Type$Synth DeckHints:Type$Legendary Oracle:Whenever you attack, you may create a tapped and attacking token that's a copy of target attacking legendary creature you control other than Shaun, except it's not legendary and it's a Synth artifact creature in addition to its other types.\nWhen Shaun leaves the battlefield, exile all Synth tokens you control. diff --git a/forge-gui/res/cardsfolder/s/sheoldreds_assimilator.txt b/forge-gui/res/cardsfolder/s/sheoldreds_assimilator.txt index 5700deb0539..80bccac6dd3 100644 --- a/forge-gui/res/cardsfolder/s/sheoldreds_assimilator.txt +++ b/forge-gui/res/cardsfolder/s/sheoldreds_assimilator.txt @@ -9,6 +9,6 @@ SVar:TrigExile:DB$ ChangeZone | Origin$ Graveyard | Destination$ Exile | TgtProm SVar:DBConjure:DB$ MakeCard | Conjure$ True | Optional$ True | OptionPrompt$ Would you like to conjure a duplicate of the targeted card into the top five cards of your library ? | DefinedName$ Remembered | Zone$ Library | LibraryPosition$ Z | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:Z:Count$Random.0.4 -DeckHints:Ability$Graveyard SVar:HasAttackEffect:TRUE +DeckHints:Ability$Graveyard Oracle:Menace\nWhenever Sheoldred's Assimilator enters or attacks, exile up to one target card from a graveyard. If a card is exiled this way, you may conjure a duplicate of that card into the top five cards of your library at random. diff --git a/forge-gui/res/cardsfolder/s/shivan_emissary.txt b/forge-gui/res/cardsfolder/s/shivan_emissary.txt index aa8be17ae51..a3df9462325 100644 --- a/forge-gui/res/cardsfolder/s/shivan_emissary.txt +++ b/forge-gui/res/cardsfolder/s/shivan_emissary.txt @@ -5,6 +5,6 @@ PT:1/1 K:Kicker:1 B T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked | Execute$ TrigKicker | TriggerDescription$ When CARDNAME enters, if it was kicked, destroy target nonblack creature. It can't be regenerated. SVar:TrigKicker:DB$ Destroy | ValidTgts$ Creature.nonBlack | NoRegen$ True | TgtPrompt$ Select target nonblack creature -DeckNeeds:Color$Black SVar:NeedsToPlayKicked:Creature.nonBlack+OppCtrl +DeckNeeds:Color$Black Oracle:Kicker {1}{B} (You may pay an additional {1}{B} as you cast this spell.)\nWhen Shivan Emissary enters, if it was kicked, destroy target nonblack creature. It can't be regenerated. diff --git a/forge-gui/res/cardsfolder/s/shuriken.txt b/forge-gui/res/cardsfolder/s/shuriken.txt index 6ee57e1db27..441507dd9c7 100644 --- a/forge-gui/res/cardsfolder/s/shuriken.txt +++ b/forge-gui/res/cardsfolder/s/shuriken.txt @@ -5,7 +5,7 @@ K:Equip:2 S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddAbility$ ShurikenDamage | AddSVar$ ShurikenGainCtrl & ShurikenForget | Description$ Equipped creature has "{T}, Unattach CARDNAME: CARDNAME deals 2 damage to target creature. That creature's controller gains control of CARDNAME unless it was unattached from a Ninja." SVar:ShurikenDamage:AB$ DealDamage | Cost$ T Unattach | NumDmg$ 2 | DamageSource$ OriginalHost | ValidTgts$ Creature | SubAbility$ ShurikenGainCtrl | SpellDescription$ ORIGINALHOST deals 2 damage to target creature. That creature's controller gains control of ORIGINALHOST unless it was unattached from a Ninja. SVar:ShurikenGainCtrl:DB$ GainControl | NewController$ TargetedController | Defined$ OriginalHost | ConditionDefined$ Self | ConditionPresent$ Ninja | ConditionCompare$ EQ0 -AI:RemoveDeck:Random SVar:NonStackingAttachEffect:True +AI:RemoveDeck:Random DeckHints:Type$Ninja Oracle:Equipped creature has "{T}, Unattach Shuriken: Shuriken deals 2 damage to target creature. That creature's controller gains control of Shuriken unless it was unattached from a Ninja."\nEquip {2} ({2}: Attach to target creature you control. Equip only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/s/sidar_jabari_of_zhalfir.txt b/forge-gui/res/cardsfolder/s/sidar_jabari_of_zhalfir.txt index d1a0a1d4c24..72682008f8a 100644 --- a/forge-gui/res/cardsfolder/s/sidar_jabari_of_zhalfir.txt +++ b/forge-gui/res/cardsfolder/s/sidar_jabari_of_zhalfir.txt @@ -10,7 +10,7 @@ K:Flying K:First Strike T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigReturn | TriggerZones$ Battlefield | TriggerDescription$ Whenever CARDNAME deals combat damage to a player, return target Knight creature card from your graveyard to the battlefield. SVar:TrigReturn:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | TgtPrompt$ Select target Knight creature card in your graveyard | ChangeNum$ 1 | ValidTgts$ Creature.YouOwn+Knight +SVar:BuffedBy:Knight DeckHas:Ability$Discard|Graveyard DeckHints:Type$Knight -SVar:BuffedBy:Knight Oracle:Eminence — Whenever you attack with one or more Knights, if Sidar Jabari of Zhalfir is in the command zone or on the battlefield, draw a card, then discard a card.\nFlying, first strike\nWhenever Sidar Jabari deals combat damage to a player, return target Knight creature card from your graveyard to the battlefield. diff --git a/forge-gui/res/cardsfolder/s/sigardian_paladin.txt b/forge-gui/res/cardsfolder/s/sigardian_paladin.txt index 36a0b3f8a9a..68547d0975f 100644 --- a/forge-gui/res/cardsfolder/s/sigardian_paladin.txt +++ b/forge-gui/res/cardsfolder/s/sigardian_paladin.txt @@ -5,6 +5,6 @@ PT:4/4 S:Mode$ Continuous | Affected$ Card.Self | AddKeyword$ Trample & Lifelink | CheckSVar$ X | Description$ As long as you've put one or more +1/+1 counters on a creature this turn, CARDNAME has trample and lifelink. SVar:X:Count$CountersAddedThisTurn P1P1 You Creature A:AB$ Pump | Cost$ 1 G W | ValidTgts$ Creature.YouCtrl+counters_GE1_P1P1 | TgtPrompt$ Select target creature with a +1/+1 counter on it | KW$ Trample & Lifelink | SpellDescription$ Target creature you control with a +1/+1 counter on it gains trample and lifelink until end of turn. -DeckNeeds:Ability$Counters DeckHas:Ability$LifeGain +DeckNeeds:Ability$Counters Oracle:As long as you've put one or more +1/+1 counters on a creature this turn, Sigardian Paladin has trample and lifelink.\n{1}{G}{W}: Target creature you control with a +1/+1 counter on it gains trample and lifelink until end of turn. diff --git a/forge-gui/res/cardsfolder/s/silvar_devourer_of_the_free.txt b/forge-gui/res/cardsfolder/s/silvar_devourer_of_the_free.txt index 0cfb54ad04a..cd68de41ad8 100644 --- a/forge-gui/res/cardsfolder/s/silvar_devourer_of_the_free.txt +++ b/forge-gui/res/cardsfolder/s/silvar_devourer_of_the_free.txt @@ -6,7 +6,7 @@ K:Partner:Trynn, Champion of Freedom:Trynn K:Menace A:AB$ PutCounter | Cost$ Sac<1/Human> | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBPump | SpellDescription$ Put a +1/+1 counter on CARDNAME. It gains indestructible until end of turn. SVar:DBPump:DB$ Pump | Defined$ Self | KW$ Indestructible -DeckHints:Name$Trynn, Champion of Freedom & Type$Human -DeckHas:Ability$Counters SVar:AIPreference:SacCost$Creature.Token+Human,Creature.Human+cmcLE2 +DeckHas:Ability$Counters +DeckHints:Name$Trynn, Champion of Freedom & Type$Human Oracle:Partner with Trynn, Champion of Freedom (When this creature enters, target player may put Trynn into their hand from their library, then shuffle.)\nMenace\nSacrifice a Human: Put a +1/+1 counter on Silvar, Devourer of the Free. It gains indestructible until end of turn. diff --git a/forge-gui/res/cardsfolder/s/simic_basilisk.txt b/forge-gui/res/cardsfolder/s/simic_basilisk.txt index c84933b322f..035c0546e58 100644 --- a/forge-gui/res/cardsfolder/s/simic_basilisk.txt +++ b/forge-gui/res/cardsfolder/s/simic_basilisk.txt @@ -7,8 +7,8 @@ A:AB$ Animate | Cost$ 1 G | ValidTgts$ Creature.counters_GE1_P1P1 | TgtPrompt$ S SVar:DestroyTrigger:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Creature | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ DelTrig | TriggerDescription$ Whenever CARDNAME deals combat damage to a creature, destroy that creature at end of combat. SVar:DelTrigSimic:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroySimic | RememberObjects$ TriggeredTargetLKICopy | TriggerDescription$ Destroy damaged creature at end of combat. SVar:TrigDestroySimic:DB$ Destroy | Defined$ DelayTriggerRememberedLKI -DeckNeeds:Ability$Counters -DeckHas:Ability$Counters SVar:AIGraftPreference:DontMoveCounterIfLethal AI:RemoveDeck:All +DeckHas:Ability$Counters +DeckNeeds:Ability$Counters Oracle:Graft 3 (This creature enters with three +1/+1 counters on it. Whenever another creature enters, you may move a +1/+1 counter from this creature onto it.)\n{1}{G}: Until end of turn, target creature with a +1/+1 counter on it gains "Whenever this creature deals combat damage to a creature, destroy that creature at end of combat." diff --git a/forge-gui/res/cardsfolder/s/six.txt b/forge-gui/res/cardsfolder/s/six.txt index 0a1f576f14e..d8ee50374c7 100644 --- a/forge-gui/res/cardsfolder/s/six.txt +++ b/forge-gui/res/cardsfolder/s/six.txt @@ -8,6 +8,6 @@ SVar:TrigMill:DB$ Mill | NumCards$ 3 | Defined$ You | RememberMilled$ True | Sub SVar:DBChangeZone:DB$ ChangeZone | Hidden$ True | Origin$ Graveyard,Exile | Destination$ Hand | ChangeType$ Land.IsRemembered | Optional$ True | SelectPrompt$ You may select a land milled this way | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True S:Mode$ Continuous | AffectedZone$ Graveyard | Affected$ Card.nonLand+Permanent+YouOwn | Condition$ PlayerTurn | AddKeyword$ Retrace | Description$ As long as it's your turn, nonland permanent cards in your graveyard have retrace. -DeckHas:Ability$Graveyard|Mill SVar:HasAttackEffect:TRUE +DeckHas:Ability$Graveyard|Mill Oracle:Reach\nWhenever Six attacks, mill three cards. You may put a land card from among them into your hand.\nAs long as it's your turn, nonland permanent cards in your graveyard have retrace. diff --git a/forge-gui/res/cardsfolder/s/skanos_dragonheart.txt b/forge-gui/res/cardsfolder/s/skanos_dragonheart.txt index 1b38d6d9369..edae1c27db0 100644 --- a/forge-gui/res/cardsfolder/s/skanos_dragonheart.txt +++ b/forge-gui/res/cardsfolder/s/skanos_dragonheart.txt @@ -7,6 +7,6 @@ SVar:TrigPump:DB$ Pump | NumAtt$ X | NumDef$ X SVar:X:Count$ValidGraveyard,Battlefield Dragon.YouCtrl+Other$GreatestPower K:Choose a Background SVar:HasAttackEffect:TRUE -DeckNeeds:Type$Dragon DeckHas:Ability$Graveyard|Counters +DeckNeeds:Type$Dragon Oracle:Whenever Skanos Dragonheart attacks, it gets +X/+X until end of turn, where X is the greatest power among other Dragons you control and Dragon cards in your graveyard.\nChoose a Background (You can have a Background as a second commander.) diff --git a/forge-gui/res/cardsfolder/s/skull_of_orm.txt b/forge-gui/res/cardsfolder/s/skull_of_orm.txt index 563a9b9398c..c6fecf18c25 100644 --- a/forge-gui/res/cardsfolder/s/skull_of_orm.txt +++ b/forge-gui/res/cardsfolder/s/skull_of_orm.txt @@ -2,7 +2,7 @@ Name:Skull of Orm ManaCost:3 Types:Artifact A:AB$ ChangeZone | Cost$ 5 T | TgtPrompt$ Choose target enchantment in your graveyard | ValidTgts$ Enchantment.YouCtrl | Origin$ Graveyard | Destination$ Hand | SpellDescription$ Return target enchantment card from your graveyard to your hand. +DeckHas:Ability$Graveyard DeckHints:Ability$Mill DeckNeeds:Type$Enchantment -DeckHas:Ability$Graveyard Oracle:{5}, {T}: Return target enchantment card from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/s/skywarp_skaab.txt b/forge-gui/res/cardsfolder/s/skywarp_skaab.txt index f873ab8a58d..5821eb42782 100644 --- a/forge-gui/res/cardsfolder/s/skywarp_skaab.txt +++ b/forge-gui/res/cardsfolder/s/skywarp_skaab.txt @@ -5,6 +5,6 @@ PT:2/5 K:Flying T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ DBDraw | TriggerDescription$ When CARDNAME enters, you may exile two creature cards from your graveyard. If you do, draw a card. SVar:DBDraw:AB$ Draw | Cost$ ExileFromGrave<2/Creature/creature card> | Defined$ You | NumCards$ 1 | SpellDescription$ Draw a card. -DeckHas:Ability$Graveyard SVar:AIPreference:ExileFromGraveCost$Creature.cmcLE1+inZoneGraveyard+withoutDisturb +DeckHas:Ability$Graveyard Oracle:Flying\nWhen Skywarp Skaab enters, you may exile two creature cards from your graveyard. If you do, draw a card. diff --git a/forge-gui/res/cardsfolder/s/sliver_gravemother.txt b/forge-gui/res/cardsfolder/s/sliver_gravemother.txt index a6f2a043813..f2cc87e183d 100644 --- a/forge-gui/res/cardsfolder/s/sliver_gravemother.txt +++ b/forge-gui/res/cardsfolder/s/sliver_gravemother.txt @@ -5,6 +5,6 @@ PT:6/6 K:Encore:5 S:Mode$ IgnoreLegendRule | ValidCard$ Sliver.YouCtrl | Description$ The "legend rule" doesn't apply to Slivers you control. S:Mode$ Continuous | EffectZone$ Battlefield | AffectedZone$ Graveyard | Affected$ Sliver.Creature+YouCtrl | AddKeyword$ Encore:X:XAlternative$ Number$ConvertedManaCost | Description$ Each Sliver creature card in your graveyard has encore {X}, where X is its mana value. -DeckNeeds:Type$Sliver DeckHas:Ability$Token|Graveyard +DeckNeeds:Type$Sliver Oracle:The "legend rule" doesn't apply to Slivers you control.\nEach Sliver creature card in your graveyard has encore {X}, where X is its mana value.\nEncore {5} ({5}, Exile this card from your graveyard: For each opponent, create a token copy that attacks that opponent this turn if able. They gain haste. Sacrifice them at the beginning of the next end step. Activate only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/s/sliversmith.txt b/forge-gui/res/cardsfolder/s/sliversmith.txt index 01bd868ff46..ff785ef9f13 100644 --- a/forge-gui/res/cardsfolder/s/sliversmith.txt +++ b/forge-gui/res/cardsfolder/s/sliversmith.txt @@ -3,8 +3,8 @@ ManaCost:2 Types:Artifact Creature Spellshaper PT:1/1 A:AB$ Token | Cost$ 1 T Discard<1/Card> | TokenAmount$ 1 | TokenScript$ metallic_sliver | TokenOwner$ You | SpellDescription$ Create a 1/1 colorless Sliver artifact creature token named Metallic Sliver. -AI:RemoveDeck:Random SVar:AIPreference:DiscardCost$Card -DeckHints:Type$Sliver +AI:RemoveDeck:Random DeckHas:Ability$Discard|Token +DeckHints:Type$Sliver Oracle:{1}, {T}, Discard a card: Create a 1/1 colorless Sliver artifact creature token named Metallic Sliver. diff --git a/forge-gui/res/cardsfolder/s/sludge_monster.txt b/forge-gui/res/cardsfolder/s/sludge_monster.txt index d563348f010..afa26f13c69 100644 --- a/forge-gui/res/cardsfolder/s/sludge_monster.txt +++ b/forge-gui/res/cardsfolder/s/sludge_monster.txt @@ -6,6 +6,6 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPutCounter | TriggerZones$ Battlefield | Secondary$ True | TriggerDescription$ Whenever CARDNAME enters or attacks, put a slime counter on up to one other target creature. SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature.Other | TgtPrompt$ Select up to one other target creature | TargetMin$ 0 | TargetMax$ 1 | AITgts$ Creature.nonHorror+OppCtrl+counters_LT1_SLIME | IsCurse$ True | CounterType$ SLIME | CounterNum$ 1 S:Mode$ Continuous | Affected$ Creature.nonHorror+counters_GE1_SLIME | RemoveAllAbilities$ True | SetPower$ 2 | SetToughness$ 2 | Description$ Non-Horror creatures with slime counters on them lose all abilities and have base power and toughness 2/2. -DeckHas:Ability$Counters SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters Oracle:Whenever Sludge Monster enters or attacks, put a slime counter on up to one other target creature.\nNon-Horror creatures with slime counters on them lose all abilities and have base power and toughness 2/2. diff --git a/forge-gui/res/cardsfolder/s/smelting_vat.txt b/forge-gui/res/cardsfolder/s/smelting_vat.txt index 5df73c8f8c6..27785d2a2c4 100644 --- a/forge-gui/res/cardsfolder/s/smelting_vat.txt +++ b/forge-gui/res/cardsfolder/s/smelting_vat.txt @@ -3,6 +3,6 @@ ManaCost:4 Types:Artifact A:AB$ Dig | Cost$ 1 T Sac<1/Artifact.Other/another artifact> | DigNum$ 8 | Reveal$ True | ChangeNum$ 2 | ChangeValid$ Artifact.nonCreature+YouOwn | WithTotalCMC$ X | Optional$ True | DestinationZone$ Battlefield | DestinationZone2$ Library | RestRandomOrder$ True | SpellDescription$ Reveal the top eight cards of your library. Put up to two noncreature artifact cards with total mana value less than or equal to the sacrificed artifact's mana value from among them onto the battlefield, and the rest on the bottom of your library in a random order. SVar:X:Sacrificed$CardManaCost -DeckNeeds:Type$Artifact DeckHas:Ability$Sacrifice +DeckNeeds:Type$Artifact Oracle:{1}, {T}, Sacrifice another artifact: Reveal the top eight cards of your library. Put up to two noncreature artifact cards with total mana value less than or equal to the sacrificed artifact's mana value from among them onto the battlefield, and the rest on the bottom of your library in a random order. diff --git a/forge-gui/res/cardsfolder/s/sneaky_snacker.txt b/forge-gui/res/cardsfolder/s/sneaky_snacker.txt index aa12ca85dcd..f18cef498d6 100644 --- a/forge-gui/res/cardsfolder/s/sneaky_snacker.txt +++ b/forge-gui/res/cardsfolder/s/sneaky_snacker.txt @@ -5,7 +5,7 @@ PT:2/1 K:Flying T:Mode$ Drawn | ValidCard$ Card.YouCtrl | Number$ 3 | TriggerZones$ Graveyard | Execute$ TrigChange | TriggerDescription$ When you draw your third card in a turn, return CARDNAME from your graveyard to the battlefield tapped. SVar:TrigChange:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | Tapped$ True -DeckHas:Ability$Graveyard SVar:SacMe:3 SVar:DiscardMe:3 +DeckHas:Ability$Graveyard Oracle:Flying\nWhen you draw your third card in a turn, return Sneaky Snacker from your graveyard to the battlefield tapped. diff --git a/forge-gui/res/cardsfolder/s/so_shiny.txt b/forge-gui/res/cardsfolder/s/so_shiny.txt index 4c833adee3d..4fd77f94748 100644 --- a/forge-gui/res/cardsfolder/s/so_shiny.txt +++ b/forge-gui/res/cardsfolder/s/so_shiny.txt @@ -7,7 +7,7 @@ T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefi SVar:TrigTap:DB$ Tap | Defined$ Enchanted | SubAbility$ DBScry SVar:DBScry:DB$ Scry | ScryNum$ 2 S:Mode$ Continuous | Affected$ Creature.AttachedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature doesn't untap during its controller's untap step. -DeckNeeds:Ability$Token SVar:NeedsToPlayVar:Y GE1 SVar:Y:Count$Valid Permanent.token+YouCtrl +DeckNeeds:Ability$Token Oracle:Enchant creature\nWhen So Shiny enters, if you control a token, tap enchanted creature, then scry 2.\nEnchanted creature doesn't untap during its controller's untap step. diff --git a/forge-gui/res/cardsfolder/s/solarion.txt b/forge-gui/res/cardsfolder/s/solarion.txt index 0a17aca395b..a8622e6373d 100644 --- a/forge-gui/res/cardsfolder/s/solarion.txt +++ b/forge-gui/res/cardsfolder/s/solarion.txt @@ -4,9 +4,9 @@ Types:Artifact Creature Construct PT:0/0 K:Sunburst A:AB$ MultiplyCounter | Cost$ T | Defined$ Self | CounterType$ P1P1 | SpellDescription$ Double the number of +1/+1 counters on CARDNAME. -DeckHas:Ability$Counters SVar:NoZeroToughnessAI:True SVar:NeedsToPlayVar:Z GE1 SVar:Z:Count$UniqueManaColorsProduced.ByUntappedSources +DeckHas:Ability$Counters DeckHints:Ability$Proliferate Oracle:Sunburst (This enters with a +1/+1 counter on it for each color of mana spent to cast it.)\n{T}: Double the number of +1/+1 counters on Solarion. diff --git a/forge-gui/res/cardsfolder/s/soul_of_windgrace.txt b/forge-gui/res/cardsfolder/s/soul_of_windgrace.txt index 3d5d97cd978..96bc34c1368 100644 --- a/forge-gui/res/cardsfolder/s/soul_of_windgrace.txt +++ b/forge-gui/res/cardsfolder/s/soul_of_windgrace.txt @@ -9,6 +9,6 @@ A:AB$ GainLife | Cost$ G Discard<1/Land> | LifeAmount$ 3 | SpellDescription$ You A:AB$ Draw | Cost$ 1 R Discard<1/Land> | SpellDescription$ Draw a card. A:AB$ Pump | Cost$ 2 B Discard<1/Land> | KW$ Indestructible | SubAbility$ DBTap | StackDescription$ SpellDescription | SpellDescription$ CARDNAME gains indestructible until end of turn. SVar:DBTap:DB$ Tap | Defined$ Self | StackDescription$ SpellDescription | SpellDescription$ Tap it. -DeckHas:Ability$LifeGain|Discard|Graveyard & Keyword$Indestructible SVar:HasAttackEffect:TRUE +DeckHas:Ability$LifeGain|Discard|Graveyard & Keyword$Indestructible Oracle:Whenever Soul of Windgrace enters or attacks, you may put a land card from a graveyard onto the battlefield tapped under your control.\n{G}, Discard a land card: You gain 3 life.\n{1}{R}, Discard a land card: Draw a card.\n{2}{B}, Discard a land card: Soul of Windgrace gains indestructible until end of turn. Tap it. diff --git a/forge-gui/res/cardsfolder/s/soul_stair_expedition.txt b/forge-gui/res/cardsfolder/s/soul_stair_expedition.txt index 846f5b2e217..ed716fb87f7 100644 --- a/forge-gui/res/cardsfolder/s/soul_stair_expedition.txt +++ b/forge-gui/res/cardsfolder/s/soul_stair_expedition.txt @@ -4,6 +4,6 @@ Types:Enchantment A:AB$ ChangeZone | Cost$ SubCounter<3/QUEST> Sac<1/CARDNAME> | Origin$ Graveyard | Destination$ Hand | TargetMin$ 0 | TargetMax$ 2 | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select up to two target creatures from your graveyard. | SpellDescription$ Return up to two target creature cards from your graveyard to your hand. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.YouCtrl | OptionalDecider$ You | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Landfall — Whenever a land you control enters, you may put a quest counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ QUEST | CounterNum$ 1 -DeckHas:Ability$Counters SVar:MaxQuestEffect:3 +DeckHas:Ability$Counters Oracle:Landfall — Whenever a land you control enters, you may put a quest counter on Soul Stair Expedition.\nRemove three quest counters from Soul Stair Expedition and sacrifice it: Return up to two target creature cards from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/s/sovereign_okinec_ahau.txt b/forge-gui/res/cardsfolder/s/sovereign_okinec_ahau.txt index e82175d81c3..70d7388180c 100644 --- a/forge-gui/res/cardsfolder/s/sovereign_okinec_ahau.txt +++ b/forge-gui/res/cardsfolder/s/sovereign_okinec_ahau.txt @@ -6,7 +6,7 @@ K:Ward:2 T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPutCounter | TriggerZones$ Battlefield | TriggerDescription$ Whenever CARDNAME attacks, for each creature you control with power greater than that creature's base power, put a number of +1/+1 counters on that creature equal to the difference. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Valid Creature.YouCtrl+powerGTbasePower | CounterType$ P1P1 | CounterNumPerDefined$ X SVar:X:Count$CardPower/Minus.Count$CardBasePower +SVar:HasAttackEffect:TRUE DeckHas:Ability$Counters DeckHints:Ability$Counters -SVar:HasAttackEffect:TRUE Oracle:Ward {2}\nWhenever Sovereign Okinec Ahau attacks, for each creature you control with power greater than that creature's base power, put a number of +1/+1 counters on that creature equal to the difference. diff --git a/forge-gui/res/cardsfolder/s/spark_double.txt b/forge-gui/res/cardsfolder/s/spark_double.txt index 9021ae9f660..7b5227894c5 100644 --- a/forge-gui/res/cardsfolder/s/spark_double.txt +++ b/forge-gui/res/cardsfolder/s/spark_double.txt @@ -9,8 +9,8 @@ SVar:ETBCreatPlans:Event$ Moved | ValidCard$ Creature.IsRemembered,Planeswalker. SVar:DBPutP1P1:DB$ PutCounter | Defined$ ReplacedNewCard.Creature | CounterType$ P1P1 | ETB$ True | CounterNum$ 1 | SubAbility$ DBPutLOYALTY SVar:DBPutLOYALTY:DB$ PutCounter | Defined$ ReplacedNewCard.Planeswalker | CounterType$ LOYALTY | ETB$ True | CounterNum$ 1 | SubAbility$ DBExile SVar:DBExile:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile -DeckHas:Ability$Counters SVar:NeedsToPlayVar:Z GE1 SVar:Z:Count$Valid Creature.YouCtrl/Plus.Z1 SVar:Z1:Count$Valid Planeswalker.YouCtrl +DeckHas:Ability$Counters Oracle:You may have Spark Double enter as a copy of a creature or planeswalker you control, except it enters with an additional +1/+1 counter on it if it's a creature, it enters with an additional loyalty counter on it if it's a planeswalker, and it isn't legendary if that permanent is legendary. diff --git a/forge-gui/res/cardsfolder/s/spinal_parasite.txt b/forge-gui/res/cardsfolder/s/spinal_parasite.txt index 3b37d2a4a76..16b4cf8075c 100644 --- a/forge-gui/res/cardsfolder/s/spinal_parasite.txt +++ b/forge-gui/res/cardsfolder/s/spinal_parasite.txt @@ -4,9 +4,9 @@ Types:Artifact Creature Insect PT:-1/-1 K:Sunburst A:AB$ RemoveCounter | Cost$ SubCounter<2/P1P1> | ValidTgts$ Permanent | TgtPrompt$ Select target permanent | CounterType$ Any | CounterNum$ 1 | SpellDescription$ Remove a counter from target permanent. -AI:RemoveDeck:Random SVar:NeedsToPlayVar:Z GE3 SVar:NoZeroToughnessAI:True SVar:Z:Count$UniqueManaColorsProduced.ByUntappedSources +AI:RemoveDeck:Random DeckHints:Ability$Proliferate Oracle:Sunburst (This enters with a +1/+1 counter on it for each color of mana spent to cast it.)\nRemove two +1/+1 counters from Spinal Parasite: Remove a counter from target permanent. diff --git a/forge-gui/res/cardsfolder/s/spincrusher.txt b/forge-gui/res/cardsfolder/s/spincrusher.txt index 8469f1d8607..5cb1ace13e7 100644 --- a/forge-gui/res/cardsfolder/s/spincrusher.txt +++ b/forge-gui/res/cardsfolder/s/spincrusher.txt @@ -6,7 +6,7 @@ T:Mode$ Blocks | ValidCard$ Card.Self | Execute$ TrigPutCounter | TriggerDescrip SVar:TrigPutCounter:DB$ PutCounter | CounterType$ P1P1 A:AB$ Effect | Cost$ SubCounter<1/P1P1> | RememberObjects$ Self | ExileOnMoved$ Battlefield | StaticAbilities$ Unblockable | SpellDescription$ CARDNAME can't be blocked this turn. SVar:Unblockable:Mode$ CantBlockBy | ValidAttacker$ Card.IsRemembered | Description$ EFFECTSOURCE can't be blocked this turn. -AI:RemoveDeck:All SVar:HasBlockEffect:TRUE +AI:RemoveDeck:All DeckHas:Ability$Counters Oracle:Whenever Spincrusher blocks, put a +1/+1 counter on it.\nRemove a +1/+1 counter from Spincrusher: Spincrusher can't be blocked this turn. diff --git a/forge-gui/res/cardsfolder/s/spiteful_squad.txt b/forge-gui/res/cardsfolder/s/spiteful_squad.txt index 50877578140..90a76e2f88b 100644 --- a/forge-gui/res/cardsfolder/s/spiteful_squad.txt +++ b/forge-gui/res/cardsfolder/s/spiteful_squad.txt @@ -6,6 +6,6 @@ K:etbCounter:P1P1:2 K:Deathtouch T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigPutCounter | TriggerDescription$ When CARDNAME dies, put its counters on target creature you control. SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterType$ EachFromSource | EachFromSource$ TriggeredCardLKICopy -DeckHas:Ability$Counters SVar:SacMe:2 +DeckHas:Ability$Counters Oracle:Deathtouch\nSpiteful Squad enters with two +1/+1 counters on it.\nWhen Spiteful Squad dies, put its counters on target creature you control. diff --git a/forge-gui/res/cardsfolder/s/sporeback_troll.txt b/forge-gui/res/cardsfolder/s/sporeback_troll.txt index 1af9912ee24..8579a8e47b3 100644 --- a/forge-gui/res/cardsfolder/s/sporeback_troll.txt +++ b/forge-gui/res/cardsfolder/s/sporeback_troll.txt @@ -4,7 +4,7 @@ Types:Creature Troll Mutant PT:0/0 K:Graft:2 A:AB$ Regenerate | Cost$ 1 G | ValidTgts$ Creature.counters_GE1_P1P1 | TgtPrompt$ Select target creature with a +1/+1 counter | SpellDescription$ Regenerate target creature with a +1/+1 counter on it. -DeckNeeds:Ability$Counters -DeckHas:Ability$Counters SVar:AIGraftPreference:DontMoveCounterIfLethal +DeckHas:Ability$Counters +DeckNeeds:Ability$Counters Oracle:Graft 2 (This creature enters with two +1/+1 counters on it. Whenever another creature enters, you may move a +1/+1 counter from this creature onto it.)\n{1}{G}: Regenerate target creature with a +1/+1 counter on it. diff --git a/forge-gui/res/cardsfolder/s/squee_dubious_monarch.txt b/forge-gui/res/cardsfolder/s/squee_dubious_monarch.txt index c61de40ad6a..c420550d91e 100644 --- a/forge-gui/res/cardsfolder/s/squee_dubious_monarch.txt +++ b/forge-gui/res/cardsfolder/s/squee_dubious_monarch.txt @@ -6,6 +6,6 @@ K:Haste T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Whenever CARDNAME attacks, create a 1/1 red Goblin creature token that's tapped and attacking. SVar:TrigToken:DB$ Token | TokenScript$ r_1_1_goblin | TokenTapped$ True | TokenAttacking$ True S:Mode$ AlternativeCost | ValidSA$ Spell.Self | EffectZone$ Graveyard | Cost$ 3 R ExileFromGrave<4/Card.Other/other cards> | Description$ You may cast CARDNAME from your graveyard by paying {3}{R} and exiling four other cards from your graveyard rather than paying its mana cost. -DeckHas:Ability$Token|Graveyard & Type$Goblin SVar:HasAttackEffect:TRUE +DeckHas:Ability$Token|Graveyard & Type$Goblin Oracle:Haste\nWhenever Squee, Dubious Monarch attacks, create a 1/1 red Goblin creature token that's tapped and attacking.\nYou may cast Squee, Dubious Monarch from your graveyard by paying {3}{R} and exiling four other cards from your graveyard rather than paying its mana cost. diff --git a/forge-gui/res/cardsfolder/s/stalwart_speartail.txt b/forge-gui/res/cardsfolder/s/stalwart_speartail.txt index 6f557a4285b..3b584f38a13 100644 --- a/forge-gui/res/cardsfolder/s/stalwart_speartail.txt +++ b/forge-gui/res/cardsfolder/s/stalwart_speartail.txt @@ -7,6 +7,6 @@ SVar:TrigPump:DB$ PumpAll | ValidCards$ Dinosaur.YouCtrl+Other | PumpZone$ Battl T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigTrigger | TriggerDescription$ Whenever CARDNAME attacks, you may pay {3}. When you do, CARDNAME deals 1 damage to each creature and each planeswalker. SVar:TrigTrigger:AB$ ImmediateTrigger | Cost$ 3 | Execute$ TrigDamage | TriggerDescription$ When you do, CARDNAME deals 1 damage to each creature and each planeswalker. SVar:TrigDamage:DB$ DamageAll | ValidCards$ Creature,Planeswalker | NumDmg$ 1 -DeckNeeds:Type$Dinosaur SVar:HasAttackEffect:TRUE +DeckNeeds:Type$Dinosaur Oracle:Enrage — Whenever Stalwart Speartail is dealt damage, other Dinosaurs you control and Dinosaur cards in your hand and library perpetually get +1/+1.\nWhenever Stalwart Speartail attacks, you may pay {3}. When you do, Stalwart Speartail deals 1 damage to each creature and each planeswalker. diff --git a/forge-gui/res/cardsfolder/s/star_pupil.txt b/forge-gui/res/cardsfolder/s/star_pupil.txt index 2776796641e..5122cd09156 100644 --- a/forge-gui/res/cardsfolder/s/star_pupil.txt +++ b/forge-gui/res/cardsfolder/s/star_pupil.txt @@ -5,6 +5,6 @@ PT:0/0 K:etbCounter:P1P1:1 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigPutCounter | TriggerDescription$ When CARDNAME dies, put its counters on target creature you control. SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterType$ EachFromSource | EachFromSource$ TriggeredCardLKICopy -DeckHas:Ability$Counters SVar:SacMe:2 +DeckHas:Ability$Counters Oracle:Star Pupil enters with a +1/+1 counter on it.\nWhen Star Pupil dies, put its counters on target creature you control. diff --git a/forge-gui/res/cardsfolder/s/steel_overseer.txt b/forge-gui/res/cardsfolder/s/steel_overseer.txt index d8387c09888..45b12aa1588 100644 --- a/forge-gui/res/cardsfolder/s/steel_overseer.txt +++ b/forge-gui/res/cardsfolder/s/steel_overseer.txt @@ -3,6 +3,6 @@ ManaCost:2 Types:Artifact Creature Construct PT:1/1 A:AB$ PutCounterAll | Cost$ T | ValidCards$ Artifact.Creature+YouCtrl | CounterType$ P1P1 | CounterNum$ 1 | AILogic$ AtEOTOrBlock | SpellDescription$ Put a +1/+1 counter on each artifact creature you control. -DeckHas:Ability$Counters SVar:UntapMe:True +DeckHas:Ability$Counters Oracle:{T}: Put a +1/+1 counter on each artifact creature you control. diff --git a/forge-gui/res/cardsfolder/s/steel_plume_marshal.txt b/forge-gui/res/cardsfolder/s/steel_plume_marshal.txt index 59884879c75..c01ad726b65 100644 --- a/forge-gui/res/cardsfolder/s/steel_plume_marshal.txt +++ b/forge-gui/res/cardsfolder/s/steel_plume_marshal.txt @@ -5,6 +5,6 @@ PT:3/3 K:Flying T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ When CARDNAME attacks, other attacking creatures you control with flying get +2/+2 until end of turn. SVar:TrigPump:DB$ PumpAll | ValidCards$ Creature.attacking+withFlying+Other+YouCtrl | NumAtt$ 2 | NumDef$ 2 -DeckHints:Keyword$Flying SVar:HasAttackEffect:TRUE +DeckHints:Keyword$Flying Oracle:Flying\nWhenever Steel-Plume Marshal attacks, other attacking creatures you control with flying get +2/+2 until end of turn. diff --git a/forge-gui/res/cardsfolder/s/stinging_cave_crawler.txt b/forge-gui/res/cardsfolder/s/stinging_cave_crawler.txt index e9804368e7b..df77dc148eb 100644 --- a/forge-gui/res/cardsfolder/s/stinging_cave_crawler.txt +++ b/forge-gui/res/cardsfolder/s/stinging_cave_crawler.txt @@ -7,6 +7,6 @@ T:Mode$ Attacks | CheckSVar$ X | SVarCompare$ GE4 | ValidCard$ Card.Self | Execu SVar:TrigDraw:DB$ Draw | SubAbility$ DBLoseLife SVar:DBLoseLife:DB$ LoseLife | LifeAmount$ 1 SVar:X:Count$ValidGraveyard Permanent.YouOwn -DeckHints:Ability$Sacrifice|Discard|Mill|Dredge|Graveyard SVar:HasAttackEffect:TRUE +DeckHints:Ability$Sacrifice|Discard|Mill|Dredge|Graveyard Oracle:Deathtouch\nDescend 4 — Whenever Stinging Cave Crawler attacks, if there are four or more permanent cards in your graveyard, you draw a card and you lose 1 life. diff --git a/forge-gui/res/cardsfolder/s/storm_fleet_negotiator.txt b/forge-gui/res/cardsfolder/s/storm_fleet_negotiator.txt index 3ac05ba317e..d2502473047 100644 --- a/forge-gui/res/cardsfolder/s/storm_fleet_negotiator.txt +++ b/forge-gui/res/cardsfolder/s/storm_fleet_negotiator.txt @@ -9,6 +9,6 @@ SVar:DBToken:DB$ Token | TokenScript$ c_a_map_sac_explore | TokenAmount$ X | Sub SVar:DBDraw:DB$ Draw | Defined$ Player | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Remembered$Valid Card.nonLand -DeckHas:Ability$Token & Type$Map|Artifact SVar:HasAttackEffect:TRUE +DeckHas:Ability$Token & Type$Map|Artifact Oracle:Flying\nParley — Whenever Storm Fleet Negotiator attacks, each player reveals the top card of their library. For each nonland card revealed this way, you create a Map token. Then each player draws a card. (A Map token is an artifact with "{1}, {T}, Sacrifice this artifact: Target creature you control explores. Activate only as a sorcery.") diff --git a/forge-gui/res/cardsfolder/s/storm_of_souls.txt b/forge-gui/res/cardsfolder/s/storm_of_souls.txt index 2d1df696174..b092c2373ee 100644 --- a/forge-gui/res/cardsfolder/s/storm_of_souls.txt +++ b/forge-gui/res/cardsfolder/s/storm_of_souls.txt @@ -4,7 +4,7 @@ Types:Sorcery A:SP$ ChangeZoneAll | ChangeType$ Creature.YouOwn | Origin$ Graveyard | Destination$ Battlefield | AnimateSubAbility$ DBAnimate | SubAbility$ DBExile | SpellDescription$ Return all creature cards from your graveyard to the battlefield. Each of them is a 1/1 Spirit with flying in addition to its other types. SVar:DBAnimate:DB$ Animate | Defined$ Remembered | Power$ 1 | Toughness$ 1 | Types$ Spirit | Duration$ Permanent | Keywords$ Flying SVar:DBExile:DB$ ChangeZone | Origin$ Stack | Destination$ Exile | SpellDescription$ Exile CARDNAME. -DeckHas:Ability$Graveyard & Type$Spirit SVar:X:Count$TypeInYourYard.Creature SVar:NeedsToPlayVar:X GE4 +DeckHas:Ability$Graveyard & Type$Spirit Oracle:Return all creature cards from your graveyard to the battlefield. Each of them is a 1/1 Spirit with flying in addition to its other types. Exile Storm of Souls. diff --git a/forge-gui/res/cardsfolder/s/strength_bobblehead.txt b/forge-gui/res/cardsfolder/s/strength_bobblehead.txt index 34ffa24a0b6..4178b70c108 100644 --- a/forge-gui/res/cardsfolder/s/strength_bobblehead.txt +++ b/forge-gui/res/cardsfolder/s/strength_bobblehead.txt @@ -4,6 +4,6 @@ Types:Artifact Bobblehead A:AB$ Mana | Cost$ T | Produced$ Any | SpellDescription$ Add one mana of any color. A:AB$ PutCounter | Cost$ 3 T | ValidTgts$ Creature | SorcerySpeed$ True | CounterType$ P1P1 | CounterNum$ X | SpellDescription$ Put X +1/+1 counters on target creature, where X is the number of Bobbleheads you control. Activate only as a sorcery. SVar:X:Count$Valid Bobblehead.YouCtrl -DeckNeeds:Type$Bobblehead DeckHas:Ability$Counters +DeckNeeds:Type$Bobblehead Oracle:{T}: Add one mana of any color.\n{3}, {T}: Put X +1/+1 counters on target creature, where X is the number of Bobbleheads you control. Activate only as a sorcery. diff --git a/forge-gui/res/cardsfolder/s/strength_of_night.txt b/forge-gui/res/cardsfolder/s/strength_of_night.txt index e176f7e1014..10a07c0c4d8 100644 --- a/forge-gui/res/cardsfolder/s/strength_of_night.txt +++ b/forge-gui/res/cardsfolder/s/strength_of_night.txt @@ -4,6 +4,6 @@ Types:Instant K:Kicker:B A:SP$ PumpAll | ValidCards$ Creature.YouCtrl | NumAtt$ 1 | NumDef$ 1 | SubAbility$ DBPumpYourZombies | SpellDescription$ Creatures you control get +1/+1 until end of turn. If this spell was kicked, Zombie creatures you control get an additional +2/+2 until end of turn. SVar:DBPumpYourZombies:DB$ PumpAll | ValidCards$ Creature.Zombie+YouCtrl | NumAtt$ 2 | NumDef$ 2 | Condition$ Kicked | ConditionDescription$ If CARDNAME was kicked, -DeckNeeds:Color$Black & Type$Zombie SVar:NeedsToPlayKicked:Creature.Zombie+YouCtrl +DeckNeeds:Color$Black & Type$Zombie Oracle:Kicker {B} (You may pay an additional {B} as you cast this spell.)\nCreatures you control get +1/+1 until end of turn. If this spell was kicked, Zombie creatures you control get an additional +2/+2 until end of turn. diff --git a/forge-gui/res/cardsfolder/s/strength_of_solidarity.txt b/forge-gui/res/cardsfolder/s/strength_of_solidarity.txt index e1387612c1d..a3a3acbf067 100644 --- a/forge-gui/res/cardsfolder/s/strength_of_solidarity.txt +++ b/forge-gui/res/cardsfolder/s/strength_of_solidarity.txt @@ -2,8 +2,8 @@ Name:Strength of Solidarity ManaCost:G Types:Sorcery A:SP$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterType$ P1P1 | CounterNum$ X | SpellDescription$ Choose target creature you control. Put a +1/+1 counter on it for each creature in your party. (Your party consists of up to one each of Cleric, Rogue, Warrior, and Wizard.) -DeckHas:Ability$Party|Counters -DeckHints:Type$Cleric|Rogue|Warrior|Wizard SVar:X:Count$Party SVar:NeedsToPlayVar:X GE1 +DeckHas:Ability$Party|Counters +DeckHints:Type$Cleric|Rogue|Warrior|Wizard Oracle:Choose target creature you control. Put a +1/+1 counter on it for each creature in your party. (Your party consists of up to one each of Cleric, Rogue, Warrior, and Wizard.) diff --git a/forge-gui/res/cardsfolder/s/subterranean_schooner.txt b/forge-gui/res/cardsfolder/s/subterranean_schooner.txt index b474cce489e..18a6ce8dd3c 100644 --- a/forge-gui/res/cardsfolder/s/subterranean_schooner.txt +++ b/forge-gui/res/cardsfolder/s/subterranean_schooner.txt @@ -5,6 +5,6 @@ PT:3/4 K:Crew:1 T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigExplore | TriggerDescription$ Whenever CARDNAME attacks, target creature that crewed it this turn explores. (Reveal the top card of your library. Put that card into your hand if it's a land. Otherwise, put a +1/+1 counter on that creature, then put the card back or put it into your graveyard.) SVar:TrigExplore:DB$ Explore | ValidTgts$ Creature.CrewedThisTurn | TgtPrompt$ Select target creature that crewed it this turn -DeckHas:Ability$Counters SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters Oracle:Whenever Subterranean Schooner attacks, target creature that crewed it this turn explores. (Reveal the top card of your library. Put that card into your hand if it's a land. Otherwise, put a +1/+1 counter on that creature, then put the card back or put it into your graveyard.)\nCrew 1 diff --git a/forge-gui/res/cardsfolder/s/sultai_ascendancy.txt b/forge-gui/res/cardsfolder/s/sultai_ascendancy.txt index 33069ddd04c..a5ebf9878ab 100644 --- a/forge-gui/res/cardsfolder/s/sultai_ascendancy.txt +++ b/forge-gui/res/cardsfolder/s/sultai_ascendancy.txt @@ -2,7 +2,7 @@ Name:Sultai Ascendancy ManaCost:B G U Types:Enchantment T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigSurveil | TriggerDescription$ At the beginning of your upkeep, surveil 2. (Look at the top two cards of your library, then put any number of them into your graveyard and the rest on top of your library in any order.) -AI:RemoveDeck:All SVar:TrigSurveil:DB$ Surveil | Amount$ 2 +AI:RemoveDeck:All DeckHas:Ability$Surveil|Graveyard Oracle:At the beginning of your upkeep, surveil 2. (Look at the top two cards of your library, then put any number of them into your graveyard and the rest on top of your library in any order.) diff --git a/forge-gui/res/cardsfolder/s/sunspring_expedition.txt b/forge-gui/res/cardsfolder/s/sunspring_expedition.txt index 58dce6e8991..1dcd64ea35c 100644 --- a/forge-gui/res/cardsfolder/s/sunspring_expedition.txt +++ b/forge-gui/res/cardsfolder/s/sunspring_expedition.txt @@ -4,6 +4,6 @@ Types:Enchantment A:AB$ GainLife | Cost$ SubCounter<3/QUEST> Sac<1/CARDNAME> | Defined$ You | LifeAmount$ 8 | SpellDescription$ You gain 8 life. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.YouCtrl | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigPutCounter | TriggerDescription$ Landfall — Whenever a land you control enters, you may put a quest counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ QUEST | CounterNum$ 1 -DeckHas:Ability$Counters|LifeGain SVar:MaxQuestEffect:3 +DeckHas:Ability$Counters|LifeGain Oracle:Landfall — Whenever a land you control enters, you may put a quest counter on Sunspring Expedition.\nRemove three quest counters from Sunspring Expedition and sacrifice it: You gain 8 life. diff --git a/forge-gui/res/cardsfolder/s/suntouched_myr.txt b/forge-gui/res/cardsfolder/s/suntouched_myr.txt index ad4551f41f1..7b2a42f50c1 100644 --- a/forge-gui/res/cardsfolder/s/suntouched_myr.txt +++ b/forge-gui/res/cardsfolder/s/suntouched_myr.txt @@ -4,8 +4,8 @@ Types:Artifact Creature Myr PT:0/0 K:Sunburst SVar:NoZeroToughnessAI:True -AI:RemoveDeck:Random SVar:NeedsToPlayVar:Z GE2 SVar:Z:Count$UniqueManaColorsProduced.ByUntappedSources +AI:RemoveDeck:Random DeckHints:Ability$Proliferate Oracle:Sunburst (This enters with a +1/+1 counter on it for each color of mana spent to cast it.) diff --git a/forge-gui/res/cardsfolder/s/surgical_skullbomb.txt b/forge-gui/res/cardsfolder/s/surgical_skullbomb.txt index d8533310c78..55828a56184 100644 --- a/forge-gui/res/cardsfolder/s/surgical_skullbomb.txt +++ b/forge-gui/res/cardsfolder/s/surgical_skullbomb.txt @@ -4,6 +4,6 @@ Types:Artifact A:AB$ Draw | Cost$ 1 Sac<1/CARDNAME> | SpellDescription$ Draw a card. A:AB$ ChangeZone | Cost$ 2 U Sac<1/CARDNAME> | Origin$ Battlefield | Destination$ Hand | ValidTgts$ Creature | SorcerySpeed$ True | SubAbility$ DBDraw | SpellDescription$ Return target creature to its owner's hand. Draw a card. Activate only as a sorcery. SVar:DBDraw:DB$ Draw -DeckNeeds:Color$Blue DeckHas:Ability$Sacrifice +DeckNeeds:Color$Blue Oracle:{1}, Sacrifice Surgical Skullbomb: Draw a card.\n{2}{U}, Sacrifice Surgical Skullbomb: Return target creature to its owner's hand. Draw a card. Activate only as a sorcery. diff --git a/forge-gui/res/cardsfolder/s/sword_of_truth_and_justice.txt b/forge-gui/res/cardsfolder/s/sword_of_truth_and_justice.txt index 4ab98a99e21..7ac175bc2c8 100644 --- a/forge-gui/res/cardsfolder/s/sword_of_truth_and_justice.txt +++ b/forge-gui/res/cardsfolder/s/sword_of_truth_and_justice.txt @@ -6,7 +6,7 @@ S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddPower$ 2 | AddToughness$ T:Mode$ DamageDone | ValidSource$ Creature.EquippedBy | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigPutCounter | TriggerZones$ Battlefield | TriggerDescription$ Whenever equipped creature deals combat damage to a player, put a +1/+1 counter on a creature you control, then proliferate. (Choose any number of permanents and/or players, then give each another counter of each kind already there.) SVar:TrigPutCounter:DB$ PutCounter | Choices$ Creature.YouCtrl | ChoiceTitle$ Select a creature you control | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBProliferate | SpellDescription$ Put a +1/+1 counter on target creature you control and then proliferate. SVar:DBProliferate:DB$ Proliferate +SVar:SwordOfTruthAndJusticeCE:SVar:MustBeBlocked:AttackingPlayerConservative DeckHas:Ability$Proliferate|Counters DeckNeeds:Ability$Counters -SVar:SwordOfTruthAndJusticeCE:SVar:MustBeBlocked:AttackingPlayerConservative Oracle:Equipped creature gets +2/+2 and has protection from white and from blue.\nWhenever equipped creature deals combat damage to a player, put a +1/+1 counter on a creature you control, then proliferate. (Choose any number of permanents and/or players, then give each another counter of each kind already there.)\nEquip {2} From 5bf12ab4eb7ba09396112f53bf4c079d33056023 Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 12:13:59 +0100 Subject: [PATCH 28/91] Edit pile cleanup: Line reordering, second pass: part 9, folders 't' to 'v' (#6312) --- forge-gui/res/cardsfolder/t/tangletrove_kelp.txt | 2 +- forge-gui/res/cardsfolder/t/tardis.txt | 2 +- forge-gui/res/cardsfolder/t/tatyova_steward_of_tides.txt | 2 +- forge-gui/res/cardsfolder/t/tawnos_the_toymaker.txt | 2 +- forge-gui/res/cardsfolder/t/tayam_luminous_enigma.txt | 2 +- forge-gui/res/cardsfolder/t/tenza_godos_maul.txt | 2 +- forge-gui/res/cardsfolder/t/terisian_mindbreaker.txt | 4 ++-- forge-gui/res/cardsfolder/t/tevesh_szat_doom_of_fools.txt | 2 +- forge-gui/res/cardsfolder/t/the_belligerent.txt | 2 +- forge-gui/res/cardsfolder/t/the_first_doctor.txt | 2 +- forge-gui/res/cardsfolder/t/the_five_doctors.txt | 2 +- forge-gui/res/cardsfolder/t/the_goose_mother.txt | 2 +- .../res/cardsfolder/t/the_tabernacle_at_pendrell_vale.txt | 2 +- .../res/cardsfolder/t/thing_in_the_ice_awoken_horror.txt | 2 +- forge-gui/res/cardsfolder/t/think_tank.txt | 2 +- forge-gui/res/cardsfolder/t/thirsting_bloodlord.txt | 2 +- forge-gui/res/cardsfolder/t/thopter_architect.txt | 2 +- forge-gui/res/cardsfolder/t/thoughtbound_phantasm.txt | 2 +- forge-gui/res/cardsfolder/t/threefold_thunderhulk.txt | 4 ++-- forge-gui/res/cardsfolder/t/through_the_breach.txt | 2 +- forge-gui/res/cardsfolder/t/thunderhawk_gunship.txt | 2 +- forge-gui/res/cardsfolder/t/thundering_mightmare.txt | 2 +- forge-gui/res/cardsfolder/t/tilonallis_summoner.txt | 2 +- forge-gui/res/cardsfolder/t/timothar_baron_of_bats.txt | 2 +- forge-gui/res/cardsfolder/t/titan_hunter.txt | 2 +- .../t/titania_voice_of_gaea_titania_gaea_incarnate.txt | 3 +-- forge-gui/res/cardsfolder/t/titanias_song.txt | 2 +- forge-gui/res/cardsfolder/t/together_forever.txt | 4 ++-- forge-gui/res/cardsfolder/t/tolarian_academy.txt | 2 +- forge-gui/res/cardsfolder/t/tolarian_emissary.txt | 2 +- forge-gui/res/cardsfolder/t/tomakul_phoenix.txt | 2 +- forge-gui/res/cardsfolder/t/tomb_blade.txt | 2 +- forge-gui/res/cardsfolder/t/tomb_tyrant.txt | 2 +- forge-gui/res/cardsfolder/t/torment_of_venom.txt | 2 +- forge-gui/res/cardsfolder/t/trail_of_evidence.txt | 2 +- forge-gui/res/cardsfolder/t/trenchpost.txt | 2 +- forge-gui/res/cardsfolder/t/tribune_of_rot.txt | 2 +- forge-gui/res/cardsfolder/t/tribute_to_urborg.txt | 2 +- forge-gui/res/cardsfolder/t/triton_waverider.txt | 2 +- forge-gui/res/cardsfolder/t/triumphant_reckoning.txt | 2 +- forge-gui/res/cardsfolder/t/trove_warden.txt | 2 +- forge-gui/res/cardsfolder/t/trygon_prime.txt | 2 +- forge-gui/res/cardsfolder/t/trynn_champion_of_freedom.txt | 4 ++-- forge-gui/res/cardsfolder/t/twilight_drover.txt | 2 +- forge-gui/res/cardsfolder/t/twisted_sewer_witch.txt | 2 +- forge-gui/res/cardsfolder/t/tyrant_guard.txt | 2 +- forge-gui/res/cardsfolder/t/tyvar_the_bellicose.txt | 4 ++-- forge-gui/res/cardsfolder/u/underworld_rage_hound.txt | 2 +- forge-gui/res/cardsfolder/u/urabrask_the_great_work.txt | 4 ++-- forge-gui/res/cardsfolder/u/urborg_scavengers.txt | 2 +- forge-gui/res/cardsfolder/u/urgent_necropsy.txt | 2 +- forge-gui/res/cardsfolder/u/urtet_remnant_of_memnarch.txt | 2 +- forge-gui/res/cardsfolder/v/vampire_socialite.txt | 2 +- forge-gui/res/cardsfolder/v/vampires_vengeance.txt | 2 +- forge-gui/res/cardsfolder/v/vantress_paladin.txt | 2 +- forge-gui/res/cardsfolder/v/vault_101_birthday_party.txt | 2 +- forge-gui/res/cardsfolder/v/vazi_keen_negotiator.txt | 2 +- forge-gui/res/cardsfolder/v/verduran_emissary.txt | 2 +- forge-gui/res/cardsfolder/v/veteran_adventurer.txt | 2 +- forge-gui/res/cardsfolder/v/vigean_graftmage.txt | 4 ++-- forge-gui/res/cardsfolder/v/vigean_hydropon.txt | 2 +- forge-gui/res/cardsfolder/v/viral_spawning.txt | 2 +- forge-gui/res/cardsfolder/v/visions_of_dread.txt | 2 +- forge-gui/res/cardsfolder/v/vito_thorn_of_the_dusk_rose.txt | 2 +- forge-gui/res/cardsfolder/v/vodalian_hexcatcher.txt | 2 +- forge-gui/res/cardsfolder/v/vohar_vodalian_desecrator.txt | 2 +- forge-gui/res/cardsfolder/v/voice_of_the_vermin.txt | 2 +- forge-gui/res/cardsfolder/v/voldaren_estate.txt | 2 +- forge-gui/res/cardsfolder/v/vulpine_harvester.txt | 6 +++--- 69 files changed, 78 insertions(+), 79 deletions(-) diff --git a/forge-gui/res/cardsfolder/t/tangletrove_kelp.txt b/forge-gui/res/cardsfolder/t/tangletrove_kelp.txt index 730c1a11747..e6a67221da1 100644 --- a/forge-gui/res/cardsfolder/t/tangletrove_kelp.txt +++ b/forge-gui/res/cardsfolder/t/tangletrove_kelp.txt @@ -6,6 +6,6 @@ K:Ward:2 T:Mode$ Phase | Phase$ BeginCombat | TriggerZones$ Battlefield | Execute$ TrigAnimateAll | TriggerDescription$ At the beginning of each combat, other Clues you control become 6/6 Plant creatures in addition to their other types until end of turn. SVar:TrigAnimateAll:DB$ AnimateAll | ValidCards$ Clue.Other+YouCtrl | Power$ 6 | Toughness$ 6 | Types$ Creature,Plant A:AB$ Draw | Cost$ 2 Sac<1/CARDNAME> | NumCards$ 1 | SpellDescription$ Draw a card. -DeckNeeds:Type$Clue DeckHas:Ability$Sacrifice +DeckNeeds:Type$Clue Oracle:Ward {2}\nAt the beginning of each combat, other Clues you control become 6/6 Plant creatures in addition to their other types until end of turn.\n{2}, Sacrifice Tangletrove Kelp: Draw a card. diff --git a/forge-gui/res/cardsfolder/t/tardis.txt b/forge-gui/res/cardsfolder/t/tardis.txt index 1b522446365..602b643864f 100644 --- a/forge-gui/res/cardsfolder/t/tardis.txt +++ b/forge-gui/res/cardsfolder/t/tardis.txt @@ -10,6 +10,6 @@ SVar:GrantCascade:Mode$ Continuous | EffectZone$ Command | Affected$ Card.YouCtr SVar:ExileEffect:Mode$ SpellCast | EffectZone$ Command | ValidCard$ Card.YouCtrl | Execute$ RemoveEffect | Static$ True SVar:RemoveEffect:DB$ ChangeZone | Origin$ Command | Destination$ Exile | Defined$ Self K:Crew:2 -DeckNeeds:Type$Time Lord SVar:HasAttackEffect:TRUE +DeckNeeds:Type$Time Lord Oracle:Flying\nWhenever TARDIS attacks, if you control a Time Lord, the next spell you cast this turn has cascade and you may planeswalk.\nCrew 2 (Tap any number of creatures you control with total power 2 or more: This Vehicle becomes an artifact creature until end of turn.) diff --git a/forge-gui/res/cardsfolder/t/tatyova_steward_of_tides.txt b/forge-gui/res/cardsfolder/t/tatyova_steward_of_tides.txt index 6848d2ac77e..5c7da008dd8 100644 --- a/forge-gui/res/cardsfolder/t/tatyova_steward_of_tides.txt +++ b/forge-gui/res/cardsfolder/t/tatyova_steward_of_tides.txt @@ -5,6 +5,6 @@ PT:3/3 S:Mode$ Continuous | Affected$ Creature.Land+YouCtrl | AddKeyword$ Flying | Description$ Land creatures you control have flying. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.YouCtrl | IsPresent$ Land.YouCtrl | PresentCompare$ GE7 | TriggerZones$ Battlefield | Execute$ TrigAnimate | TriggerDescription$ Whenever a land you control enters, if you control seven or more lands, up to one target land you control becomes a 3/3 Elemental creature with haste. It's still a land. SVar:TrigAnimate:DB$ Animate | ValidTgts$ Land.YouCtrl | TargetMin$ 0 | TargetMax$ 1 | Duration$ Permanent | TgtPrompt$ Select up to one target land you control | Power$ 3 | Toughness$ 3 | Types$ Elemental,Creature | Keywords$ Haste -DeckHints:Type$Land SVar:BuffedBy:Land +DeckHints:Type$Land Oracle:Land creatures you control have flying.\nWhenever a land you control enters, if you control seven or more lands, up to one target land you control becomes a 3/3 Elemental creature with haste. It's still a land. diff --git a/forge-gui/res/cardsfolder/t/tawnos_the_toymaker.txt b/forge-gui/res/cardsfolder/t/tawnos_the_toymaker.txt index b29219c4850..3ddbdfa22e1 100644 --- a/forge-gui/res/cardsfolder/t/tawnos_the_toymaker.txt +++ b/forge-gui/res/cardsfolder/t/tawnos_the_toymaker.txt @@ -4,6 +4,6 @@ Types:Legendary Creature Human Artificer PT:3/5 T:Mode$ SpellCast | TriggerZones$ Battlefield | OptionalDecider$ You | ValidCard$ Creature.Bird,Creature.Beast | ValidActivatingPlayer$ You | Execute$ TrigCopy | TriggerDescription$ Whenever you cast a Beast or Bird creature spell, you may copy it, except it's an artifact in addition to its other types. (The copy becomes a token.) SVar:TrigCopy:DB$ CopySpellAbility | Defined$ TriggeredSpellAbility | AddTypes$ Artifact -DeckNeeds:Type$Beast|Bird DeckHas:Ability$Token & Type$Artifact +DeckNeeds:Type$Beast|Bird Oracle:Whenever you cast a Beast or Bird creature spell, you may copy it, except it's an artifact in addition to its other types. (The copy becomes a token.) diff --git a/forge-gui/res/cardsfolder/t/tayam_luminous_enigma.txt b/forge-gui/res/cardsfolder/t/tayam_luminous_enigma.txt index 3898c5948d2..22b02660fdd 100644 --- a/forge-gui/res/cardsfolder/t/tayam_luminous_enigma.txt +++ b/forge-gui/res/cardsfolder/t/tayam_luminous_enigma.txt @@ -6,6 +6,6 @@ K:ETBReplacement:Other:AddExtraCounter:Mandatory:Battlefield:Creature.Other+YouC SVar:AddExtraCounter:DB$ PutCounter | ETB$ True | Defined$ ReplacedCard | CounterType$ Vigilance | CounterNum$ 1 | SpellDescription$ Each other creature you control enters with an additional vigilance counter on it. A:AB$ Mill | Cost$ 3 RemoveAnyCounter<3/Any/Creature.YouCtrl/among creatures you control> | NumCards$ 3 | Defined$ You | SubAbility$ DBChangeZone | StackDescription$ SpellDescription | SpellDescription$ Mill three cards, then return a permanent card with mana value 3 or less from your graveyard to the battlefield. SVar:DBChangeZone:DB$ ChangeZone | Hidden$ True | Mandatory$ True | ChangeType$ Permanent.YouOwn+cmcLE3 | ChangeNum$ 1 | Origin$ Graveyard | Destination$ Battlefield -DeckHas:Ability$Counters SVar:AIRemoveCounterCostPriority:Vigilance +DeckHas:Ability$Counters Oracle:Each other creature you control enters with an additional vigilance counter on it.\n{3}, Remove three counters from among creatures you control: Mill three cards, then return a permanent card with mana value 3 or less from your graveyard to the battlefield. diff --git a/forge-gui/res/cardsfolder/t/tenza_godos_maul.txt b/forge-gui/res/cardsfolder/t/tenza_godos_maul.txt index 98de7db0ec6..d1e9686c0ab 100644 --- a/forge-gui/res/cardsfolder/t/tenza_godos_maul.txt +++ b/forge-gui/res/cardsfolder/t/tenza_godos_maul.txt @@ -5,7 +5,7 @@ K:Equip:1 S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddPower$ 1 | AddToughness$ 1 | Description$ Equipped creature gets +1/+1. S:Mode$ Continuous | Affected$ Card.EquippedBy+Legendary | AddPower$ 2 | AddToughness$ 2 | Description$ As long as it's legendary, it gets an additional +2/+2. S:Mode$ Continuous | Affected$ Card.EquippedBy+Red | AddKeyword$ Trample | Description$ As long as it's red, it has trample. -AI:RemoveDeck:Random SVar:AttachAi:AITgts$ Card.Red,Card.Legendary +AI:RemoveDeck:Random DeckNeeds:Color$Red Oracle:Equipped creature gets +1/+1. As long as it's legendary, it gets an additional +2/+2. As long as it's red, it has trample.\nEquip {1} ({1}: Attach to target creature you control. Equip only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/t/terisian_mindbreaker.txt b/forge-gui/res/cardsfolder/t/terisian_mindbreaker.txt index de6c6b05afa..cb96f8e30f4 100644 --- a/forge-gui/res/cardsfolder/t/terisian_mindbreaker.txt +++ b/forge-gui/res/cardsfolder/t/terisian_mindbreaker.txt @@ -6,7 +6,7 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigMill | TriggerDescription$ SVar:TrigMill:DB$ Mill | NumCards$ X | Defined$ TriggeredDefendingPlayer SVar:X:TriggeredDefendingPlayer$CardsInLibrary/HalfUp K:Unearth:1 U U U -DeckHints:Color$Blue -DeckHas:Ability$Graveyard|Mill SVar:HasAttackEffect:TRUE +DeckHas:Ability$Graveyard|Mill +DeckHints:Color$Blue Oracle:Whenever Terisian Mindbreaker attacks, defending player mills half their library, rounded up.\nUnearth {1}{U}{U}{U} ({1}{U}{U}{U}: Return this card from your graveyard to the battlefield. It gains haste. Exile it at the beginning of the next end step or if it would leave the battlefield. Unearth only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/t/tevesh_szat_doom_of_fools.txt b/forge-gui/res/cardsfolder/t/tevesh_szat_doom_of_fools.txt index bcf6ff74fe8..c71b307b49a 100644 --- a/forge-gui/res/cardsfolder/t/tevesh_szat_doom_of_fools.txt +++ b/forge-gui/res/cardsfolder/t/tevesh_szat_doom_of_fools.txt @@ -10,6 +10,6 @@ SVar:DBDraw:DB$ Draw | Defined$ You | NumCards$ 2 | ConditionDefined$ Remembered SVar:DBDraw2:DB$ Draw | Defined$ You | NumCards$ 1 | ConditionDefined$ Remembered | ConditionPresent$ Card.IsCommander | ConditionCompare$ GE1 A:AB$ GainControl | Cost$ SubCounter<10/LOYALTY> | Planeswalker$ True | Ultimate$ True | AllValid$ Card.IsCommander | NewController$ You | SubAbility$ DBChangeZone | SpellDescription$ Gain control of all commanders. Put all commanders from the commander zone onto the battlefield under your control. SVar:DBChangeZone:DB$ ChangeZoneAll | ChangeType$ Card.IsCommander | Origin$ Command | Destination$ Battlefield | GainControl$ True -DeckHas:Ability$Token|Sacrifice SVar:AIPreference:SacCost$Creature.token+powerLE2+toughnessLE2 +DeckHas:Ability$Token|Sacrifice Oracle:[+2]: Create two 0/1 black Thrull creature tokens.\n[+1]: You may sacrifice another creature or planeswalker. If you do, draw two cards, then draw another card if the sacrificed permanent was a commander.\n[-10]: Gain control of all commanders. Put all commanders from the command zone onto the battlefield under your control.\nTevesh Szat, Doom of Fools can be your commander.\nPartner diff --git a/forge-gui/res/cardsfolder/t/the_belligerent.txt b/forge-gui/res/cardsfolder/t/the_belligerent.txt index 0561fe200d2..1175684acb7 100644 --- a/forge-gui/res/cardsfolder/t/the_belligerent.txt +++ b/forge-gui/res/cardsfolder/t/the_belligerent.txt @@ -7,6 +7,6 @@ SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_treasure_sac | Toke SVar:DBEffect:DB$ Effect | StaticAbilities$ StaticMayLookAndPlay SVar:StaticMayLookAndPlay:Mode$ Continuous | Affected$ Card.TopLibrary+YouCtrl | AffectedZone$ Library | MayLookAt$ Player | MayPlay$ True | Description$ You may look at the top card of your library any time, and you may play lands and cast spells from the top of your library. K:Crew:3 -DeckHas:Ability$Token & Type$Treasure SVar:HasAttackEffect:TRUE +DeckHas:Ability$Token & Type$Treasure Oracle:Whenever The Belligerent attacks, create a Treasure token. Until end of turn, you may look at the top card of your library any time, and you may play lands and cast spells from the top of your library.\nCrew 3 diff --git a/forge-gui/res/cardsfolder/t/the_first_doctor.txt b/forge-gui/res/cardsfolder/t/the_first_doctor.txt index d9b8c5a40c9..4e9fd390016 100644 --- a/forge-gui/res/cardsfolder/t/the_first_doctor.txt +++ b/forge-gui/res/cardsfolder/t/the_first_doctor.txt @@ -6,7 +6,7 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigSearch:DB$ ChangeZone | Hidden$ True | Origin$ Library | OriginAlternative$ Graveyard | Destination$ Hand | ChangeType$ Card.YouOwn+namedTARDIS T:Mode$ SpellCast | ValidCard$ Card.withCascade | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever you cast a spell with cascade, put a +1/+1 counter on target artifact or creature. SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature,Artifact | TgtPrompt$ Select target artifact or creature | CounterType$ P1P1 | CounterNum$ 1 +DeckHas:Ability$Counters DeckHints:Name$TARDIS DeckNeeds:Keyword$Cascade -DeckHas:Ability$Counters Oracle:When The First Doctor enters, search your library and/or graveyard for a card named TARDIS, reveal it, and put it into your hand. If you search your library this way, shuffle.\nWhenever you cast a spell with cascade, put a +1/+1 counter on target artifact or creature. diff --git a/forge-gui/res/cardsfolder/t/the_five_doctors.txt b/forge-gui/res/cardsfolder/t/the_five_doctors.txt index c993937b27d..596ed798745 100644 --- a/forge-gui/res/cardsfolder/t/the_five_doctors.txt +++ b/forge-gui/res/cardsfolder/t/the_five_doctors.txt @@ -3,6 +3,6 @@ ManaCost:5 G Types:Sorcery K:Kicker:5 A:SP$ ChangeZone | Origin$ Library | OriginAlternative$ Graveyard | Destination$ Hand | DestinationAlternative$ Battlefield | DestAltSVar$ MANDATORY Count$TimesKicked | ChangeType$ Doctor | ChangeNum$ 5 | SpellDescription$ Search your library and/or graveyard for up to five Doctor cards, reveal them, and put them into your hand. If you search your library this way, shuffle. If this spell was kicked, put those cards onto the battlefield instead of putting them into your hand. -DeckNeeds:Type$Doctor DeckHas:Ability$Graveyard +DeckNeeds:Type$Doctor Oracle:Kicker {5} (You may pay an additional {5} as you cast this spell.)\nSearch your library and/or graveyard for up to five Doctor cards, reveal them, and put them into your hand. If you search your library this way, shuffle. If this spell was kicked, put those cards onto the battlefield instead of putting them into your hand. diff --git a/forge-gui/res/cardsfolder/t/the_goose_mother.txt b/forge-gui/res/cardsfolder/t/the_goose_mother.txt index b5899d4170f..5f88939ff18 100644 --- a/forge-gui/res/cardsfolder/t/the_goose_mother.txt +++ b/forge-gui/res/cardsfolder/t/the_goose_mother.txt @@ -10,6 +10,6 @@ SVar:TrigDraw:AB$ Draw | Cost$ Sac<1/Food> K:etbCounter:P1P1:X SVar:X:Count$xPaid SVar:HalfXUp:Count$xPaid/HalfUp -DeckHas:Ability$LifeGain|Token|Counters & Type$Food SVar:HasAttackEffect:TRUE +DeckHas:Ability$LifeGain|Token|Counters & Type$Food Oracle:Flying\nThe Goose Mother enters with X +1/+1 counters on it.\nWhen The Goose Mother enters, create half X Food tokens, rounded up.\nWhenever The Goose Mother attacks, you may sacrifice a Food. If you do, draw a card. diff --git a/forge-gui/res/cardsfolder/t/the_tabernacle_at_pendrell_vale.txt b/forge-gui/res/cardsfolder/t/the_tabernacle_at_pendrell_vale.txt index 07a16aff39c..5bc2520d9bf 100644 --- a/forge-gui/res/cardsfolder/t/the_tabernacle_at_pendrell_vale.txt +++ b/forge-gui/res/cardsfolder/t/the_tabernacle_at_pendrell_vale.txt @@ -4,9 +4,9 @@ Types:Legendary Land S:Mode$ Continuous | Affected$ Creature | AddTrigger$ TabernacleTrig | AddSVar$ TabernacleDestroy | Description$ All creatures have "At the beginning of your upkeep, destroy this creature unless you pay {1}." SVar:TabernacleTrig:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TabernacleDestroy | TriggerDescription$ At the beginning of your upkeep, destroy CARDNAME unless you pay {1}. SVar:TabernacleDestroy:DB$ Destroy | Defined$ Self | UnlessPayer$ You | UnlessCost$ 1 -AI:RemoveDeck:Random SVar:NeedsToPlayVar:CountOpps GTCountMe SVar:CountOpps:Count$Valid Creature.OppCtrl SVar:CountMe:Count$Valid Creature.YouCtrl +AI:RemoveDeck:Random DeckHints:Type$Enchantment|Planeswalker|Artifact|Instant|Sorcery Oracle:All creatures have "At the beginning of your upkeep, destroy this creature unless you pay {1}." diff --git a/forge-gui/res/cardsfolder/t/thing_in_the_ice_awoken_horror.txt b/forge-gui/res/cardsfolder/t/thing_in_the_ice_awoken_horror.txt index 0a53306d343..72cfb3bb37d 100644 --- a/forge-gui/res/cardsfolder/t/thing_in_the_ice_awoken_horror.txt +++ b/forge-gui/res/cardsfolder/t/thing_in_the_ice_awoken_horror.txt @@ -7,9 +7,9 @@ K:etbCounter:ICE:4 T:Mode$ SpellCast | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigRemoveCounter | TriggerDescription$ Whenever you cast an instant or sorcery spell, remove an ice counter from CARDNAME. Then if it has no ice counters on it, transform it. SVar:TrigRemoveCounter:DB$ RemoveCounter | Defined$ Self | CounterType$ ICE | CounterNum$ 1 | SubAbility$ DBTransform SVar:DBTransform:DB$ SetState | Defined$ Self | ConditionPresent$ Card.Self+counters_EQ0_ICE | Mode$ Transform +DeckHas:Ability$Counters DeckHints:Type$Horror DeckNeeds:Type$Instant|Sorcery -DeckHas:Ability$Counters AlternateMode:DoubleFaced Oracle:Defender\nThing in the Ice enters with four ice counters on it.\nWhenever you cast an instant or sorcery spell, remove an ice counter from Thing in the Ice. Then if it has no ice counters on it, transform it. diff --git a/forge-gui/res/cardsfolder/t/think_tank.txt b/forge-gui/res/cardsfolder/t/think_tank.txt index 535383cf2cc..223d194961e 100644 --- a/forge-gui/res/cardsfolder/t/think_tank.txt +++ b/forge-gui/res/cardsfolder/t/think_tank.txt @@ -2,7 +2,7 @@ Name:Think Tank ManaCost:2 U Types:Enchantment T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigSurveil | TriggerDescription$ At the beginning of your upkeep, surveil 1. (Look at the top card of your library. You may put that card into your graveyard.) -AI:RemoveDeck:All SVar:TrigSurveil:DB$ Surveil | Amount$ 1 +AI:RemoveDeck:All DeckHas:Ability$Surveil|Graveyard Oracle:At the beginning of your upkeep, surveil 1. (Look at the top card of your library. You may put that card into your graveyard.) diff --git a/forge-gui/res/cardsfolder/t/thirsting_bloodlord.txt b/forge-gui/res/cardsfolder/t/thirsting_bloodlord.txt index 2ccc07406bb..be47ffc0a64 100644 --- a/forge-gui/res/cardsfolder/t/thirsting_bloodlord.txt +++ b/forge-gui/res/cardsfolder/t/thirsting_bloodlord.txt @@ -4,6 +4,6 @@ Types:Creature Vampire PT:3/3 S:Mode$ Continuous | Affected$ Creature.Vampire+Other+YouCtrl | AddPower$ 1 | AddToughness$ 1 | Description$ Other Vampires you control get +1/+1. SVar:PlayMain1:TRUE -DeckHints:Type$Vampire SVar:BuffedBy:Vampire +DeckHints:Type$Vampire Oracle:Other Vampires you control get +1/+1. diff --git a/forge-gui/res/cardsfolder/t/thopter_architect.txt b/forge-gui/res/cardsfolder/t/thopter_architect.txt index 30492a3299e..77f12e629b2 100644 --- a/forge-gui/res/cardsfolder/t/thopter_architect.txt +++ b/forge-gui/res/cardsfolder/t/thopter_architect.txt @@ -4,6 +4,6 @@ Types:Creature Human Artificer PT:2/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Artifact.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ Whenever an artifact you control enters, target creature gains flying until end of turn. SVar:TrigPump:DB$ Pump | ValidTgts$ Creature | KW$ Flying -DeckNeeds:Type$Artifact DeckHas:Keyword$Flying +DeckNeeds:Type$Artifact Oracle:Whenever an artifact you control enters, target creature gains flying until end of turn. diff --git a/forge-gui/res/cardsfolder/t/thoughtbound_phantasm.txt b/forge-gui/res/cardsfolder/t/thoughtbound_phantasm.txt index c1b6192a174..7530a743fae 100644 --- a/forge-gui/res/cardsfolder/t/thoughtbound_phantasm.txt +++ b/forge-gui/res/cardsfolder/t/thoughtbound_phantasm.txt @@ -6,6 +6,6 @@ K:Defender T:Mode$ Surveil | ValidPlayer$ You | Execute$ TrigPutCounter | TriggerZones$ Battlefield | TriggerDescription$ Whenever you surveil, put a +1/+1 counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 S:Mode$ CanAttackDefender | ValidCard$ Card.Self+counters_GE3_P1P1 | Description$ As long as CARDNAME has three or more +1/+1 counters on it, it can attack as though it didn't have defender. -DeckNeeds:Ability$Surveil DeckHas:Ability$Counters +DeckNeeds:Ability$Surveil Oracle:Defender\nWhenever you surveil, put a +1/+1 counter on Thoughtbound Phantasm.\nAs long as Thoughtbound Phantasm has three or more +1/+1 counters on it, it can attack as though it didn't have defender. diff --git a/forge-gui/res/cardsfolder/t/threefold_thunderhulk.txt b/forge-gui/res/cardsfolder/t/threefold_thunderhulk.txt index 589beb2d539..cf945889711 100644 --- a/forge-gui/res/cardsfolder/t/threefold_thunderhulk.txt +++ b/forge-gui/res/cardsfolder/t/threefold_thunderhulk.txt @@ -8,9 +8,9 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigToken | Secondary$ True | SVar:TrigToken:DB$ Token | TokenScript$ c_1_1_a_gnome | TokenOwner$ You | TokenAmount$ X A:AB$ PutCounter | Cost$ 2 Sac<1/Artifact.Other/an other artifact> | CounterType$ P1P1 | CounterNum$ 1 | SpellDescription$ Put a +1/+1 counter on CARDNAME. SVar:X:Count$CardPower -DeckHas:Ability$Counters|Token & Type$Gnome -DeckHints:Type$Artifact SVar:HasAttackEffect:TRUE SVar:EnchantMe:Multiple SVar:EquipMe:Multiple +DeckHas:Ability$Counters|Token & Type$Gnome +DeckHints:Type$Artifact Oracle:Threefold Thunderhulk enters with three +1/+1 counters on it.\nWhenever Threefold Thunderhulk enters or attacks, create a number of 1/1 colorless Gnome artifact creature tokens equal to its power.\n{2}, Sacrifice another artifact: Put a +1/+1 counter on Threefold Thunderhulk. diff --git a/forge-gui/res/cardsfolder/t/through_the_breach.txt b/forge-gui/res/cardsfolder/t/through_the_breach.txt index 7c2a54b1557..f0c95062dbc 100644 --- a/forge-gui/res/cardsfolder/t/through_the_breach.txt +++ b/forge-gui/res/cardsfolder/t/through_the_breach.txt @@ -5,7 +5,7 @@ K:Splice:Arcane:2 R R A:SP$ ChangeZone | Origin$ Hand | Destination$ Battlefield | ChangeType$ Creature.YouCtrl | SubAbility$ DBPump | RememberChanged$ True | ForgetOtherRemembered$ True | AILogic$ BeforeCombat | SpellDescription$ You may put a creature card from your hand onto the battlefield. That creature gains haste. Sacrifice that creature at the beginning of the next end step. SVar:DBPump:DB$ Animate | Keywords$ Haste | Defined$ Remembered | Duration$ Permanent | AtEOT$ Sacrifice | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -AI:RemoveDeck:All SVar:PlayMain1:TRUE +AI:RemoveDeck:All DeckHints:Type$Arcane Oracle:You may put a creature card from your hand onto the battlefield. That creature gains haste. Sacrifice that creature at the beginning of the next end step.\nSplice onto Arcane {2}{R}{R} (As you cast an Arcane spell, you may reveal this card from your hand and pay its splice cost. If you do, add this card's effects to that spell.) diff --git a/forge-gui/res/cardsfolder/t/thunderhawk_gunship.txt b/forge-gui/res/cardsfolder/t/thunderhawk_gunship.txt index da031bc38ef..932093ee5f0 100644 --- a/forge-gui/res/cardsfolder/t/thunderhawk_gunship.txt +++ b/forge-gui/res/cardsfolder/t/thunderhawk_gunship.txt @@ -8,6 +8,6 @@ SVar:TrigToken:DB$ Token | TokenScript$ w_2_2_astartes_warrior_vigilance | Token T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ Whenever CARDNAME attacks, attacking creatures you control gain flying until end of turn. SVar:TrigPump:DB$ PumpAll | ValidCards$ Creature.attacking+YouCtrl | KW$ Flying K:Crew:2 -DeckHas:Ability$Token & Type$Astartes|Warrior & Keyword$Vigilance SVar:HasAttackingEffect:TRUE +DeckHas:Ability$Token & Type$Astartes|Warrior & Keyword$Vigilance Oracle:Flying\nWhen Thunderhawk Gunship enters, create two 2/2 white Astartes Warrior creature tokens with vigilance.\nWhenever Thunderhawk Gunship attacks, attacking creatures you control gain flying until end of turn.\nCrew 2 diff --git a/forge-gui/res/cardsfolder/t/thundering_mightmare.txt b/forge-gui/res/cardsfolder/t/thundering_mightmare.txt index 5d45a23f3b5..2b564265c6a 100644 --- a/forge-gui/res/cardsfolder/t/thundering_mightmare.txt +++ b/forge-gui/res/cardsfolder/t/thundering_mightmare.txt @@ -6,6 +6,6 @@ K:Soulbond S:Mode$ Continuous | Affected$ Creature.PairedWith,Creature.Self+Paired | AddTrigger$ CastTrigger | Description$ As long as CARDNAME is paired with another creature, each of those creatures has "Whenever an opponent casts a spell, put a +1/+1 counter on this creature." SVar:CastTrigger:Mode$ SpellCast | ValidCard$ Card | ValidActivatingPlayer$ Opponent | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever an opponent casts a spell, put a +1/+1 counter on this creature. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 -DeckHas:Ability$Counters SVar:BuffedBy:Creature +DeckHas:Ability$Counters Oracle:Soulbond (You may pair this creature with another unpaired creature when either enters. They remain paired for as long as you control both of them.)\nAs long as Thundering Mightmare is paired with another creature, each of those creatures has "Whenever an opponent casts a spell, put a +1/+1 counter on this creature." diff --git a/forge-gui/res/cardsfolder/t/tilonallis_summoner.txt b/forge-gui/res/cardsfolder/t/tilonallis_summoner.txt index f93e23f07bc..9d0c889b0ef 100644 --- a/forge-gui/res/cardsfolder/t/tilonallis_summoner.txt +++ b/forge-gui/res/cardsfolder/t/tilonallis_summoner.txt @@ -7,6 +7,6 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription SVar:TrigToken:AB$ Token | Cost$ X R | TokenAmount$ X | TokenScript$ r_1_1_elemental | TokenOwner$ You | TokenTapped$ True | TokenAttacking$ True | AtEOT$ Exile | AtEOTCondition$ Y | AtEOTDesc$ At the beginning of the next end step, exile those tokens unless you have the city's blessing. SVar:X:Count$xPaid SVar:Y:Count$Blessing.0.1 -DeckHas:Ability$Token SVar:HasAttackEffect:TRUE +DeckHas:Ability$Token Oracle:Ascend (If you control ten or more permanents, you get the city's blessing for the rest of the game.)\nWhenever Tilonalli's Summoner attacks, you may pay {X}{R}. If you do, create X 1/1 red Elemental creature tokens that are tapped and attacking. At the beginning of the next end step, exile those tokens unless you have the city's blessing. diff --git a/forge-gui/res/cardsfolder/t/timothar_baron_of_bats.txt b/forge-gui/res/cardsfolder/t/timothar_baron_of_bats.txt index 11200b1b0c2..dee93d0d856 100644 --- a/forge-gui/res/cardsfolder/t/timothar_baron_of_bats.txt +++ b/forge-gui/res/cardsfolder/t/timothar_baron_of_bats.txt @@ -9,6 +9,6 @@ SVar:DBAnimate:DB$ Animate | Defined$ Imprinted | Duration$ Permanent | Triggers SVar:CDTrigger:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigSac | TriggerZones$ Battlefield | TriggerDescription$ When this creature deals combat damage to a player, sacrifice it and return the exiled card to the battlefield tapped. SVar:TrigSac:DB$ Sacrifice | SubAbility$ DBReturn SVar:DBReturn:DB$ ChangeZone | Defined$ Remembered | Origin$ Exile | Destination$ Battlefield | Tapped$ True | GainControl$ True -DeckNeeds:Type$Vampire DeckHas:Ability$Token|Sacrifice +DeckNeeds:Type$Vampire Oracle:Ward—Discard a card.\nWhenever another nontoken Vampire you control dies, you may pay {1} and exile it. If you do, create a 1/1 black Bat creature token with flying. It gains "When this creature deals combat damage to a player, sacrifice it and return the exiled card to the battlefield tapped." diff --git a/forge-gui/res/cardsfolder/t/titan_hunter.txt b/forge-gui/res/cardsfolder/t/titan_hunter.txt index c2c14b27ac8..8b0b933edcf 100644 --- a/forge-gui/res/cardsfolder/t/titan_hunter.txt +++ b/forge-gui/res/cardsfolder/t/titan_hunter.txt @@ -6,6 +6,6 @@ T:Mode$ Phase | Phase$ End of Turn | CheckSVar$ X | SVarCompare$ EQ0 | TriggerZo SVar:TrigDamage:DB$ DealDamage | Defined$ TriggeredPlayer | NumDmg$ 4 SVar:X:Count$ThisTurnEntered_Graveyard_from_Battlefield_Creature A:AB$ GainLife | Cost$ 1 B Sac<1/Creature> | LifeAmount$ 4 | SpellDescription$ You gain 4 life. -DeckHas:Ability$LifeGain SVar:AIPreference:SacCost$Creature.token,Creature.cmcLE3 +DeckHas:Ability$LifeGain Oracle:At the beginning of each player's end step, if no creatures died this turn, Titan Hunter deals 4 damage to that player.\n{1}{B}, Sacrifice a creature: You gain 4 life. diff --git a/forge-gui/res/cardsfolder/t/titania_voice_of_gaea_titania_gaea_incarnate.txt b/forge-gui/res/cardsfolder/t/titania_voice_of_gaea_titania_gaea_incarnate.txt index cb600c849f9..90973e6eb4c 100644 --- a/forge-gui/res/cardsfolder/t/titania_voice_of_gaea_titania_gaea_incarnate.txt +++ b/forge-gui/res/cardsfolder/t/titania_voice_of_gaea_titania_gaea_incarnate.txt @@ -7,10 +7,9 @@ T:Mode$ ChangesZoneAll | ValidCards$ Land.YouOwn+nonToken | Origin$ Any | Destin SVar:TrigLifegain:DB$ GainLife | LifeAmount$ 2 T:Mode$ Phase | Phase$ Upkeep | CheckSVar$ X | SVarCompare$ GE4 | IsPresent$ Card.Self+YouOwn | IsPresent2$ Land.YouCtrl+YouOwn+namedArgoth; Sanctum of Nature | ValidPlayer$ You | Execute$ Meld | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of your upkeep, if there are four or more land cards in your graveyard and you both own and control CARDNAME and a land named Argoth, Sanctum of Nature, exile them, then meld them into Titania, Gaea Incarnate. SVar:Meld:DB$ Meld | Name$ Titania, Gaea Incarnate | Primary$ Titania, Voice of Gaea | Secondary$ Argoth, Sanctum of Nature | SecondaryType$ Land -DeckHints:Name$Argoth, Sanctum of Nature SVar:X:Count$TypeInYourYard.Land DeckHas:Ability$Graveyard|Counters|LifeGain -DeckHints:Ability$Mill|Graveyard|Dredge & Name$Argoth, Sanctum of Nature +DeckHints:Ability$Discard|Mill|Graveyard|Dredge & Name$Argoth, Sanctum of Nature MeldPair:Argoth, Sanctum of Nature AlternateMode:Meld Oracle:Reach\nWhenever one or more land cards are put into your graveyard from anywhere, you gain 2 life.\nAt the beginning of your upkeep, if there are four or more land cards in your graveyard and you both own and control Titania, Voice of Gaea and a land named Argoth, Sanctum of Nature, exile them, then meld them into Titania, Gaea Incarnate. diff --git a/forge-gui/res/cardsfolder/t/titanias_song.txt b/forge-gui/res/cardsfolder/t/titanias_song.txt index 84088c8021a..ec4490eeab6 100644 --- a/forge-gui/res/cardsfolder/t/titanias_song.txt +++ b/forge-gui/res/cardsfolder/t/titanias_song.txt @@ -8,9 +8,9 @@ SVar:KWAnimateAll:Mode$ Continuous | EffectZone$ Command | AffectedZone$ Battlef SVar:AffectedX:Count$CardManaCost SVar:NonStackingEffect:True SVar:PlayMain1:ALWAYS -AI:RemoveDeck:Random SVar:NeedsToPlayVar:CountOpps GTCountMe SVar:CountOpps:Count$Valid Artifact.OppCtrl/LimitMax.5 SVar:CountMe:Count$Valid Artifact.YouCtrl +AI:RemoveDeck:Random DeckHints:Type$Enchantment|Creature|Planeswalker Oracle:Each noncreature artifact loses all abilities and becomes an artifact creature with power and toughness each equal to its mana value. If Titania's Song leaves the battlefield, this effect continues until end of turn. diff --git a/forge-gui/res/cardsfolder/t/together_forever.txt b/forge-gui/res/cardsfolder/t/together_forever.txt index 88726a3204c..a7e668e0052 100644 --- a/forge-gui/res/cardsfolder/t/together_forever.txt +++ b/forge-gui/res/cardsfolder/t/together_forever.txt @@ -7,8 +7,8 @@ A:AB$ ChooseCard | Cost$ 1 | ValidTgts$ Creature.HasCounters | TgtPrompt$ Choose SVar:DBDelayedTrigger:DB$ DelayedTrigger | Mode$ ChangesZone | RememberObjects$ Targeted | ValidCard$ Card.IsTriggerRemembered | Origin$ Battlefield | Destination$ Graveyard | ThisTurn$ True | Execute$ TrigReturn | StackDescription$ None | TriggerDescription$ When that creature dies this turn, return that card to its owner's hand. SVar:TrigReturn:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | Defined$ TriggeredCard SVar:NonStackingEffect:True -DeckNeeds:Ability$Counters -DeckHas:Ability$Counters SVar:PlayMain1:ALWAYS SVar:NeedsToPlay:Creature.YouCtrl +DeckHas:Ability$Counters +DeckNeeds:Ability$Counters Oracle:When Together Forever enters, support 2. (Put a +1/+1 counter on each of up to two target creatures.)\n{1}: Choose target creature with a counter on it. When that creature dies this turn, return that card to its owner's hand. diff --git a/forge-gui/res/cardsfolder/t/tolarian_academy.txt b/forge-gui/res/cardsfolder/t/tolarian_academy.txt index 26ed9d4bad5..3e3057a6236 100644 --- a/forge-gui/res/cardsfolder/t/tolarian_academy.txt +++ b/forge-gui/res/cardsfolder/t/tolarian_academy.txt @@ -3,7 +3,7 @@ ManaCost:no cost Types:Legendary Land A:AB$ Mana | Cost$ T | Produced$ U | Amount$ X | SpellDescription$ Add {U} for each artifact you control. SVar:X:Count$Valid Artifact.YouCtrl +SVar:BuffedBy:Artifact AI:RemoveDeck:Random DeckNeeds:Type$Artifact -SVar:BuffedBy:Artifact Oracle:{T}: Add {U} for each artifact you control. diff --git a/forge-gui/res/cardsfolder/t/tolarian_emissary.txt b/forge-gui/res/cardsfolder/t/tolarian_emissary.txt index cdfb271accc..bf144792b3c 100644 --- a/forge-gui/res/cardsfolder/t/tolarian_emissary.txt +++ b/forge-gui/res/cardsfolder/t/tolarian_emissary.txt @@ -6,6 +6,6 @@ K:Flying K:Kicker:1 W T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked | Execute$ TrigKicker | TriggerDescription$ When CARDNAME enters, if it was kicked, destroy target enchantment. SVar:TrigKicker:DB$ Destroy | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment -DeckHints:Color$White SVar:NeedsToPlayKicked:Enchantment.OppCtrl +DeckHints:Color$White Oracle:Kicker {1}{W} (You may pay an additional {1}{W} as you cast this spell.)\nFlying\nWhen Tolarian Emissary enters, if it was kicked, destroy target enchantment. diff --git a/forge-gui/res/cardsfolder/t/tomakul_phoenix.txt b/forge-gui/res/cardsfolder/t/tomakul_phoenix.txt index 11fa9cb0597..5abcb511bee 100644 --- a/forge-gui/res/cardsfolder/t/tomakul_phoenix.txt +++ b/forge-gui/res/cardsfolder/t/tomakul_phoenix.txt @@ -9,7 +9,7 @@ SVar:TrigEffect:DB$ Pump | Defined$ TriggeredNewCardLKICopy | PumpZone$ Graveyar T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Graveyard | Execute$ TrigReturn | TriggerDescription$ At the beginning of combat on your turn, you may pay {X}{R}, where X is CARDNAME's power. If you do, return it from your graveyard to the battlefield. SVar:TrigReturn:AB$ ChangeZone | Cost$ X R | Defined$ Self | Origin$ Graveyard | Destination$ Battlefield SVar:X:Count$CardPower -DeckHas:Ability$Graveyard SVar:SacMe:1 SVar:DiscardMe:1 +DeckHas:Ability$Graveyard Oracle:Flying, haste\nWhen Tomakul Phoenix dies, it perpetually gets +2/+2.\nAt the beginning of combat on your turn, you may pay {X}{R}, where X is Tomakul Phoenix's power. If you do, return it from your graveyard to the battlefield. diff --git a/forge-gui/res/cardsfolder/t/tomb_blade.txt b/forge-gui/res/cardsfolder/t/tomb_blade.txt index cb5da2e5cba..bc0e8f16c8b 100644 --- a/forge-gui/res/cardsfolder/t/tomb_blade.txt +++ b/forge-gui/res/cardsfolder/t/tomb_blade.txt @@ -7,6 +7,6 @@ T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | Execute$ Tri SVar:TrigLoseLife:DB$ LoseLife | Defined$ TriggeredTarget | UnlessCost$ Sac<1/Creature> | UnlessPayer$ TriggeredTarget | LifeAmount$ X SVar:X:TriggeredTarget$Valid Creature.YouCtrl K:Unearth:6 B B -DeckHas:Ability$Sacrifice|Graveyard SVar:HasAttackEffect:TRUE +DeckHas:Ability$Sacrifice|Graveyard Oracle:Flying\nWhenever Tomb Blade deals combat damage to a player, that player loses life equal to the number of creatures they control unless they sacrifice a creature.\nUnearth {6}{B}{B} diff --git a/forge-gui/res/cardsfolder/t/tomb_tyrant.txt b/forge-gui/res/cardsfolder/t/tomb_tyrant.txt index 999ec22aca1..aaff9f218ab 100644 --- a/forge-gui/res/cardsfolder/t/tomb_tyrant.txt +++ b/forge-gui/res/cardsfolder/t/tomb_tyrant.txt @@ -5,6 +5,6 @@ PT:3/3 S:Mode$ Continuous | Affected$ Zombie.Other+YouCtrl | AddPower$ 1 | AddToughness$ 1 | Description$ Other Zombies you control get +1/+1. A:AB$ ChangeZone | Cost$ 2 B T Sac<1/Creature/creature> | ChangeType$ Zombie.YouOwn | Origin$ Graveyard | Destination$ Battlefield | AtRandom$ True | CheckSVar$ X | SVarCompare$ GE3 | PlayerTurn$ True | Hidden$ True | StackDescription$ Return a Zombie creature card at random from your graveyard to the battlefield. | SpellDescription$ Return a Zombie creature card at random from your graveyard to the battlefield. Activate only during your turn and only if there are at least three Zombie creature cards in your graveyard. SVar:X:Count$ValidGraveyard Creature.Zombie+YouCtrl -DeckNeeds:Type$Zombie DeckHas:Ability$Graveyard +DeckNeeds:Type$Zombie Oracle:Other Zombies you control get +1/+1.\n{2}{B}, {T}, Sacrifice a creature: Return a Zombie creature card at random from your graveyard to the battlefield. Activate only during your turn and only if there are at least three Zombie creature cards in your graveyard. diff --git a/forge-gui/res/cardsfolder/t/torment_of_venom.txt b/forge-gui/res/cardsfolder/t/torment_of_venom.txt index 04044a30d52..7cfe0cbeeeb 100644 --- a/forge-gui/res/cardsfolder/t/torment_of_venom.txt +++ b/forge-gui/res/cardsfolder/t/torment_of_venom.txt @@ -8,6 +8,6 @@ SVar:PayDiscard:DB$ LoseLife | LifeAmount$ 3 | Defined$ TargetedController | Unl # TODO: Most likely the ChooseGenericEffect code can be simplified somehow to avoid the necessity of having a dedicated fallback ability SVar:LoseLifeFallback:DB$ LoseLife | Defined$ Player.IsRemembered | LifeAmount$ 3 SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -DeckHas:Ability$Counters SVar:AIPreference:SacCost$Permanent.nonLand | DiscardCost$Card +DeckHas:Ability$Counters Oracle:Put three -1/-1 counters on target creature. Its controller loses 3 life unless they sacrifice another nonland permanent or discards a card. diff --git a/forge-gui/res/cardsfolder/t/trail_of_evidence.txt b/forge-gui/res/cardsfolder/t/trail_of_evidence.txt index d5ffe13b80d..080b8d0a2dc 100644 --- a/forge-gui/res/cardsfolder/t/trail_of_evidence.txt +++ b/forge-gui/res/cardsfolder/t/trail_of_evidence.txt @@ -3,6 +3,6 @@ ManaCost:2 U Types:Enchantment T:Mode$ SpellCast | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | Execute$ DBInvestigate | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast an instant or sorcery spell, investigate. (Create a colorless Clue artifact token with "{2}, Sacrifice this artifact: Draw a card.") SVar:DBInvestigate:DB$ Investigate -DeckNeeds:Type$Instant|Sorcery DeckHas:Ability$Investigate|Token +DeckNeeds:Type$Instant|Sorcery Oracle:Whenever you cast an instant or sorcery spell, investigate. (Create a colorless Clue artifact token with "{2}, Sacrifice this artifact: Draw a card.") diff --git a/forge-gui/res/cardsfolder/t/trenchpost.txt b/forge-gui/res/cardsfolder/t/trenchpost.txt index f0938b2a0ed..910e889e531 100644 --- a/forge-gui/res/cardsfolder/t/trenchpost.txt +++ b/forge-gui/res/cardsfolder/t/trenchpost.txt @@ -4,6 +4,6 @@ Types:Land Locus A:AB$ Mana | Cost$ T | Produced$ C | SpellDescription$ Add {C}. A:AB$ Mill | Cost$ 3 T | NumCards$ X | ValidTgts$ Player | AILogic$ EndOfOppTurn | SpellDescription$ Target player mills a card for each Locus you control. SVar:X:Count$Valid Locus.YouCtrl -DeckNeeds:Type$Locus DeckHas:Ability$Mill +DeckNeeds:Type$Locus Oracle:{T}: Add {C}.\n{3}, {T}: Target player mills a card for each Locus you control. diff --git a/forge-gui/res/cardsfolder/t/tribune_of_rot.txt b/forge-gui/res/cardsfolder/t/tribune_of_rot.txt index bb1db47b01e..27006d8a232 100644 --- a/forge-gui/res/cardsfolder/t/tribune_of_rot.txt +++ b/forge-gui/res/cardsfolder/t/tribune_of_rot.txt @@ -7,6 +7,6 @@ SVar:TrigMill:DB$ Mill | NumCards$ 2 | Defined$ You | RememberMilled$ True | Sub SVar:DBToken:DB$ Token | TokenAmount$ X | TokenScript$ g_1_1_saproling | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Remembered$Valid Creature -DeckHas:Ability$Mill|Token & Type$Saproling SVar:HasAttackEffect:TRUE +DeckHas:Ability$Mill|Token & Type$Saproling Oracle:Whenever Tribune of Rot attacks, mill two cards. For each creature card milled this way, create a 1/1 green Saproling creature token. diff --git a/forge-gui/res/cardsfolder/t/tribute_to_urborg.txt b/forge-gui/res/cardsfolder/t/tribute_to_urborg.txt index e8f06e7a0a4..a0081ec207e 100644 --- a/forge-gui/res/cardsfolder/t/tribute_to_urborg.txt +++ b/forge-gui/res/cardsfolder/t/tribute_to_urborg.txt @@ -5,6 +5,6 @@ K:Kicker:1 U A:SP$ Pump | ValidTgts$ Creature | IsCurse$ True | NumAtt$ -2 | NumDef$ -2 | SubAbility$ KickerPump | SpellDescription$ Target creature gets -2/-2 until end of turn. If this spell was kicked, that creature gets an additional -1/-1 until end of turn for each instant and sorcery card in your graveyard. SVar:KickerPump:DB$ Pump | Condition$ Kicked | Defined$ Targeted | NumAtt$ -X | NumDef$ -X SVar:X:Count$ValidGraveyard Instant.YouOwn,Sorcery.YouOwn -DeckHints:Ability$Graveyard & Color$Blue & Type$Instant|Sorcery SVar:BuffedBy:Instant,Sorcery +DeckHints:Ability$Graveyard & Color$Blue & Type$Instant|Sorcery Oracle:Kicker {1}{U} (You may pay an additional {1}{U} as you cast this spell.)\nTarget creature gets -2/-2 until end of turn. If this spell was kicked, that creature gets an additional -1/-1 until end of turn for each instant and sorcery card in your graveyard. diff --git a/forge-gui/res/cardsfolder/t/triton_waverider.txt b/forge-gui/res/cardsfolder/t/triton_waverider.txt index 18feeca67f0..66e0beaf6f1 100644 --- a/forge-gui/res/cardsfolder/t/triton_waverider.txt +++ b/forge-gui/res/cardsfolder/t/triton_waverider.txt @@ -4,6 +4,6 @@ Types:Creature Merfolk Wizard PT:3/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Enchantment.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ Constellation — Whenever an enchantment you control enters, CARDNAME gains flying until end of turn. SVar:TrigPump:DB$ Pump | Defined$ Self | KW$ Flying -DeckNeeds:Type$Enchantment SVar:BuffedBy:Enchantment +DeckNeeds:Type$Enchantment Oracle:Constellation — Whenever an enchantment you control enters, Triton Waverider gains flying until end of turn. diff --git a/forge-gui/res/cardsfolder/t/triumphant_reckoning.txt b/forge-gui/res/cardsfolder/t/triumphant_reckoning.txt index 1ce6f2869a4..e41f14b5408 100644 --- a/forge-gui/res/cardsfolder/t/triumphant_reckoning.txt +++ b/forge-gui/res/cardsfolder/t/triumphant_reckoning.txt @@ -2,6 +2,6 @@ Name:Triumphant Reckoning ManaCost:6 W W W Types:Sorcery A:SP$ ChangeZoneAll | ChangeType$ Artifact.YouOwn,Enchantment.YouOwn,Planeswalker.YouOwn | Origin$ Graveyard | Destination$ Battlefield | SpellDescription$ Return all artifact, enchantment, and planeswalker cards from your graveyard to the battlefield. -DeckNeeds:Type$Artifact|Enchantment|Planeswalker DeckHas:Ability$Graveyard +DeckNeeds:Type$Artifact|Enchantment|Planeswalker Oracle:Return all artifact, enchantment, and planeswalker cards from your graveyard to the battlefield. diff --git a/forge-gui/res/cardsfolder/t/trove_warden.txt b/forge-gui/res/cardsfolder/t/trove_warden.txt index 8f59f4828df..d793a9cad1f 100644 --- a/forge-gui/res/cardsfolder/t/trove_warden.txt +++ b/forge-gui/res/cardsfolder/t/trove_warden.txt @@ -7,6 +7,6 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.Y SVar:TrigExile:DB$ ChangeZone | ValidTgts$ Permanent.YouOwn+cmcLE3 | TgtPrompt$ Select target permanent card with mana value 3 or less from your graveyard | Origin$ Graveyard | Destination$ Exile T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigReturn | TriggerDescription$ When CARDNAME dies, put each permanent card exiled with it onto the battlefield under the control of that card's owner. SVar:TrigReturn:DB$ ChangeZoneAll | ChangeType$ Permanent.ExiledWithSource | Origin$ Exile | Destination$ Battlefield -DeckHas:Ability$Graveyard SVar:BuffedBy:Land +DeckHas:Ability$Graveyard Oracle:Vigilance\nLandfall — Whenever a land you control enters, exile target permanent card with mana value 3 or less from your graveyard.\nWhen Trove Warden dies, put each permanent card exiled with it onto the battlefield under the control of that card's owner. diff --git a/forge-gui/res/cardsfolder/t/trygon_prime.txt b/forge-gui/res/cardsfolder/t/trygon_prime.txt index 09f307ebc88..531177428e7 100644 --- a/forge-gui/res/cardsfolder/t/trygon_prime.txt +++ b/forge-gui/res/cardsfolder/t/trygon_prime.txt @@ -7,6 +7,6 @@ SVar:TrigCounters:DB$ PutCounter | CounterType$ P1P1 | SubAbility$ DBCounter SVar:DBCounter:DB$ PutCounter | ValidTgts$ Creature.attacking+Other | TgtPrompt$ Select up to one other target attacking creature | TargetMin$ 0 | TargetMax$ 1 | CounterType$ P1P1 | SubAbility$ DBUnblockable SVar:DBUnblockable:DB$ Effect | RememberObjects$ ParentTarget | ExileOnMoved$ Battlefield | StaticAbilities$ Unblockable SVar:Unblockable:Mode$ CantBlockBy | ValidAttacker$ Card.IsRemembered | Description$ This creature can't be blocked this turn. -DeckHas:Ability$Counters SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters Oracle:Subterranean Assault — Whenever Trygon Prime attacks, put a +1/+1 counter on it and a +1/+1 counter on up to one other target attacking creature. That creature can't be blocked this turn. diff --git a/forge-gui/res/cardsfolder/t/trynn_champion_of_freedom.txt b/forge-gui/res/cardsfolder/t/trynn_champion_of_freedom.txt index c91e5177103..60f11dd098e 100644 --- a/forge-gui/res/cardsfolder/t/trynn_champion_of_freedom.txt +++ b/forge-gui/res/cardsfolder/t/trynn_champion_of_freedom.txt @@ -5,7 +5,7 @@ PT:3/3 K:Partner:Silvar, Devourer of the Free:Silvar T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | CheckSVar$ RaidTest | Execute$ TrigToken | TriggerDescription$ At the beginning of your end step, if you attacked this turn, create a 1/1 white Human Soldier creature token. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ w_1_1_human_soldier | TokenOwner$ You -DeckHints:Name$Silvar, Devourer of the Free -DeckHas:Ability$Token SVar:RaidTest:Count$AttackersDeclared +DeckHas:Ability$Token +DeckHints:Name$Silvar, Devourer of the Free Oracle:Partner with Silvar, Devourer of the Free (When this creature enters, target player may put Silvar into their hand from their library, then shuffle.)\nAt the beginning of your end step, if you attacked this turn, create a 1/1 white Human Soldier creature token. diff --git a/forge-gui/res/cardsfolder/t/twilight_drover.txt b/forge-gui/res/cardsfolder/t/twilight_drover.txt index a8558c122e8..f36e67ce78e 100644 --- a/forge-gui/res/cardsfolder/t/twilight_drover.txt +++ b/forge-gui/res/cardsfolder/t/twilight_drover.txt @@ -5,6 +5,6 @@ PT:1/1 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Creature.token | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever a creature token leaves the battlefield, put a +1/+1 counter on CARDNAME. A:AB$ Token | Cost$ 2 W SubCounter<1/P1P1> | TokenAmount$ 2 | TokenScript$ w_1_1_spirit_flying | TokenOwner$ You | SpellDescription$ Create two 1/1 white Spirit creature tokens with flying. SVar:TrigPutCounter:DB$ PutCounter | CounterType$ P1P1 | CounterNum$ 1 -DeckNeeds:Ability$Token DeckHas:Ability$Counters|Token +DeckNeeds:Ability$Token Oracle:Whenever a creature token leaves the battlefield, put a +1/+1 counter on Twilight Drover.\n{2}{W}, Remove a +1/+1 counter from Twilight Drover: Create two 1/1 white Spirit creature tokens with flying. diff --git a/forge-gui/res/cardsfolder/t/twisted_sewer_witch.txt b/forge-gui/res/cardsfolder/t/twisted_sewer_witch.txt index 6e36d221fa7..20344b1e746 100644 --- a/forge-gui/res/cardsfolder/t/twisted_sewer_witch.txt +++ b/forge-gui/res/cardsfolder/t/twisted_sewer_witch.txt @@ -6,6 +6,6 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ b_1_1_rat_noblock | TokenOwner$ You | SubAbility$ DBRepeat SVar:DBRepeat:DB$ RepeatEach | RepeatCards$ Creature.Rat+YouCtrl | Zone$ Battlefield | RepeatSubAbility$ DBToken | ChangeZoneTable$ True SVar:DBToken:DB$ Token | TokenScript$ role_wicked | AttachedTo$ Remembered -DeckNeeds:Type$Rat DeckHas:Ability$Token & Type$Role|Aura|Rat +DeckNeeds:Type$Rat Oracle:When Twisted Sewer-Witch enters, create a 1/1 black Rat creature token with "This creature can't block." Then for each Rat you control, create a Wicked Role token attached to that Rat. (If you control another Role on it, put that one into the graveyard. Enchanted creature gets +1/+1. When this Aura is put into a graveyard, each opponent loses 1 life.) diff --git a/forge-gui/res/cardsfolder/t/tyrant_guard.txt b/forge-gui/res/cardsfolder/t/tyrant_guard.txt index 1a581110a95..bbf102b60d0 100644 --- a/forge-gui/res/cardsfolder/t/tyrant_guard.txt +++ b/forge-gui/res/cardsfolder/t/tyrant_guard.txt @@ -4,7 +4,7 @@ Types:Creature Tyranid PT:3/3 K:Ravenous A:AB$ PumpAll | PrecostDesc$ Shieldwall — | Cost$ Sac<1/CARDNAME> | ValidCards$ Creature.YouCtrl+HasCounters | KW$ Hexproof & Indestructible | SpellDescription$ Creatures you control with counters on them gain hexproof and indestructible until end of turn. +SVar:X:Count$xPaid DeckHas:Ability$Counters|Sacrifice DeckHints:Ability$Counters -SVar:X:Count$xPaid Oracle:Ravenous (This creature enters with X +1/+1 counters on it. If X is 5 or more, draw a card when it enters.)\nShieldwall — Sacrifice Tyrant Guard: Creatures you control with counters on them gain hexproof and indestructible until end of turn. diff --git a/forge-gui/res/cardsfolder/t/tyvar_the_bellicose.txt b/forge-gui/res/cardsfolder/t/tyvar_the_bellicose.txt index 6b87794edfd..8c85e8d8093 100644 --- a/forge-gui/res/cardsfolder/t/tyvar_the_bellicose.txt +++ b/forge-gui/res/cardsfolder/t/tyvar_the_bellicose.txt @@ -8,7 +8,7 @@ S:Mode$ Continuous | Affected$ Creature.YouCtrl | AddTrigger$ ManaTrig | Descrip SVar:ManaTrig:Mode$ AbilityResolves | ValidSource$ Card.Self | ValidSpellAbility$ SpellAbility.ManaAbility | ActivationLimit$ 1 | TriggerZones$ Battlefield | Execute$ TrigPutCounter | AILogic$ ActivateOnce | TriggerDescription$ Whenever a mana ability of this creature resolves, put a number of +1/+1 counters on it equal to the amount of mana this creature produced. This ability triggers only once each turn. SVar:TrigPutCounter:DB$ PutCounter | CounterType$ P1P1 | CounterNum$ X SVar:X:TriggeredSpellAbility$AmountManaProduced -DeckHints:Type$Elf -DeckHas:Ability$Counters SVar:BuffedBy:Creature.hasManaAbility +DeckHas:Ability$Counters +DeckHints:Type$Elf Oracle:Whenever one or more Elves you control attack, they gain deathtouch until end of turn.\nEach creature you control has "Whenever a mana ability of this creature resolves, put a number of +1/+1 counters on it equal to the amount of mana this creature produced. This ability triggers only once each turn." diff --git a/forge-gui/res/cardsfolder/u/underworld_rage_hound.txt b/forge-gui/res/cardsfolder/u/underworld_rage_hound.txt index 86e4fa9ac82..4573da1cfcc 100644 --- a/forge-gui/res/cardsfolder/u/underworld_rage_hound.txt +++ b/forge-gui/res/cardsfolder/u/underworld_rage_hound.txt @@ -5,6 +5,6 @@ PT:3/1 S:Mode$ MustAttack | ValidCreature$ Card.Self | Description$ CARDNAME attacks each combat if able. K:Escape:3 R ExileFromGrave<3/Card.Other/other> K:etbCounter:P1P1:1:ValidCard$ Card.Self+escaped:CARDNAME escapes with a +1/+1 counter on it. -DeckHas:Ability$Counters SVar:AIPreference:ExileFromGraveCost$Card.YouOwn+Other+inZoneGraveyard +DeckHas:Ability$Counters Oracle:Underworld Rage-Hound attacks each combat if able.\nEscape—{3}{R}, Exile three other cards from your graveyard. (You may cast this card from your graveyard for its escape cost.)\nUnderworld Rage-Hound escapes with a +1/+1 counter on it. diff --git a/forge-gui/res/cardsfolder/u/urabrask_the_great_work.txt b/forge-gui/res/cardsfolder/u/urabrask_the_great_work.txt index bc375edc64d..3426e688b2e 100644 --- a/forge-gui/res/cardsfolder/u/urabrask_the_great_work.txt +++ b/forge-gui/res/cardsfolder/u/urabrask_the_great_work.txt @@ -10,10 +10,10 @@ A:AB$ ChangeZone | Cost$ R | CheckSVar$ X | SVarCompare$ GE3 | Origin$ Battlefie SVar:DBReturn:DB$ ChangeZone | Defined$ Remembered | Origin$ Exile | Destination$ Battlefield | Transformed$ True | ForgetOtherRemembered$ True | SubAbility$ DBCleanup | StackDescription$ None SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Count$ThisTurnCast_Instant.YouCtrl,Sorcery.YouCtrl -DeckNeeds:Type$Instant|Sorcery -DeckHints:Type$Phyrexian SVar:BuffedBy:Instant,Sorcery DeckHas:Type$Treasure|Artifact +DeckHints:Type$Phyrexian +DeckNeeds:Type$Instant|Sorcery AlternateMode:DoubleFaced Oracle:First strike\nWhenever you cast an instant or sorcery spell, Urabrask deals 1 damage to target opponent. Add {R}.\n{R}: Exile Urabrask, then return it to the battlefield transformed under its owner's control. Activate only as a sorcery and only if you've cast three or more instant and/or sorcery spells this turn. diff --git a/forge-gui/res/cardsfolder/u/urborg_scavengers.txt b/forge-gui/res/cardsfolder/u/urborg_scavengers.txt index 97c24747fc6..242d6855e36 100644 --- a/forge-gui/res/cardsfolder/u/urborg_scavengers.txt +++ b/forge-gui/res/cardsfolder/u/urborg_scavengers.txt @@ -7,6 +7,6 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigExile | Secondary$ True | SVar:TrigExile:DB$ ChangeZone | Origin$ Graveyard | Destination$ Exile | ChangeType$ Card | ChangeNum$ 1 | SelectPrompt$ Select a card from a graveyard | Mandatory$ True | Hidden$ True | SubAbility$ DBCounter SVar:DBCounter:DB$ PutCounter | Defined$ Self | CounterNum$ 1 | CounterType$ P1P1 S:Mode$ Continuous | EffectZone$ Battlefield | Affected$ Card.Self | SharedKeywordsZone$ Exile | SharedRestrictions$ Card.ExiledWithSource | AddKeyword$ Flying & First Strike & Double Strike & Deathtouch & Haste & Hexproof & Indestructible & Lifelink & Menace & Reach & Trample & Vigilance | Description$ CARDNAME has flying as long as a card exiled with it has flying. The same is true for first strike, double strike, deathtouch, haste, hexproof, indestructible, lifelink, menace, reach, trample, and vigilance. -DeckHas:Ability$Graveyard|Counters SVar:HasAttackEffect:TRUE +DeckHas:Ability$Graveyard|Counters Oracle:Whenever Urborg Scavengers enters or attacks, exile target card from a graveyard. Put a +1/+1 counter on Urborg Scavengers.\nUrborg Scavengers has flying as long as a card exiled with it has flying. The same is true for first strike, double strike, deathtouch, haste, hexproof, indestructible, lifelink, menace, reach, trample, and vigilance. diff --git a/forge-gui/res/cardsfolder/u/urgent_necropsy.txt b/forge-gui/res/cardsfolder/u/urgent_necropsy.txt index e4b39d231c2..5a0266a0e81 100644 --- a/forge-gui/res/cardsfolder/u/urgent_necropsy.txt +++ b/forge-gui/res/cardsfolder/u/urgent_necropsy.txt @@ -5,6 +5,6 @@ A:SP$ Pump | Cost$ CollectEvidence 2 B G | ValidTgts$ Artifact | TargetMin$ 0 SVar:DBCreature:DB$ Pump | ValidTgts$ Creature | TargetMin$ 0 | TargetMax$ 1 | TgtPrompt$ Select up to one target creature | SubAbility$ DBEnchantment SVar:DBEnchantment:DB$ Pump | SubAbility$ DBDestroyAll | ValidTgts$ Enchantment | TargetMin$ 0 | TargetMax$ 1 | TgtPrompt$ Select up to one target Enchantment SVar:DBDestroyAll:DB$ Destroy | Defined$ Targeted -DeckHints:Ability$Graveyard|Mill|Discard|Dredge SVar:X:AllTargeted$SumCMC +DeckHints:Ability$Graveyard|Mill|Discard|Dredge Oracle:As an additional cost to cast this spell, collect evidence X, where X is the total mana value of the permanents this spell targets.\nDestroy up to one target artifact, up to one target creature, up to one target enchantment, and up to one target planeswalker. diff --git a/forge-gui/res/cardsfolder/u/urtet_remnant_of_memnarch.txt b/forge-gui/res/cardsfolder/u/urtet_remnant_of_memnarch.txt index 77ee7bdf7aa..752521f7301 100644 --- a/forge-gui/res/cardsfolder/u/urtet_remnant_of_memnarch.txt +++ b/forge-gui/res/cardsfolder/u/urtet_remnant_of_memnarch.txt @@ -7,7 +7,7 @@ SVar:TrigToken:DB$ Token | TokenScript$ c_1_1_a_myr T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ UntapMyr | TriggerDescription$ At the beginning of combat on your turn, untap each Myr you control. SVar:UntapMyr:DB$ UntapAll | ValidCards$ Myr.YouCtrl A:AB$ PutCounterAll | Cost$ W U B R G T | ValidCards$ Myr.YouCtrl | CounterType$ P1P1 | CounterNum$ 3 | PlayerTurn$ True | SpellDescription$ Put three +1/+1 counters on each Myr you control. Activate only during your turn. +SVar:BuffedBy:Myr DeckHas:Ability$Token|Counters DeckHints:Type$Myr -SVar:BuffedBy:Myr Oracle:Whenever you cast a Myr spell, create a 1/1 colorless Myr artifact creature token.\nAt the beginning of combat on your turn, untap each Myr you control. \n{W}{U}{B}{R}{G}, {T}: put three +1/+1 counters on each Myr you control. Activate only during your turn. diff --git a/forge-gui/res/cardsfolder/v/vampire_socialite.txt b/forge-gui/res/cardsfolder/v/vampire_socialite.txt index 4e7a381454a..07e9960b0fd 100644 --- a/forge-gui/res/cardsfolder/v/vampire_socialite.txt +++ b/forge-gui/res/cardsfolder/v/vampire_socialite.txt @@ -8,6 +8,6 @@ SVar:TrigPutCounter:DB$ PutCounterAll | ValidCards$ Vampire.YouCtrl+StrictlyOthe K:ETBReplacement:Other:AddExtraCounter:Mandatory:Battlefield:Vampire.YouCtrl+Other SVar:AddExtraCounter:DB$ PutCounter | ETB$ True | Defined$ ReplacedCard | CounterType$ P1P1 | CounterNum$ 1 | ConditionCheckSVar$ X | ConditionSVarCompare$ GE1 | SpellDescription$ As long as an opponent lost life this turn, each other Vampire you control enters with an additional +1/+1 counter on it. SVar:X:Count$LifeOppsLostThisTurn -DeckNeeds:Type$Vampire DeckHas:Ability$Counters +DeckNeeds:Type$Vampire Oracle:Menace (This creature can't be blocked except by two or more creatures.)\nWhen Vampire Socialite enters, if an opponent lost life this turn, put a +1/+1 counter on each other Vampire you control.\nAs long as an opponent lost life this turn, each other Vampire you control enters with an additional +1/+1 counter on it. diff --git a/forge-gui/res/cardsfolder/v/vampires_vengeance.txt b/forge-gui/res/cardsfolder/v/vampires_vengeance.txt index bcf131cda08..a02879a8e38 100644 --- a/forge-gui/res/cardsfolder/v/vampires_vengeance.txt +++ b/forge-gui/res/cardsfolder/v/vampires_vengeance.txt @@ -3,6 +3,6 @@ ManaCost:2 R Types:Instant A:SP$ DamageAll | NumDmg$ 2 | ValidCards$ Creature.nonVampire | ValidDescription$ each non-Vampire creature. | SubAbility$ DBToken | SpellDescription$ CARDNAME deals 2 damage to each non-Vampire creature. 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.") -DeckNeeds:Type$Vampire DeckHas:Ability$Token|Sacrifice & Type$Blood +DeckNeeds:Type$Vampire Oracle:Vampires' Vengeance deals 2 damage to each non-Vampire creature. 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/v/vantress_paladin.txt b/forge-gui/res/cardsfolder/v/vantress_paladin.txt index 59566827a98..bcf4af3a0bf 100644 --- a/forge-gui/res/cardsfolder/v/vantress_paladin.txt +++ b/forge-gui/res/cardsfolder/v/vantress_paladin.txt @@ -4,6 +4,6 @@ Types:Creature Human Knight PT:2/2 K:Flying K:etbCounter:P1P1:1:Adamant$ Blue:Adamant — If at least three blue mana was spent to cast this spell, CARDNAME enters with a +1/+1 counter on it. -DeckHas:Ability$Counters SVar:AIManaPref:U +DeckHas:Ability$Counters Oracle:Flying\nAdamant — If at least three blue mana was spent to cast this spell, Vantress Paladin enters with a +1/+1 counter on it. diff --git a/forge-gui/res/cardsfolder/v/vault_101_birthday_party.txt b/forge-gui/res/cardsfolder/v/vault_101_birthday_party.txt index b196ecda9aa..1d17dc4cc7b 100644 --- a/forge-gui/res/cardsfolder/v/vault_101_birthday_party.txt +++ b/forge-gui/res/cardsfolder/v/vault_101_birthday_party.txt @@ -6,6 +6,6 @@ SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_food_sac,w_1_1_human_ SVar:DBChangeZone:DB$ ChangeZone | Origin$ Hand,Graveyard | Destination$ Battlefield | ChangeType$ Aura,Equipment | RememberChanged$ True | ChangeNum$ 1 | SubAbility$ DBAttach | SpellDescription$ You may put an Aura or Equipment card from your hand or graveyard onto the battlefield. If an Equipment is put onto the battlefield this way, you may attach it to a creature you control. SVar:DBAttach:DB$ Attach | Optional$ True | ChoiceTitle$ You may choose a creature you control to attach that equipment to | ConditionDefined$ Remembered | ConditionPresent$ Equipment | Object$ Remembered | Choices$ Creature.YouCtrl | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -DeckNeeds:Type$Aura|Equipment DeckHas:Ability$Token & Type$Soldier|Food +DeckNeeds:Type$Aura|Equipment Oracle:(As this Saga enters and after your draw step, add a lore counter. Sacrifice after III.)\nI — Create a 1/1 white Human Soldier creature token and a Food token. (A Food token is an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.")\nII, III — You may put an Aura or Equipment card from your hand or graveyard onto the battlefield. If an Equipment is put onto the battlefield this way, you may attach it to a creature you control. diff --git a/forge-gui/res/cardsfolder/v/vazi_keen_negotiator.txt b/forge-gui/res/cardsfolder/v/vazi_keen_negotiator.txt index f0bffab0ee2..3cd25d6da9a 100644 --- a/forge-gui/res/cardsfolder/v/vazi_keen_negotiator.txt +++ b/forge-gui/res/cardsfolder/v/vazi_keen_negotiator.txt @@ -9,6 +9,6 @@ T:Mode$ SpellAbilityCast | ValidCard$ Card | ValidActivatingPlayer$ Opponent | T SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature | CounterType$ P1P1 | SubAbility$ DBDraw SVar:DBDraw:DB$ Draw AI:RemoveDeck:Random -DeckNeeds:Ability$Token & Type$Treasure DeckHas:Ability$Counters +DeckNeeds:Ability$Token & Type$Treasure Oracle:Haste\n{T}: Target opponent creates X Treasure tokens, where X is the number of Treasure tokens you created this turn.\nWhenever an opponent casts a spell or activates an ability, if mana from a Treasure was spent to cast or activate it, put a +1/+1 counter on target creature, then draw a card. diff --git a/forge-gui/res/cardsfolder/v/verduran_emissary.txt b/forge-gui/res/cardsfolder/v/verduran_emissary.txt index febf55f0722..59b16d4b1a0 100644 --- a/forge-gui/res/cardsfolder/v/verduran_emissary.txt +++ b/forge-gui/res/cardsfolder/v/verduran_emissary.txt @@ -5,6 +5,6 @@ PT:2/3 K:Kicker:1 R T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked | Execute$ TrigKicker | TriggerDescription$ When CARDNAME enters, if it was kicked, destroy target artifact. It can't be regenerated. SVar:TrigKicker:DB$ Destroy | ValidTgts$ Artifact | NoRegen$ True | TgtPrompt$ Select target artifact -DeckHints:Color$Red SVar:NeedsToPlayKicked:Artifact.OppCtrl +DeckHints:Color$Red Oracle:Kicker {1}{R} (You may pay an additional {1}{R} as you cast this spell.)\nWhen Verduran Emissary enters, if it was kicked, destroy target artifact. It can't be regenerated. diff --git a/forge-gui/res/cardsfolder/v/veteran_adventurer.txt b/forge-gui/res/cardsfolder/v/veteran_adventurer.txt index 9478a172f6f..1473e5f9a41 100644 --- a/forge-gui/res/cardsfolder/v/veteran_adventurer.txt +++ b/forge-gui/res/cardsfolder/v/veteran_adventurer.txt @@ -5,6 +5,6 @@ PT:5/5 K:Vigilance S:Mode$ Continuous | EffectZone$ All | Affected$ Card.Self | CharacteristicDefining$ True | AddType$ Cleric & Rogue & Warrior & Wizard | Description$ CARDNAME is also a Cleric, Rogue, Warrior, and Wizard. S:Mode$ ReduceCost | ValidCard$ Card.Self | Type$ Spell | Amount$ X | EffectZone$ All | Description$ This spell costs {1} less to cast for each creature in your party. -DeckHints:Ability$Party & Type$Cleric|Rogue|Warrior|Wizard SVar:X:Count$Party +DeckHints:Ability$Party & Type$Cleric|Rogue|Warrior|Wizard Oracle:Veteran Adventurer is also a Cleric, Rogue, Warrior, and Wizard.\nThis spell costs {1} less to cast for each creature in your party.\nVigilance diff --git a/forge-gui/res/cardsfolder/v/vigean_graftmage.txt b/forge-gui/res/cardsfolder/v/vigean_graftmage.txt index d86a2560fdc..cdf47752710 100644 --- a/forge-gui/res/cardsfolder/v/vigean_graftmage.txt +++ b/forge-gui/res/cardsfolder/v/vigean_graftmage.txt @@ -4,7 +4,7 @@ Types:Creature Vedalken Wizard Mutant PT:0/0 K:Graft:2 A:AB$ Untap | Cost$ 1 U | ValidTgts$ Creature.counters_GE1_P1P1 | TgtPrompt$ Select target creature with a +1/+1 counter | SpellDescription$ Untap target creature with a +1/+1 counter on it. -DeckNeeds:Ability$Counters -DeckHas:Ability$Counters SVar:AIGraftPreference:DontMoveCounterIfLethal +DeckHas:Ability$Counters +DeckNeeds:Ability$Counters Oracle:Graft 2 (This creature enters with two +1/+1 counters on it. Whenever another creature enters, you may move a +1/+1 counter from this creature onto it.)\n{1}{U}: Untap target creature with a +1/+1 counter on it. diff --git a/forge-gui/res/cardsfolder/v/vigean_hydropon.txt b/forge-gui/res/cardsfolder/v/vigean_hydropon.txt index 429641db849..7087f4437d4 100644 --- a/forge-gui/res/cardsfolder/v/vigean_hydropon.txt +++ b/forge-gui/res/cardsfolder/v/vigean_hydropon.txt @@ -4,6 +4,6 @@ Types:Creature Plant Mutant PT:0/0 K:Graft:5 K:CARDNAME can't attack or block. -DeckNeeds:Ability$Counters DeckHas:Ability$Counters +DeckNeeds:Ability$Counters Oracle:Graft 5 (This creature enters with five +1/+1 counters on it. Whenever another creature enters, you may move a +1/+1 counter from this creature onto it.)\nVigean Hydropon can't attack or block. diff --git a/forge-gui/res/cardsfolder/v/viral_spawning.txt b/forge-gui/res/cardsfolder/v/viral_spawning.txt index 673f079590c..a63004390e2 100644 --- a/forge-gui/res/cardsfolder/v/viral_spawning.txt +++ b/forge-gui/res/cardsfolder/v/viral_spawning.txt @@ -3,7 +3,7 @@ ManaCost:2 G Types:Sorcery A:SP$ Token | TokenAmount$ 1 | TokenScript$ g_3_3_phyrexian_beast_toxic | TokenOwner$ You | SpellDescription$ Create a 3/3 green Phyrexian Beast creature token with toxic 1. (Players dealt combat damage by this creature also get a poison counter.) S:Mode$ Continuous | Affected$ Card.Self | CheckSVar$ X | SVarCompare$ GE3 | EffectZone$ Graveyard | AffectedZone$ Graveyard | AddKeyword$ Flashback:2 G | Description$ Corrupted — As long as an opponent has three or more poison counters and CARDNAME is in your graveyard, it has flashback {2}{G}. (You may cast this card from your graveyard for its flashback cost. Then exile it.) +SVar:X:PlayerCountOpponents$HighestCounters.Poison DeckHas:Ability$Graveyard|Token|Counters & Type$Phyrexian|Beast & Keyword$Toxic DeckHints:Ability$Proliferate & Keyword$Infect|Toxic -SVar:X:PlayerCountOpponents$HighestCounters.Poison Oracle:Create a 3/3 green Phyrexian Beast creature token with toxic 1. (Players dealt combat damage by this creature also get a poison counter.)\nCorrupted — As long as an opponent has three or more poison counters and Viral Spawning is in your graveyard, it has flashback {2}{G}. (You may cast this card from your graveyard for its flashback cost. Then exile it.) diff --git a/forge-gui/res/cardsfolder/v/visions_of_dread.txt b/forge-gui/res/cardsfolder/v/visions_of_dread.txt index d241a8390ae..afd29881f7d 100644 --- a/forge-gui/res/cardsfolder/v/visions_of_dread.txt +++ b/forge-gui/res/cardsfolder/v/visions_of_dread.txt @@ -5,7 +5,7 @@ A:SP$ ChooseCard | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | Cho SVar:DBChangeZone:DB$ ChangeZone | Defined$ ChosenCard | Origin$ Graveyard | GainControl$ True | Destination$ Battlefield | StackDescription$ None K:Flashback:8 B B:ReduceCost$ X:This spell costs {X} less to cast this way, where X is the greatest mana value of a commander you own on the battlefield or in the command zone. SVar:X:Count$ValidBattlefield,Command Card.IsCommander+YouOwn$GreatestCMC -DeckHas:Ability$Graveyard SVar:NeedsToPlayVar:Z GE1 SVar:Z:Count$ValidGraveyard Creature.OppOwn +DeckHas:Ability$Graveyard Oracle:Target opponent puts a creature card of their choice from their graveyard onto the battlefield under your control.\nFlashback {8}{B}{B}. This spell costs {X} less to cast this way, where X is the greatest mana value of a commander you own on the battlefield or in the command zone. (You may cast this card from your graveyard for its flashback cost. Then exile it.) diff --git a/forge-gui/res/cardsfolder/v/vito_thorn_of_the_dusk_rose.txt b/forge-gui/res/cardsfolder/v/vito_thorn_of_the_dusk_rose.txt index 8547e2e0bbb..fbff300f617 100644 --- a/forge-gui/res/cardsfolder/v/vito_thorn_of_the_dusk_rose.txt +++ b/forge-gui/res/cardsfolder/v/vito_thorn_of_the_dusk_rose.txt @@ -6,6 +6,6 @@ T:Mode$ LifeGained | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ Tri SVar:TrigDrain:DB$ LoseLife | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | LifeAmount$ X SVar:X:TriggerCount$LifeAmount A:AB$ PumpAll | Cost$ 3 B B | ValidCards$ Creature.YouCtrl | KW$ Lifelink | SpellDescription$ Creatures you control gain lifelink until end of turn. -DeckHas:Ability$LifeGain SVar:PlayMain1:TRUE +DeckHas:Ability$LifeGain Oracle:Whenever you gain life, target opponent loses that much life.\n{3}{B}{B}: Creatures you control gain lifelink until end of turn. diff --git a/forge-gui/res/cardsfolder/v/vodalian_hexcatcher.txt b/forge-gui/res/cardsfolder/v/vodalian_hexcatcher.txt index f5b0bc21025..cc0e6e8cd3e 100644 --- a/forge-gui/res/cardsfolder/v/vodalian_hexcatcher.txt +++ b/forge-gui/res/cardsfolder/v/vodalian_hexcatcher.txt @@ -5,7 +5,7 @@ PT:1/1 K:Flash S:Mode$ Continuous | Affected$ Card.Merfolk+Other+YouCtrl | AddPower$ 1 | AddToughness$ 1 | Description$ Other Merfolk you control get +1/+1. A:AB$ Counter | Cost$ Sac<1/Merfolk> | TargetType$ Spell | UnlessCost$ 1 | ValidTgts$ Card.nonCreature | SpellDescription$ Counter target noncreature spell unless its controller pays {1}. +SVar:BuffedBy:Merfolk DeckHas:Ability$Sacrifice DeckHints:Type$Merfolk -SVar:BuffedBy:Merfolk Oracle:Flash\nOther Merfolk you control get +1/+1.\nSacrifice a Merfolk: Counter target noncreature spell unless its controller pays {1}. diff --git a/forge-gui/res/cardsfolder/v/vohar_vodalian_desecrator.txt b/forge-gui/res/cardsfolder/v/vohar_vodalian_desecrator.txt index 89531842f8f..09d959e322d 100644 --- a/forge-gui/res/cardsfolder/v/vohar_vodalian_desecrator.txt +++ b/forge-gui/res/cardsfolder/v/vohar_vodalian_desecrator.txt @@ -11,6 +11,6 @@ A:AB$ Effect | Cost$ 2 Sac<1/CARDNAME> | ValidTgts$ Instant.YouOwn,Sorcery.YouOw SVar:MayPlay:Mode$ Continuous | MayPlay$ True | EffectZone$ Command | Affected$ Card.IsRemembered | AffectedZone$ Graveyard | Description$ You may cast target instant or sorcery card from your graveyard this turn. (You still pay the spell's costs. Timing rules for the spell still apply.) SVar:ReplaceGraveyard:Event$ Moved | ValidCard$ Card.IsRemembered | Destination$ Graveyard | ReplaceWith$ MoveExile | Description$ If that spell would be put into your graveyard, exile it instead. SVar:MoveExile:DB$ ChangeZone | Defined$ ReplacedCard | Origin$ All | Destination$ Exile -DeckNeeds:Type$Instant|Sorcery DeckHas:Ability$Discard|LifeGain +DeckNeeds:Type$Instant|Sorcery Oracle:{T}: Draw a card, then discard a card. If you discarded an instant or sorcery card this way, each opponent loses 1 life and you gain 1 life.\n{2}, Sacrifice Vohar, Vodalian Desecrator: You may cast target instant or sorcery card from your graveyard this turn. If that spell would be put into your graveyard, exile it instead. Activate only as a sorcery. diff --git a/forge-gui/res/cardsfolder/v/voice_of_the_vermin.txt b/forge-gui/res/cardsfolder/v/voice_of_the_vermin.txt index 2e2eb6a64b8..68f8bc52c84 100644 --- a/forge-gui/res/cardsfolder/v/voice_of_the_vermin.txt +++ b/forge-gui/res/cardsfolder/v/voice_of_the_vermin.txt @@ -5,6 +5,6 @@ PT:2/2 K:etbCounter:SHIELD:1 T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigAnimate | TriggerDescription$ Whenever CARDNAME attacks, target creature you control has base power and toughness 4/4 until end of turn. SVar:TrigAnimate:DB$ Animate | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | Power$ 4 | Toughness$ 4 -DeckHas:Ability$Counters SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters Oracle:Voice of the Vermin enters with a shield counter on it. (If it would be dealt damage or destroyed, remove a shield counter from it instead.)\nWhenever Voice of the Vermin attacks, target creature you control has base power and toughness 4/4 until end of turn. diff --git a/forge-gui/res/cardsfolder/v/voldaren_estate.txt b/forge-gui/res/cardsfolder/v/voldaren_estate.txt index 8f54cfd23ed..2175beb4b23 100644 --- a/forge-gui/res/cardsfolder/v/voldaren_estate.txt +++ b/forge-gui/res/cardsfolder/v/voldaren_estate.txt @@ -5,6 +5,6 @@ A:AB$ Mana | Cost$ T | Produced$ C | SpellDescription$ Add {C}. A:AB$ Mana | Cost$ T PayLife<1> | Produced$ Any | Amount$ 1 | RestrictValid$ Spell.Vampire | SpellDescription$ Add one mana of any color. Spend this mana only to cast a Vampire spell. A:AB$ Token | Cost$ 5 T | TokenScript$ c_a_blood_draw | ReduceCost$ X | SpellDescription$ Create a Blood token. This ability costs {1} less to activate for each Vampire you control. (It's an artifact with "{1}, {T}, Discard a card, Sacrifice this artifact: Draw a card.") SVar:X:Count$TypeYouCtrl.Vampire -DeckNeeds:Type$Vampire DeckHas:Ability$Token|Sacrifice & Type$Blood +DeckNeeds:Type$Vampire Oracle:{T}: Add {C}.\n{T}, Pay 1 life: Add one mana of any color. Spend this mana only to cast a Vampire spell.\n{5}, {T}: Create a Blood token. This ability costs {1} less to activate for each Vampire you control. (It's an artifact with "{1}, {T}, Discard a card, Sacrifice this artifact: Draw a card.") diff --git a/forge-gui/res/cardsfolder/v/vulpine_harvester.txt b/forge-gui/res/cardsfolder/v/vulpine_harvester.txt index c0d5ce71275..59b77e89ad2 100644 --- a/forge-gui/res/cardsfolder/v/vulpine_harvester.txt +++ b/forge-gui/res/cardsfolder/v/vulpine_harvester.txt @@ -4,8 +4,8 @@ Types:Creature Phyrexian Fox PT:3/3 T:Mode$ AttackersDeclared | ValidAttackers$ Phyrexian.YouCtrl | Execute$ TrigReturn | TriggerZones$ Battlefield | TriggerDescription$ Whenever one or more Phyrexians you control attack, return target artifact card from your graveyard to the battlefield if its mana value is less than or equal to their total power. SVar:TrigReturn:DB$ ChangeZone | ValidTgts$ Artifact.YouCtrl | ConditionDefined$ Targeted | ConditionPresent$ Card.cmcLEX | TgtPrompt$ Select target artifact in your graveyard | Origin$ Graveyard | Destination$ Battlefield -DeckNeeds:Type$Phyrexian -DeckHints:Type$Artifact -DeckHas:Ability$Graveyard SVar:X:Count$SumPower_Phyrexian.YouCtrl+attacking +DeckHas:Ability$Graveyard +DeckHints:Type$Artifact +DeckNeeds:Type$Phyrexian Oracle:Whenever one or more Phyrexians you control attack, return target artifact card from your graveyard to the battlefield if its mana value is less than or equal to their total power. From 31a1f05d51c03f1f9af58706b7c96cce39d8705f Mon Sep 17 00:00:00 2001 From: Renato Filipe Vidal Santos <45150760+dracontes@users.noreply.github.com> Date: Sun, 13 Oct 2024 12:14:44 +0100 Subject: [PATCH 29/91] Edit pile cleanup: Line reordering, second pass: part 10, folders 'w' to 'z' --- forge-gui/res/cardsfolder/w/war_falcon.txt | 2 +- forge-gui/res/cardsfolder/w/warchanter_skald.txt | 2 +- forge-gui/res/cardsfolder/w/warping_wail.txt | 2 +- forge-gui/res/cardsfolder/w/wasteland_raider.txt | 2 +- forge-gui/res/cardsfolder/w/we_ride_at_dawn.txt | 2 +- forge-gui/res/cardsfolder/w/wedding_security.txt | 4 ++-- forge-gui/res/cardsfolder/w/welcome_to_sweettooth.txt | 5 ++--- forge-gui/res/cardsfolder/w/whispering_snitch.txt | 2 +- forge-gui/res/cardsfolder/w/widespread_thieving.txt | 2 +- forge-gui/res/cardsfolder/w/wilhelt_the_rotcleaver.txt | 2 +- forge-gui/res/cardsfolder/w/winged_hive_tyrant.txt | 2 +- forge-gui/res/cardsfolder/w/wingshield_agent.txt | 2 +- forge-gui/res/cardsfolder/w/witherbloom_apprentice.txt | 2 +- forge-gui/res/cardsfolder/w/wizards_rockets.txt | 2 +- forge-gui/res/cardsfolder/w/wormwood_treefolk.txt | 2 +- forge-gui/res/cardsfolder/x/xanders_pact.txt | 2 +- forge-gui/res/cardsfolder/x/xolatoyac_the_smiling_flood.txt | 2 +- forge-gui/res/cardsfolder/y/yawgmoth_demon.txt | 2 +- forge-gui/res/cardsfolder/y/yotian_courier.txt | 4 ++-- forge-gui/res/cardsfolder/y/young_necromancer.txt | 4 ++-- forge-gui/res/cardsfolder/z/zaffai_thunder_conductor.txt | 2 +- forge-gui/res/cardsfolder/z/zur_eternal_schemer.txt | 2 +- 22 files changed, 26 insertions(+), 27 deletions(-) diff --git a/forge-gui/res/cardsfolder/w/war_falcon.txt b/forge-gui/res/cardsfolder/w/war_falcon.txt index 66d7920f48c..af06f2968c4 100644 --- a/forge-gui/res/cardsfolder/w/war_falcon.txt +++ b/forge-gui/res/cardsfolder/w/war_falcon.txt @@ -4,6 +4,6 @@ Types:Creature Bird PT:2/1 K:Flying S:Mode$ Continuous | Affected$ Card.Self | AddHiddenKeyword$ CARDNAME can't attack. | IsPresent$ Knight.YouCtrl,Soldier.YouCtrl | PresentCompare$ EQ0 | Description$ CARDNAME can't attack unless you control a Knight or Soldier. -DeckNeeds:Type$Knight|Soldier SVar:BuffedBy:Knight,Soldier +DeckNeeds:Type$Knight|Soldier Oracle:Flying\nWar Falcon can't attack unless you control a Knight or a Soldier. diff --git a/forge-gui/res/cardsfolder/w/warchanter_skald.txt b/forge-gui/res/cardsfolder/w/warchanter_skald.txt index adc3337763c..a232e7072f3 100644 --- a/forge-gui/res/cardsfolder/w/warchanter_skald.txt +++ b/forge-gui/res/cardsfolder/w/warchanter_skald.txt @@ -6,6 +6,6 @@ T:Mode$ Taps | ValidCard$ Card.Self | IsPresent$ Card.Self+enchanted,Card.Self+e SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ r_2_1_dwarf_berserker | TokenOwner$ You SVar:EnchantMe:Once SVar:EquipMe:Once -DeckNeeds:Type$Enchantment|Equipment DeckHas:Ability$Token +DeckNeeds:Type$Enchantment|Equipment Oracle:Whenever Warchanter Skald becomes tapped, if it's enchanted or equipped, create a 2/1 red Dwarf Berserker creature token. diff --git a/forge-gui/res/cardsfolder/w/warping_wail.txt b/forge-gui/res/cardsfolder/w/warping_wail.txt index 905d3036114..8dbd56ec5f8 100644 --- a/forge-gui/res/cardsfolder/w/warping_wail.txt +++ b/forge-gui/res/cardsfolder/w/warping_wail.txt @@ -5,6 +5,6 @@ A:SP$ Charm | Choices$ DBExile,DBCounter,DBToken SVar:DBExile:DB$ ChangeZone | ValidTgts$ Creature.powerLE1,Creature.toughnessLE1 | TgtPrompt$ Choose target creature with power or toughness 1 or less | Origin$ Battlefield | Destination$ Exile | SpellDescription$ Exile target creature with power or toughness 1 or less. SVar:DBCounter:DB$ Counter | TargetType$ Spell | ValidTgts$ Card.Sorcery | TgtPrompt$ Counter target sorcery spell | SpellDescription$ Counter target sorcery spell. SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_1_1_eldrazi_scion_sac | TokenOwner$ You | SpellDescription$ Create a 1/1 colorless Eldrazi Scion creature token. It has "Sacrifice this creature: Add {C}." -DeckNeeds:Ability$Mana.Colorless DeckHas:Ability$Token +DeckNeeds:Ability$Mana.Colorless Oracle:({C} represents colorless mana.)\nChoose one —\n• Exile target creature with power or toughness 1 or less.\n• Counter target sorcery spell.\n• Create a 1/1 colorless Eldrazi Scion creature token. It has "Sacrifice this creature: Add {C}." diff --git a/forge-gui/res/cardsfolder/w/wasteland_raider.txt b/forge-gui/res/cardsfolder/w/wasteland_raider.txt index a24e2faefc5..796de36697d 100644 --- a/forge-gui/res/cardsfolder/w/wasteland_raider.txt +++ b/forge-gui/res/cardsfolder/w/wasteland_raider.txt @@ -5,6 +5,6 @@ PT:4/3 K:Squad:2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigSac | TriggerDescription$ When CARDNAME enters, each player sacrifices a creature. SVar:TrigSac:DB$ Sacrifice | Defined$ Player | SacValid$ Creature -DeckHas:Ability$Token SVar:NeedsToPlay:Creature.YouDontCtrl +DeckHas:Ability$Token Oracle:Squad {2} (As an additional cost to cast this spell, you may pay {2} any number of times. When this creature enters, create that many tokens that are copies of it.)\nWhen Wasteland Raider enters, each player sacrifices a creature. diff --git a/forge-gui/res/cardsfolder/w/we_ride_at_dawn.txt b/forge-gui/res/cardsfolder/w/we_ride_at_dawn.txt index ae155a2ef37..028e7a46f25 100644 --- a/forge-gui/res/cardsfolder/w/we_ride_at_dawn.txt +++ b/forge-gui/res/cardsfolder/w/we_ride_at_dawn.txt @@ -4,6 +4,6 @@ Types:Enchantment S:Mode$ Continuous | Affected$ Card.Creature+Legendary+YouCtrl+wasCast | AffectedZone$ Stack | AddKeyword$ Convoke | Description$ Legendary creature spells you cast have convoke. (Your creatures can help cast those spells. Each creature you tap while casting a legendary creature spell pays for {1} or one mana of that creature's color.) T:Mode$ Attacks | ValidCard$ Card.IsCommander+YouOwn | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Whenever your commander attacks, create a 1/1 red Mercenary creature token with "{T}: Target creature you control gets +1/+0 until end of turn. Activate only as a sorcery." SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ r_1_1_mercenary_tappump | TokenOwner$ You -DeckNeeds:Type$Legendary & Type$Creature DeckHas:Ability$Token & Type$Mercenary & Color$Red +DeckNeeds:Type$Legendary & Type$Creature Oracle:Legendary creature spells you cast have convoke. (Your creatures can help cast those spells. Each creature you tap while casting a legendary creature spell pays for {1} or one mana of that creature's color.)\nWhenever your commander attacks, create a 1/1 red Mercenary creature token with "{T}: Target creature you control gets +1/+0 until end of turn. Activate only as a sorcery." diff --git a/forge-gui/res/cardsfolder/w/wedding_security.txt b/forge-gui/res/cardsfolder/w/wedding_security.txt index 63172fc67f7..d7d6433d815 100644 --- a/forge-gui/res/cardsfolder/w/wedding_security.txt +++ b/forge-gui/res/cardsfolder/w/wedding_security.txt @@ -5,7 +5,7 @@ PT:4/4 T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPutCounter | IsPresent$ Blood.token+YouCtrl | TriggerDescription$ Whenever CARDNAME attacks, you may sacrifice a Blood token. If you do, put a +1/+1 counter on CARDNAME and draw a card. SVar:TrigPutCounter:AB$ PutCounter | Cost$ Sac<1/Blood.token/Blood token> | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBDraw SVar:DBDraw:DB$ Draw | NumCards$ 1 -DeckNeeds:Type$Blood -DeckHas:Ability$Counters|Sacrifice SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters|Sacrifice +DeckNeeds:Type$Blood Oracle:Whenever Wedding Security attacks, you may sacrifice a Blood token. If you do, put a +1/+1 counter on Wedding Security and draw a card. diff --git a/forge-gui/res/cardsfolder/w/welcome_to_sweettooth.txt b/forge-gui/res/cardsfolder/w/welcome_to_sweettooth.txt index 1eec90706f3..c774cd54c42 100644 --- a/forge-gui/res/cardsfolder/w/welcome_to_sweettooth.txt +++ b/forge-gui/res/cardsfolder/w/welcome_to_sweettooth.txt @@ -5,8 +5,7 @@ K:Chapter:3:DBToken,DBFood,DBPutCounter SVar:DBToken:DB$ Token | TokenScript$ w_1_1_human | TokenAmount$ 1 | TokenOwner$ You | SpellDescription$ Create a 1/1 white Human creature token. SVar:DBFood:DB$ Token | TokenScript$ c_a_food_sac | SpellDescription$ Create a Food token. SVar:DBPutCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterType$ P1P1 | CounterNum$ X | SpellDescription$ Put X +1/+1 counters on target creature you control, where X is one plus the number of Foods you control. -DeckHas:Ability$Token|Counters & Type$Human|Food SVar:X:Count$Valid Food.YouCtrl/Plus.1 -DeckHints:Type$Food -DeckHints:Ability$Token +DeckHas:Ability$Token|Counters & Type$Human|Food +DeckHints:Ability$Token & Type$Food Oracle:(As this Saga enters and after your draw step, add a lore counter. Sacrifice after III.)\nI — Create a 1/1 white Human creature token.\nII — Create a Food token.\nIII — Put X +1/+1 counters on target creature you control, where X is one plus the number of Foods you control. diff --git a/forge-gui/res/cardsfolder/w/whispering_snitch.txt b/forge-gui/res/cardsfolder/w/whispering_snitch.txt index cc59318d707..81da6beccb0 100644 --- a/forge-gui/res/cardsfolder/w/whispering_snitch.txt +++ b/forge-gui/res/cardsfolder/w/whispering_snitch.txt @@ -5,6 +5,6 @@ PT:1/3 T:Mode$ Surveil | ValidPlayer$ You | TriggerZones$ Battlefield | FirstTime$ True | Execute$ TrigDamageAll | TriggerDescription$ Whenever you surveil for the first time each turn, CARDNAME deals 1 damage to each opponent and you gain 1 life. SVar:TrigDamageAll:DB$ DamageAll | ValidPlayers$ Player.Opponent | NumDmg$ 1 | SubAbility$ DBGainLife SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ 1 -DeckNeeds:Ability$Surveil DeckHas:Ability$LifeGain +DeckNeeds:Ability$Surveil Oracle:Whenever you surveil for the first time each turn, Whispering Snitch deals 1 damage to each opponent and you gain 1 life. diff --git a/forge-gui/res/cardsfolder/w/widespread_thieving.txt b/forge-gui/res/cardsfolder/w/widespread_thieving.txt index fcdb95d5cdc..c5e7c00f1c2 100644 --- a/forge-gui/res/cardsfolder/w/widespread_thieving.txt +++ b/forge-gui/res/cardsfolder/w/widespread_thieving.txt @@ -5,7 +5,7 @@ K:Hideaway:5 T:Mode$ SpellCast | ValidCard$ Card.MultiColor | ValidActivatingPlayer$ You | Execute$ TrigToken | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast a multicolored spell, create a Treasure token. Then, you may pay {W}{U}{B}{R}{G}. If you do, you may play the exiled card without paying its mana cost. SVar:TrigToken:DB$ Token | TokenScript$ c_a_treasure_sac | SubAbility$ DBPlay SVar:DBPlay:DB$ Play | UnlessCost$ W U B R G | UnlessSwitched$ True | UnlessPayer$ You | Defined$ ExiledWith | Amount$ All | Controller$ You | WithoutManaCost$ True | Optional$ True -AI:RemoveDeck:Random SVar:BuffedBy:Card.MultiColor +AI:RemoveDeck:Random DeckHas:Ability$Token|Sacrifice & Type$Treasure|Artifact Oracle:Hideaway 5 (When this enchantment enters, look at the top five cards of your library, exile one face down, then put the rest on the bottom in a random order.)\nWhenever you cast a multicolored spell, create a Treasure token. Then, you may pay {W}{U}{B}{R}{G}. If you do, you may play the exiled card without paying its mana cost. diff --git a/forge-gui/res/cardsfolder/w/wilhelt_the_rotcleaver.txt b/forge-gui/res/cardsfolder/w/wilhelt_the_rotcleaver.txt index 6558ff71bf8..3ac0055ad71 100644 --- a/forge-gui/res/cardsfolder/w/wilhelt_the_rotcleaver.txt +++ b/forge-gui/res/cardsfolder/w/wilhelt_the_rotcleaver.txt @@ -6,6 +6,6 @@ T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ SVar:TrigToken:DB$ Token | TokenScript$ b_2_2_zombie_decayed T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDraw | TriggerDescription$ At the beginning of your end step, you may sacrifice a Zombie. If you do, draw a card. SVar:TrigDraw:AB$ Draw | Cost$ Sac<1/Zombie> | NumCards$ 1 -DeckNeeds:Type$Zombie DeckHas:Ability$Token|Sacrifice +DeckNeeds:Type$Zombie Oracle:Whenever another Zombie you control dies, if it didn't have decayed, create a 2/2 black Zombie creature token with decayed. (It can't block. When it attacks, sacrifice it at end of combat.)\nAt the beginning of your end step, you may sacrifice a Zombie. If you do, draw a card. diff --git a/forge-gui/res/cardsfolder/w/winged_hive_tyrant.txt b/forge-gui/res/cardsfolder/w/winged_hive_tyrant.txt index b5ba365abc8..cf1bea9f3d0 100644 --- a/forge-gui/res/cardsfolder/w/winged_hive_tyrant.txt +++ b/forge-gui/res/cardsfolder/w/winged_hive_tyrant.txt @@ -6,6 +6,6 @@ K:Flying K:Haste S:Mode$ Continuous | Affected$ Creature.YouCtrl+HasCounters+Other | AddKeyword$ Flying & Haste | Description$ The Will of the Hive Mind — Other creatures you control with counters on them have flying and haste. SVar:PlayMain1:TRUE -DeckNeeds:Ability$Counters DeckHas:Keyword$Flying|Haste +DeckNeeds:Ability$Counters Oracle:Flying, haste\nThe Will of the Hive Mind — Other creatures you control with counters on them have flying and haste. diff --git a/forge-gui/res/cardsfolder/w/wingshield_agent.txt b/forge-gui/res/cardsfolder/w/wingshield_agent.txt index 5b899c834d0..13d24131c96 100644 --- a/forge-gui/res/cardsfolder/w/wingshield_agent.txt +++ b/forge-gui/res/cardsfolder/w/wingshield_agent.txt @@ -5,6 +5,6 @@ PT:2/3 K:etbCounter:SHIELD:1 T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ Whenever CARDNAME attacks, up to one other target creature gains flying until end of turn. SVar:TrigPump:DB$ Pump | ValidTgts$ Creature.Other | TgtPrompt$ Select up to one other target creature | TargetMin$ 0 | TargetMax$ 1 | KW$ Flying -DeckHas:Ability$Counters SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters Oracle:Wingshield Agent enters with a shield counter on it. (If it would be dealt damage or destroyed, remove a shield counter from it instead.)\nWhenever Wingshield Agent attacks, up to one other target creature gains flying until end of turn. diff --git a/forge-gui/res/cardsfolder/w/witherbloom_apprentice.txt b/forge-gui/res/cardsfolder/w/witherbloom_apprentice.txt index d3f20709595..301b80b6bef 100644 --- a/forge-gui/res/cardsfolder/w/witherbloom_apprentice.txt +++ b/forge-gui/res/cardsfolder/w/witherbloom_apprentice.txt @@ -5,6 +5,6 @@ PT:2/2 T:Mode$ SpellCastOrCopy | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDrain | TriggerDescription$ Magecraft — Whenever you cast or copy an instant or sorcery spell, each opponent loses 1 life and you gain 1 life. SVar:TrigDrain:DB$ LoseLife | Defined$ Player.Opponent | LifeAmount$ 1 | SubAbility$ DBGainOneLife SVar:DBGainOneLife:DB$ GainLife | Defined$ You | LifeAmount$ 1 -DeckNeeds:Type$Instant|Sorcery DeckHas:Ability$LifeGain +DeckNeeds:Type$Instant|Sorcery Oracle:Magecraft — Whenever you cast or copy an instant or sorcery spell, each opponent loses 1 life and you gain 1 life. diff --git a/forge-gui/res/cardsfolder/w/wizards_rockets.txt b/forge-gui/res/cardsfolder/w/wizards_rockets.txt index b75be43802c..b5fba968645 100644 --- a/forge-gui/res/cardsfolder/w/wizards_rockets.txt +++ b/forge-gui/res/cardsfolder/w/wizards_rockets.txt @@ -7,7 +7,7 @@ A:AB$ Mana | Cost$ X T Sac<1/CARDNAME> | Produced$ Combo Any | Amount$ X | Spell T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigDraw | TriggerDescription$ When CARDNAME is put into a graveyard from the battlefield, draw a card. SVar:TrigDraw:DB$ Draw | Defined$ TriggeredCardController | NumCards$ 1 SVar:X:Count$xPaid +SVar:SacMe:1 AI:RemoveDeck:All DeckHas:Ability$Sacrifice -SVar:SacMe:1 Oracle:Wizard's Rockets enters tapped.\n{X}, {T}, Sacrifice Wizard's Rockets: Add X mana in any combination of colors.\nWhen Wizard's Rockets is put into a graveyard from the battlefield, draw a card. diff --git a/forge-gui/res/cardsfolder/w/wormwood_treefolk.txt b/forge-gui/res/cardsfolder/w/wormwood_treefolk.txt index cdf47e71e4e..f3d40a32f2e 100644 --- a/forge-gui/res/cardsfolder/w/wormwood_treefolk.txt +++ b/forge-gui/res/cardsfolder/w/wormwood_treefolk.txt @@ -5,6 +5,6 @@ PT:4/4 A:AB$ Pump | Cost$ G G | KW$ Landwalk:Forest | Defined$ Self | SubAbility$ DBDealDamage | SpellDescription$ CARDNAME gains forestwalk until end of turn and deals 2 damage to you. (It can't be blocked as long as defending player controls a Forest.) A:AB$ Pump | Cost$ B B | KW$ Landwalk:Swamp | Defined$ Self | SubAbility$ DBDealDamage | SpellDescription$ CARDNAME gains swampwalk until end of turn and deals 2 damage to you. (It can't be blocked as long as defending player controls a Swamp.) SVar:DBDealDamage:DB$ DealDamage | Defined$ You | NumDmg$ 2 -DeckNeeds:Color$Black DeckHas:Keyword$Swampwalk|Forestwalk +DeckNeeds:Color$Black Oracle:{G}{G}: Wormwood Treefolk gains forestwalk until end of turn and deals 2 damage to you. (It can't be blocked as long as defending player controls a Forest.)\n{B}{B}: Wormwood Treefolk gains swampwalk until end of turn and deals 2 damage to you. (It can't be blocked as long as defending player controls a Swamp.) diff --git a/forge-gui/res/cardsfolder/x/xanders_pact.txt b/forge-gui/res/cardsfolder/x/xanders_pact.txt index 2aad65dacc6..20c1f9360d7 100644 --- a/forge-gui/res/cardsfolder/x/xanders_pact.txt +++ b/forge-gui/res/cardsfolder/x/xanders_pact.txt @@ -6,6 +6,6 @@ A:SP$ Dig | Defined$ Opponent | DestinationZone$ Exile | DigNum$ 1 | ChangeNum$ SVar:DBEffect:DB$ Effect | RememberObjects$ RememberedCard | StaticAbilities$ STPlay | SubAbility$ DBCleanup | ForgetOnMoved$ Exile | SpellDescription$ You may cast spells from among those cards this turn. If you cast a spell this way, pay life equal to that spell's mana value rather than pay its mana cost. SVar:STPlay:Mode$ Continuous | MayPlay$ True | EffectZone$ Command | Affected$ Card.IsRemembered+nonLand | AffectedZone$ Exile | MayPlayAltManaCost$ PayLife | Description$ You may cast spells from among those cards this turn. If you cast a spell this way, pay life equal to that spell's mana value rather than pay its mana cost. SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -DeckHas:Ability$Sacrifice SVar:AIPreference:SacCost$Creature.token+powerEQ2,Creature.powerEQ2 +DeckHas:Ability$Sacrifice Oracle:Casualty 2 (As you cast this spell, you may sacrifice a creature with power 2 or greater. When you do, copy this spell.)\nEach opponent exiles the top card of their library. You may cast spells from among those cards this turn. If you cast a spell this way, pay life equal to that spell's mana value rather than pay its mana cost. diff --git a/forge-gui/res/cardsfolder/x/xolatoyac_the_smiling_flood.txt b/forge-gui/res/cardsfolder/x/xolatoyac_the_smiling_flood.txt index 35961a80fcd..a39bb6314a1 100644 --- a/forge-gui/res/cardsfolder/x/xolatoyac_the_smiling_flood.txt +++ b/forge-gui/res/cardsfolder/x/xolatoyac_the_smiling_flood.txt @@ -9,7 +9,7 @@ SVar:DBEffect:DB$ Effect | RememberObjects$ Targeted | StaticAbilities$ Fountain SVar:FountainStatic:Mode$ Continuous | EffectZone$ Command | Affected$ Card.IsRemembered | AddType$ Island | Description$ That land is an island in addition to its other types for as long as it has a flood counter on it. T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigUntap | TriggerDescription$ At the beginning of your end step, untap each permanent you control with a counter on it. SVar:TrigUntap:DB$ UntapAll | ValidCards$ Permanent.YouCtrl+HasCounters +SVar:HasAttackEffect:TRUE DeckHas:Ability$Counters DeckHints:Ability$Counters -SVar:HasAttackEffect:TRUE Oracle:Whenever Xolatoyac, the Smiling Flood enters or attacks, put a flood counter on target land. That land is an Island in addition to its other types for as long as it has a flood counter on it.\nAt the beginning of your end step, untap each permanent you control with a counter on it. diff --git a/forge-gui/res/cardsfolder/y/yawgmoth_demon.txt b/forge-gui/res/cardsfolder/y/yawgmoth_demon.txt index 67627ab45b9..5b0e2397ddb 100644 --- a/forge-gui/res/cardsfolder/y/yawgmoth_demon.txt +++ b/forge-gui/res/cardsfolder/y/yawgmoth_demon.txt @@ -12,6 +12,6 @@ SVar:DBElderSpawnCleanup:DB$ Cleanup | ClearRemembered$ True SVar:NeedsToPlayVar:Z GE3 SVar:Z:Count$Valid Artifact.YouCtrl+inZoneBattlefield AI:RemoveDeck:Random -DeckNeeds:Type$Artifact DeckHas:Ability$Sacrifice +DeckNeeds:Type$Artifact Oracle:Flying (This creature can't be blocked except by creatures with flying or reach.)\nFirst strike (This creature deals combat damage before creatures without first strike.)\nAt the beginning of your upkeep, you may sacrifice an artifact. If you don't, tap Yawgmoth Demon and it deals 2 damage to you. diff --git a/forge-gui/res/cardsfolder/y/yotian_courier.txt b/forge-gui/res/cardsfolder/y/yotian_courier.txt index e478a7a941f..ebc8042f281 100644 --- a/forge-gui/res/cardsfolder/y/yotian_courier.txt +++ b/forge-gui/res/cardsfolder/y/yotian_courier.txt @@ -8,7 +8,7 @@ SVar:TrigCharm:DB$ Charm | Choices$ Powerstone,Seek | ChoiceRestriction$ YourLas SVar:Powerstone:DB$ Token | TokenTapped$ True | TokenScript$ c_a_powerstone | SpellDescription$ Create a tapped Powerstone token. SVar:Seek:DB$ Seek | Type$ Card.nonLand+cmcEQX | SpellDescription$ Seek a nonland card with mana value equal to the number of Powerstones you control. SVar:X:Count$Valid Powerstone.YouCtrl -DeckNeeds:Type$Artifact -DeckHas:Ability$Token & Type$Artifact SVar:HasAttackEffect:TRUE +DeckHas:Ability$Token & Type$Artifact +DeckNeeds:Type$Artifact Oracle:Flying\nWhenever Yotian Courier attacks, choose one that wasn't chosen during your last combat —\n• Create a tapped Powerstone token.\n• Seek a nonland card with mana value equal to the number of Powerstones you control. diff --git a/forge-gui/res/cardsfolder/y/young_necromancer.txt b/forge-gui/res/cardsfolder/y/young_necromancer.txt index 3cad8924c6e..7c7e07ce3e3 100644 --- a/forge-gui/res/cardsfolder/y/young_necromancer.txt +++ b/forge-gui/res/cardsfolder/y/young_necromancer.txt @@ -5,10 +5,10 @@ PT:2/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigImmediateTrig | TriggerDescription$ When CARDNAME enters, you may exile two cards from your graveyard. When you do, return target creature card from your graveyard to the battlefield. SVar:TrigImmediateTrig:AB$ ImmediateTrigger | Cost$ ExileFromGrave<2/card> | Execute$ TrigReturn | SpellDescription$ When you do, return target creature card from your graveyard to the battlefield. SVar:TrigReturn:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | ValidTgts$ Creature.YouOwn | TgtPrompt$ Select target creature to return from your graveyard -DeckHas:Ability$Graveyard -DeckHints:Ability$Discard SVar:NeedsToPlayVar:Z EQ3 SVar:X:Count$InYourYard/LimitMax.3 SVar:Y:Count$TypeInYourYard.Creature/LimitMax.1 SVar:Z:SVar$X/Times.Y +DeckHas:Ability$Graveyard +DeckHints:Ability$Discard Oracle:When Young Necromancer enters, you may exile two cards from your graveyard. When you do, return target creature card from your graveyard to the battlefield. diff --git a/forge-gui/res/cardsfolder/z/zaffai_thunder_conductor.txt b/forge-gui/res/cardsfolder/z/zaffai_thunder_conductor.txt index 07ce4a04ad2..94d30ce4773 100644 --- a/forge-gui/res/cardsfolder/z/zaffai_thunder_conductor.txt +++ b/forge-gui/res/cardsfolder/z/zaffai_thunder_conductor.txt @@ -7,7 +7,7 @@ SVar:DBScry:DB$ Scry | ScryNum$ 1 | SubAbility$ DBToken SVar:DBToken:DB$ Token | TokenScript$ ur_4_4_elemental | TokenOwner$ You | ConditionCheckSVar$ TriggeredStackInstance$CardManaCostLKI | ConditionSVarCompare$ GE5 | SubAbility$ DBChoose SVar:DBChoose:DB$ ChoosePlayer | Defined$ You | Choices$ Player.Opponent | Random$ True | SubAbility$ DBDamage SVar:DBDamage:DB$ DealDamage | NumDmg$ 10 | Defined$ ChosenPlayer | ConditionCheckSVar$ TriggeredStackInstance$CardManaCostLKI | ConditionSVarCompare$ GE10 -DeckHas:Ability$Token SVar:BuffedBy:Instant,Sorcery +DeckHas:Ability$Token DeckHints:Type$Instant|Sorcery Oracle:Magecraft — Whenever you cast or copy an instant or sorcery spell, scry 1. If that spell's mana value is 5 or greater, create a 4/4 blue and red Elemental creature token. If that spell's mana value is 10 or greater, Zaffai, Thunder Conductor deals 10 damage to an opponent chosen at random. diff --git a/forge-gui/res/cardsfolder/z/zur_eternal_schemer.txt b/forge-gui/res/cardsfolder/z/zur_eternal_schemer.txt index 5f047067baf..a2c21c7cd65 100644 --- a/forge-gui/res/cardsfolder/z/zur_eternal_schemer.txt +++ b/forge-gui/res/cardsfolder/z/zur_eternal_schemer.txt @@ -6,6 +6,6 @@ K:Flying S:Mode$ Continuous | Affected$ Creature.Enchantment+YouCtrl | AddKeyword$ Deathtouch & Lifelink & Hexproof | Description$ Enchantment creatures you control have deathtouch, lifelink, and hexproof. A:AB$ Animate | Cost$ 1 W | ValidTgts$ Enchantment.nonAura+YouCtrl | TgtPrompt$ Select target non-Aura enchantment you control | Power$ X | Toughness$ X | Types$ Creature | Duration$ Permanent | StackDescription$ {c:Targeted} becomes a creature in addition to its other types and has base power and toughness each equal to its mana value. | SpellDescription$ Target non-Aura enchantment you control becomes a creature in addition to its other types and has base power and toughness each equal to its mana value. SVar:X:Targeted$CardManaCost -DeckNeeds:Type$Enchantment DeckHas:Ability$LifeGain +DeckNeeds:Type$Enchantment Oracle:Flying\nEnchantment creatures you control have deathtouch, lifelink, and hexproof.\n{1}{W}: Target non-Aura enchantment you control becomes a creature in addition to its other types and has base power and toughness each equal to its mana value. From 9568abc6f411984afc5479598c8368d2f78346de Mon Sep 17 00:00:00 2001 From: tool4ever Date: Sun, 13 Oct 2024 11:50:01 +0000 Subject: [PATCH 30/91] Update kraul_harpooner.txt --- forge-gui/res/cardsfolder/k/kraul_harpooner.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui/res/cardsfolder/k/kraul_harpooner.txt b/forge-gui/res/cardsfolder/k/kraul_harpooner.txt index eff90f53dc1..aaf1a99a7b9 100644 --- a/forge-gui/res/cardsfolder/k/kraul_harpooner.txt +++ b/forge-gui/res/cardsfolder/k/kraul_harpooner.txt @@ -3,7 +3,7 @@ ManaCost:1 G Types:Creature Insect Warrior PT:3/2 K:Reach -T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ When CARDNAME enters, choose up to one target creature with flying you don't control. CARDNAME gets +X/+0 until end of turn, where X is the number of creature cards in your graveyard, then you may have CARDNAME fight that creature. +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ Undergrowth — When CARDNAME enters, choose up to one target creature with flying you don't control. CARDNAME gets +X/+0 until end of turn, where X is the number of creature cards in your graveyard, then you may have CARDNAME fight that creature. SVar:TrigPump:DB$ Pump | Defined$ Self | NumAtt$ X | SubAbility$ DBFight SVar:DBFight:DB$ Fight | Defined$ Self | ValidTgts$ Creature.withFlying+YouDontCtrl | TgtPrompt$ Select target creature with flying you don't control | TargetMin$ 0 | TargetMax$ 1 | Optional$ True SVar:X:Count$TypeInYourYard.Creature From 036e6ec1bfbd24c56c28ceb1a06f1814b111f5f5 Mon Sep 17 00:00:00 2001 From: tool4EvEr Date: Fri, 11 Oct 2024 20:35:45 +0200 Subject: [PATCH 31/91] Ghostly Dancers and support --- .../src/main/java/forge/ai/ability/SetStateAi.java | 2 +- .../java/forge/game/ability/AbilityFactory.java | 11 ++++++++++- .../ability/effects/VillainousChoiceEffect.java | 9 --------- forge-game/src/main/java/forge/game/card/Card.java | 14 +++++++------- .../main/java/forge/game/card/CardProperty.java | 12 ++++++++++++ .../forge/game/spellability/AbilityStatic.java | 9 ++------- .../res/cardsfolder/upcoming/ghostly_dancers.txt | 13 +++++++++++++ forge-gui/res/tokenscripts/w_3_1_spirit_flying.txt | 7 +++++++ 8 files changed, 52 insertions(+), 25 deletions(-) create mode 100644 forge-gui/res/cardsfolder/upcoming/ghostly_dancers.txt create mode 100644 forge-gui/res/tokenscripts/w_3_1_spirit_flying.txt diff --git a/forge-ai/src/main/java/forge/ai/ability/SetStateAi.java b/forge-ai/src/main/java/forge/ai/ability/SetStateAi.java index da8dcfc2286..7585f7e9b61 100644 --- a/forge-ai/src/main/java/forge/ai/ability/SetStateAi.java +++ b/forge-ai/src/main/java/forge/ai/ability/SetStateAi.java @@ -155,7 +155,7 @@ public class SetStateAi extends SpellAbilityAi { } // non-permanent facedown can't be turned face up - if (!card.getRules().getType().isPermanent()) { + if (!card.getRules().getType().isPermanent() || !card.canBeTurnedFaceUp()) { return false; } } else { diff --git a/forge-game/src/main/java/forge/game/ability/AbilityFactory.java b/forge-game/src/main/java/forge/game/ability/AbilityFactory.java index 74f19dc7535..12e7bf6a754 100644 --- a/forge-game/src/main/java/forge/game/ability/AbilityFactory.java +++ b/forge-game/src/main/java/forge/game/ability/AbilityFactory.java @@ -285,7 +285,16 @@ public final class AbilityFactory { final String key = "Choices"; if (mapParams.containsKey(key)) { List names = Lists.newArrayList(mapParams.get(key).split(",")); - spellAbility.setAdditionalAbilityList(key, Lists.transform(names, input -> getSubAbility(state, input, sVarHolder))); + spellAbility.setAdditionalAbilityList(key, Lists.transform(names, input -> { + AbilitySub sub = getSubAbility(state, input, sVarHolder); + if (api == ApiType.GenericChoice) { + // support scripters adding restrictions to filter illegal choices + sub.setRestrictions(new SpellAbilityRestriction()); + makeRestrictions(sub); + } + return sub; + } + )); } } diff --git a/forge-game/src/main/java/forge/game/ability/effects/VillainousChoiceEffect.java b/forge-game/src/main/java/forge/game/ability/effects/VillainousChoiceEffect.java index 0df712c17ee..e1a2f19bc0f 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/VillainousChoiceEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/VillainousChoiceEffect.java @@ -21,15 +21,6 @@ public class VillainousChoiceEffect extends SpellAbilityEffect { for (Player p : getDefinedPlayersOrTargeted(sa)) { int choiceAmount = p.getAdditionalVillainousChoices() + 1; - List saToRemove = Lists.newArrayList(); - - for (SpellAbility saChoice : abilities) { - if (saChoice.getRestrictions() != null && !saChoice.getRestrictions().checkOtherRestrictions(sa.getHostCard(), saChoice, sa.getActivatingPlayer())) { - saToRemove.add(saChoice); - } - } - abilities.removeAll(saToRemove); - // For the AI chooseSAForEffect really should take the least good ability. Currently it just takes the first List chosenSAs = Lists.newArrayList(); for(int i = 0; i < choiceAmount; i++) { diff --git a/forge-game/src/main/java/forge/game/card/Card.java b/forge-game/src/main/java/forge/game/card/Card.java index c02d8ed1bc0..e7ffd5e6ff1 100644 --- a/forge-game/src/main/java/forge/game/card/Card.java +++ b/forge-game/src/main/java/forge/game/card/Card.java @@ -805,6 +805,11 @@ public class Card extends GameEntity implements Comparable, IHasSVars, ITr return setState(CardStateName.FaceDown, false); } + public boolean canBeTurnedFaceUp() { + Map repParams = AbilityKey.mapFromAffected(this); + return !getGame().getReplacementHandler().cantHappenCheck(ReplacementType.TurnFaceUp, repParams); + } + public void forceTurnFaceUp() { turnFaceUp(false, null); } @@ -813,14 +818,10 @@ public class Card extends GameEntity implements Comparable, IHasSVars, ITr return turnFaceUp(true, cause); } public boolean turnFaceUp(boolean runTriggers, SpellAbility cause) { - if (!isFaceDown()) { + if (!isFaceDown() || !canBeTurnedFaceUp()) { return false; } - // Check replacement effects - Map repParams = AbilityKey.mapFromAffected(this); - if (game.getReplacementHandler().cantHappenCheck(ReplacementType.TurnFaceUp, repParams)) return false; - CardCollectionView cards = hasMergedCard() ? getMergedCards() : new CardCollection(this); boolean retResult = false; long ts = game.getNextTimestamp(); @@ -855,10 +856,9 @@ public class Card extends GameEntity implements Comparable, IHasSVars, ITr triggerHandler.registerActiveTrigger(this, false); } if (runTriggers) { - // Run replacement effects + Map repParams = AbilityKey.mapFromAffected(this); game.getReplacementHandler().run(ReplacementType.TurnFaceUp, repParams); - // Run triggers final Map runParams = AbilityKey.mapFromCard(this); runParams.put(AbilityKey.Cause, cause); diff --git a/forge-game/src/main/java/forge/game/card/CardProperty.java b/forge-game/src/main/java/forge/game/card/CardProperty.java index ca64d93b010..2570a8a36ee 100644 --- a/forge-game/src/main/java/forge/game/card/CardProperty.java +++ b/forge-game/src/main/java/forge/game/card/CardProperty.java @@ -1924,6 +1924,18 @@ public class CardProperty { if (!card.isGoaded()) { return false; } + } else if (property.equals("FullyUnlocked")) { + if (card.getUnlockedRooms().size() < 2) { + return false; + } + } else if (property.startsWith("canReceiveCounters")) { + if (!card.canReceiveCounters(CounterType.getType(property.split(" ")[1]))) { + return false; + } + } else if (property.equals("canBeTurnedFaceUp")) { + if (!card.canBeTurnedFaceUp()) { + return false; + } } else if (property.equals("NoAbilities")) { if (!card.hasNoAbilities()) { return false; diff --git a/forge-game/src/main/java/forge/game/spellability/AbilityStatic.java b/forge-game/src/main/java/forge/game/spellability/AbilityStatic.java index ed43e2e7611..d4b14fd31ce 100644 --- a/forge-game/src/main/java/forge/game/spellability/AbilityStatic.java +++ b/forge-game/src/main/java/forge/game/spellability/AbilityStatic.java @@ -18,12 +18,8 @@ package forge.game.spellability; import forge.card.mana.ManaCost; -import forge.game.ability.AbilityKey; import forge.game.card.Card; import forge.game.cost.Cost; -import forge.game.replacement.ReplacementType; - -import java.util.Map; /** *

@@ -58,9 +54,8 @@ public abstract class AbilityStatic extends Ability implements Cloneable { // Check if ability can't be attempted because of replacement effect // Initial usage is Karlov Watchdog preventing disguise/morph/cloak/manifest turning face up - if (this.isTurnFaceUp()) { - Map repParams = AbilityKey.mapFromAffected(c); - if (c.getGame().getReplacementHandler().cantHappenCheck(ReplacementType.TurnFaceUp, repParams)) return false; + if (this.isTurnFaceUp() && !c.canBeTurnedFaceUp()) { + return false; } return this.getRestrictions().canPlay(c, this); diff --git a/forge-gui/res/cardsfolder/upcoming/ghostly_dancers.txt b/forge-gui/res/cardsfolder/upcoming/ghostly_dancers.txt new file mode 100644 index 00000000000..42a4348fa7c --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/ghostly_dancers.txt @@ -0,0 +1,13 @@ +Name:Ghostly Dancers +ManaCost:3 W W +Types:Creature Spirit +PT:2/5 +K:Flying +T:Mode$ ChangesZone | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigChoice | TriggerDescription$ When CARDNAME enters, return an enchantment card from your graveyard to your hand or unlock a locked door of a Room you control. +SVar:TrigChoice:DB$ GenericChoice | Choices$ DBReturn,DBUnlock +SVar:DBReturn:DB$ ChangeZone | Hidden$ True | Mandatory$ True | ChangeType$ Enchantment.YouOwn | Origin$ Graveyard | Destination$ Hand | IsPresent$ Enchantment.YouOwn | PresentZone$ Graveyard | SpellDescription$ Return an enchantment card from your graveyard to your hand +SVar:DBUnlock:DB$ UnlockDoor | Mode$ Unlock | Choices$ Room.YouCtrl+!FullyUnlocked | IsPresent$ Room.YouCtrl+!FullyUnlocked | SpellDescription$ Unlock a locked door of a Room you control +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Enchantment.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Eerie — Whenever an enchantment you control enters and whenever you fully unlock a Room, create a 3/1 white Spirit creature token with flying. +T:Mode$ FullyUnlock | ValidCard$ Card.Room | ValidPlayer$ You | Secondary$ True | Execute$ TrigToken | TriggerZones$ Battlefield | TriggerDescription$ Eerie — Whenever an enchantment you control enters and whenever you fully unlock a Room, create a 3/1 white Spirit creature token with flying. +SVar:TrigToken:DB$ Token | TokenScript$ w_3_1_spirit_flying +Oracle:Flying\nWhen Ghostly Dancers enters, return an enchantment card from your graveyard to your hand or unlock a locked door of a Room you control.\nEerie — Whenever an enchantment you control enters and whenever you fully unlock a Room, create a 3/1 white Spirit creature token with flying. diff --git a/forge-gui/res/tokenscripts/w_3_1_spirit_flying.txt b/forge-gui/res/tokenscripts/w_3_1_spirit_flying.txt new file mode 100644 index 00000000000..7421d4e5011 --- /dev/null +++ b/forge-gui/res/tokenscripts/w_3_1_spirit_flying.txt @@ -0,0 +1,7 @@ +Name:Spirit Token +ManaCost:no cost +Types:Creature Spirit +Colors:white +PT:3/1 +K:Flying +Oracle:Flying From bd659a1e4418ff4d90db89c462f4f1741d6ba4ba Mon Sep 17 00:00:00 2001 From: tool4ever Date: Sun, 13 Oct 2024 15:32:42 +0000 Subject: [PATCH 32/91] Update defiled_crypt_cadaver_lab.txt --- .../res/cardsfolder/upcoming/defiled_crypt_cadaver_lab.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/forge-gui/res/cardsfolder/upcoming/defiled_crypt_cadaver_lab.txt b/forge-gui/res/cardsfolder/upcoming/defiled_crypt_cadaver_lab.txt index 47ca3aabb0d..9e3421b09cd 100644 --- a/forge-gui/res/cardsfolder/upcoming/defiled_crypt_cadaver_lab.txt +++ b/forge-gui/res/cardsfolder/upcoming/defiled_crypt_cadaver_lab.txt @@ -13,5 +13,5 @@ Name:Cadaver Lab ManaCost:B Types:Enchantment Room T:Mode$ UnlockDoor | ValidPlayer$ You | ValidCard$ Card.Self | ThisDoor$ True | Execute$ TrigChangeZone | TriggerDescription$ When you unlock this door, return target creature card from your graveyard to your hand. -SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select up to one target creature | Origin$ Graveyard | Destination$ Hand -Oracle:(You may cast either half. That door unlocks on the battlefield. As a sorcery, you may pay the mana cost of a locked door to unlock it.)\nWhen you unlock this door, return target creature card from your graveyard to your hand. \ No newline at end of file +SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select up to one target creature +Oracle:(You may cast either half. That door unlocks on the battlefield. As a sorcery, you may pay the mana cost of a locked door to unlock it.)\nWhen you unlock this door, return target creature card from your graveyard to your hand. From dc5cef1446819b0ceec527771a2d0e45f2845b39 Mon Sep 17 00:00:00 2001 From: tool4ever Date: Sun, 13 Oct 2024 15:34:57 +0000 Subject: [PATCH 33/91] Update dreams_of_steel_and_oil.txt --- forge-gui/res/cardsfolder/d/dreams_of_steel_and_oil.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui/res/cardsfolder/d/dreams_of_steel_and_oil.txt b/forge-gui/res/cardsfolder/d/dreams_of_steel_and_oil.txt index e76e369bf94..40b86a08c6c 100644 --- a/forge-gui/res/cardsfolder/d/dreams_of_steel_and_oil.txt +++ b/forge-gui/res/cardsfolder/d/dreams_of_steel_and_oil.txt @@ -4,6 +4,6 @@ Types:Sorcery A:SP$ RevealHand | ValidTgts$ Opponent | ImprintRevealed$ True | RememberTargets$ True | SubAbility$ DBChooseCard | SpellDescription$ Target opponent reveals their hand. You choose an artifact or creature card from it, then choose an artifact or creature card from their graveyard. Exile the chosen cards. SVar:DBChooseCard:DB$ ChooseCard | ChoiceZone$ Hand | Choices$ Artifact.IsImprinted,Creature.IsImprinted | RememberChosen$ True | ChoiceTitle$ Choose an artifact or creature card | Mandatory$ True | SubAbility$ DBChooseFromGraveyard SVar:DBChooseFromGraveyard:DB$ ChooseCard | ChoiceZone$ Graveyard | Choices$ Artifact.RememberedPlayerOwn,Creature.RememberedPlayerOwn | RememberChosen$ True | ChoiceTitle$ Choose an artifact or creature card | Mandatory$ True | Amount$ 1 | SubAbility$ DBExileBoth -SVar:DBExileBoth:DB$ ChangeZone | Defined$ RememberedCard | Origin$ Graveyard | Origin$ Hand | Destination$ Exile | SubAbility$ DBCleanup +SVar:DBExileBoth:DB$ ChangeZone | Defined$ RememberedCard | Origin$ Graveyard,Hand | Destination$ Exile | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True | ClearImprinted$ True Oracle:Target opponent reveals their hand. You choose an artifact or creature card from it, then choose an artifact or creature card from their graveyard. Exile the chosen cards. From c948355f1208881a5baf20e650dfba5c09bdaf7c Mon Sep 17 00:00:00 2001 From: Chris H Date: Sun, 13 Oct 2024 17:20:02 -0400 Subject: [PATCH 34/91] Add new set things --- forge-gui/res/blockdata/blocks.txt | 3 +- forge-gui/res/draft/rankings/dsk.rnk | 287 ++++++++++++++++++ .../editions/Duskmourn House of Horror.txt | 49 +++ forge-gui/tools/RankingScraper.py | 8 +- 4 files changed, 343 insertions(+), 4 deletions(-) create mode 100644 forge-gui/res/draft/rankings/dsk.rnk diff --git a/forge-gui/res/blockdata/blocks.txt b/forge-gui/res/blockdata/blocks.txt index b65927c5054..5c0b43832f8 100644 --- a/forge-gui/res/blockdata/blocks.txt +++ b/forge-gui/res/blockdata/blocks.txt @@ -133,4 +133,5 @@ Ravnica Remastered, 3/6/RAV, RVR Murders at Karlov Manor, 3/6/MKM, MKM Outlaws of Thunder Junction, 3/6/OTJ, OTJ Modern Horizons 3, 3/6/MH3, MH3 -Bloomburrow, 3/6/BLB, BLB \ No newline at end of file +Bloomburrow, 3/6/BLB, BLB +Duskmourn: House of Horror, 3/6/DSK, DSK \ No newline at end of file diff --git a/forge-gui/res/draft/rankings/dsk.rnk b/forge-gui/res/draft/rankings/dsk.rnk new file mode 100644 index 00000000000..41fc36ba66c --- /dev/null +++ b/forge-gui/res/draft/rankings/dsk.rnk @@ -0,0 +1,287 @@ +//Rank|Name|Rarity|Set +#1|Overlord of the Mistmoors|M|DSK +#2|Valgavoth's Onslaught|R|DSK +#3|Overlord of the Boilerbilges|M|DSK +#4|Ghostly Dancers|R|DSK +#5|The Swarmweaver|R|DSK +#6|Unholy Annex Ritual Chamber|R|DSK +#7|Dollmaker's Shop Porcelain Gallery|M|DSK +#8|Overlord of the Floodpits|M|DSK +#9|Tyvar, the Pummeler|M|DSK +#10|Overlord of the Balemurk|M|DSK +#11|Dissection Tools|R|DSK +#12|Unstoppable Slasher|R|DSK +#13|Screaming Nemesis|M|DSK +#14|Entity Tracker|R|DSK +#15|Toby, Beastie Befriender|R|DSK +#16|Zimone, All-Questioning|R|DSK +#17|Midnight Mayhem|U|DSK +#18|Sheltered by Ghosts|U|DSK +#19|Enduring Curiosity|R|DSK +#20|Optimistic Scavenger|U|DSK +#21|Unnerving Grasp|U|DSK +#22|The Rollercrusher Ride|M|DSK +#23|Silent Hallcreeper|R|DSK +#24|Unidentified Hovership|R|DSK +#25|Oblivious Bookworm|U|DSK +#26|Chainsaw|R|DSK +#27|Enduring Innocence|R|DSK +#28|Fear of Missing Out|R|DSK +#29|Broodspinner|U|DSK +#30|Disturbing Mirth|U|DSK +#31|Gremlin Tamer|U|DSK +#32|Under the Skin|U|DSK +#33|Abhorrent Oculus|M|DSK +#34|Niko, Light of Hope|M|DSK +#35|Roaring Furnace Steaming Sauna|R|DSK +#36|Arabella, Abandoned Doll|U|DSK +#37|Fear of Isolation|U|DSK +#38|Wildfire Wickerfolk|U|DSK +#39|Balustrade Wurm|R|DSK +#40|Razorkin Hordecaller|U|DSK +#41|Splitskin Doll|U|DSK +#42|Stay Hidden, Stay Silent|U|DSK +#43|The Wandering Rescuer|M|DSK +#44|Twitching Doll|R|DSK +#45|Beastie Beatdown|U|DSK +#46|Floodpits Drowner|U|DSK +#47|Patchwork Beastie|U|DSK +#48|Threats Around Every Corner|U|DSK +#49|Phantasmal Image|M|DSK +#50|Betrayer's Bargain|U|DSK +#51|Ethereal Armor|U|DSK +#52|Growing Dread|U|DSK +#53|Irreverent Gremlin|U|DSK +#54|Clockwork Percussionist|C|DSK +#55|Glimmerburst|C|DSK +#56|Scorching Dragonfire|C|DSK +#57|Trapped in the Screen|C|DSK +#58|Hauntwoods Shrieker|M|DSK +#59|Kaito, Bane of Nightmares|M|DSK +#60|Omnivorous Flytrap|R|DSK +#61|Undead Sprinter|R|DSK +#62|Bottomless Pool Locker Room|U|DSK +#63|Drag to the Roots|U|DSK +#64|Fear of Burning Alive|U|DSK +#65|Inquisitive Glimmer|U|DSK +#66|Painter's Studio Defeated Gallery|U|DSK +#67|Piggy Bank|U|DSK +#68|Damnation|M|DSK +#69|Glassworks Shattered Yard|C|DSK +#70|Glimmerlight|C|DSK +#71|Spineseeker Centipede|C|DSK +#72|Turn Inside Out|C|DSK +#73|Unable to Scream|C|DSK +#74|Vanish from Sight|C|DSK +#75|Overlord of the Hauntwoods|M|DSK +#76|Split Up|R|DSK +#77|Exorcise|U|DSK +#78|Fear of Being Hunted|U|DSK +#79|Glimmer Seeker|U|DSK +#80|Nowhere to Run|U|DSK +#81|Shardmage's Rescue|U|DSK +#82|Surgical Suite Hospital Room|U|DSK +#83|Vengeful Possession|U|DSK +#84|Final Vengeance|C|DSK +#85|Manifest Dread|C|DSK +#86|Unsettling Twins|C|DSK +#87|Enduring Vitality|R|DSK +#88|Reluctant Role Model|R|DSK +#89|Commune with Evil|U|DSK +#90|Cursed Windbreaker|U|DSK +#91|Insidious Fungus|U|DSK +#92|Paranormal Analyst|U|DSK +#93|Unholy Heat|M|DSK +#94|Monstrous Emergence|C|DSK +#95|Say Its Name|C|DSK +#96|Seized from Slumber|C|DSK +#97|Enduring Courage|R|DSK +#98|Ghost Vacuum|R|DSK +#99|Razorkin Needlehead|R|DSK +#100|Waltz of Rage|R|DSK +#101|Break Down the Door|U|DSK +#102|Fear of Abduction|U|DSK +#103|Osseous Sticktwister|U|DSK +#104|Veteran Survivor|U|DSK +#105|Fear of Surveillance|C|DSK +#106|Jump Scare|C|DSK +#107|Tunnel Surveyor|C|DSK +#108|Twist Reality|C|DSK +#109|Wary Watchdog|C|DSK +#110|Meat Locker Drowned Diner|C|DSK +#111|Come Back Wrong|R|DSK +#112|The Mindskinner|R|DSK +#113|Conductive Machete|U|DSK +#114|Fear of Falling|U|DSK +#115|Sawblade Skinripper|U|DSK +#116|Bashful Beastie|C|DSK +#117|Don't Make a Sound|C|DSK +#118|Fear of Immobility|C|DSK +#119|Friendly Ghost|C|DSK +#120|Innocuous Rat|C|DSK +#121|Murder|C|DSK +#122|Terramorphic Expanse|C|DSK +#123|Ticket Booth Tunnel of Hate|C|DSK +#124|Funeral Room Awakening Hall|M|DSK +#125|Mirror Room Fractured Realm|M|DSK +#126|Valgavoth, Terror Eater|M|DSK +#127|Floodfarm Verge|R|DSK +#128|Restricted Office Lecture Hall|R|DSK +#129|Coordinated Clobbering|U|DSK +#130|Defiant Survivor|U|DSK +#131|Duskmourn's Domination|U|DSK +#132|Get Out|U|DSK +#133|Lionheart Glimmer|U|DSK +#134|Live or Die|U|DSK +#135|Overgrown Zealot|U|DSK +#136|Rootwise Survivor|U|DSK +#137|Sporogenic Infection|U|DSK +#138|Wickerfolk Thresher|U|DSK +#139|Lakeside Shack|C|DSK +#140|Fanatic of the Harrowing|C|DSK +#141|Grand Entryway Elegant Rotunda|C|DSK +#142|Hand That Feeds|C|DSK +#143|Most Valuable Slayer|C|DSK +#144|Ragged Playmate|C|DSK +#145|Winter's Intervention|C|DSK +#146|Underwater Tunnel Slimy Aquarium|C|DSK +#147|Cynical Loner|U|DSK +#148|Let's Play a Game|U|DSK +#149|Norin, Swift Survivalist|U|DSK +#150|Shroudstomper|U|DSK +#151|Vile Mutilator|U|DSK +#152|Withering Torment|U|DSK +#153|Abandoned Campground|C|DSK +#154|Flesh Burrower|C|DSK +#155|Found Footage|C|DSK +#156|Impossible Inferno|C|DSK +#157|Moldering Gym Weight Room|C|DSK +#158|Piranha Fly|C|DSK +#159|Slavering Branchsnapper|C|DSK +#160|Stalked Researcher|C|DSK +#161|Vicious Clown|C|DSK +#162|Blazemire Verge|R|DSK +#163|Gloomlake Verge|R|DSK +#164|Rip, Spawn Hunter|R|DSK +#165|The Jolly Balloon Man|R|DSK +#166|Thornspire Verge|R|DSK +#167|Altanak, the Thrice-Called|U|DSK +#168|Cathartic Parting|U|DSK +#169|House Cartographer|U|DSK +#170|Patched Plaything|U|DSK +#171|Popular Egotist|U|DSK +#172|Rite of the Moth|U|DSK +#173|Valgavoth's Faithful|U|DSK +#174|Raucous Carnival|C|DSK +#175|Hallowed Haunting|M|DSK +#176|Emerge from the Cocoon|C|DSK +#177|Fear of Lost Teeth|C|DSK +#178|Grasping Longneck|C|DSK +#179|Hushwood Verge|R|DSK +#180|Peer Past the Veil|R|DSK +#181|Defiled Crypt Cadaver Lab|U|DSK +#182|Fear of Impostors|U|DSK +#183|Fear of Infinity|U|DSK +#184|Orphans of the Wheat|U|DSK +#185|Smoky Lounge Misty Salon|U|DSK +#186|Trial of Agony|U|DSK +#187|Untimely Malfunction|U|DSK +#188|Unwilling Vessel|U|DSK +#189|Bleeding Woods|C|DSK +#190|Murky Sewer|C|DSK +#191|Strangled Cemetery|C|DSK +#192|Acrobatic Cheerleader|C|DSK +#193|Cult Healer|C|DSK +#194|Frantic Strength|C|DSK +#195|Grab the Prize|C|DSK +#196|Hardened Escort|C|DSK +#197|Horrid Vigor|C|DSK +#198|Ripchain Razorkin|C|DSK +#199|Hedge Shredder|R|DSK +#200|Valgavoth's Lair|R|DSK +#201|Diversion Specialist|U|DSK +#202|Ghostly Keybearer|U|DSK +#203|Intruding Soulrager|U|DSK +#204|Miasma Demon|U|DSK +#205|Saw|U|DSK +#206|Violent Urge|U|DSK +#207|Peculiar Lighthouse|C|DSK +#208|Razortrap Gorge|C|DSK +#209|Boilerbilges Ripper|C|DSK +#210|Cautious Survivor|C|DSK +#211|Cryptid Inspector|C|DSK +#212|Daggermaw Megalodon|C|DSK +#213|Erratic Apparition|C|DSK +#214|Spectral Snatcher|C|DSK +#215|Nashi, Searcher in the Dark|R|DSK +#216|Fear of Exposure|U|DSK +#217|Neglected Manor|C|DSK +#218|Collected Company|M|DSK +#219|Derelict Attic Widow's Walk|C|DSK +#220|Possessed Goat|C|DSK +#221|Central Elevator Promising Stairs|R|DSK +#222|Dashing Bloodsucker|U|DSK +#223|Skullsnap Nuisance|U|DSK +#224|Etched Cornfield|C|DSK +#225|Appendage Amalgam|C|DSK +#226|Clammy Prowler|C|DSK +#227|Cracked Skull|C|DSK +#228|Creeping Peeper|C|DSK +#229|Friendly Teddy|C|DSK +#230|Resurrected Cultist|C|DSK +#231|Shepherding Spirits|C|DSK +#232|Enduring Tenacity|R|DSK +#233|Haunted Screen|U|DSK +#234|Infernal Phantom|U|DSK +#235|Pyroclasm|U|DSK +#236|Bear Trap|C|DSK +#237|Enter the Enigma|C|DSK +#238|Living Phone|C|DSK +#239|Malevolent Chandelier|C|DSK +#240|Killer's Mask|U|DSK +#241|Scrabbling Skullcrab|U|DSK +#242|Bedhead Beastie|C|DSK +#243|Fear of the Dark|C|DSK +#244|Give In to Violence|C|DSK +#245|Baseball Bat|U|DSK +#246|Fear of Failed Tests|U|DSK +#247|Keys to the House|U|DSK +#248|Savior of the Small|U|DSK +#249|Shrewd Storyteller|U|DSK +#250|Anthropede|C|DSK +#251|Balemurk Leech|C|DSK +#252|Marvin, Murderous Mimic|R|DSK +#253|Victor, Valgavoth's Seneschal|R|DSK +#254|Cackling Slasher|C|DSK +#255|Rampaging Soulrager|C|DSK +#256|Charred Foyer Warped Space|M|DSK +#257|Meathook Massacre II|M|DSK +#258|Walk-In Closet Forgotten Cellar|M|DSK +#259|Cursed Recording|R|DSK +#260|Dazzling Theater Prop Room|R|DSK +#261|Demonic Counsel|R|DSK +#262|Doomsday Excruciator|R|DSK +#263|Grievous Wound|R|DSK +#264|Kona, Rescue Beastie|R|DSK +#265|Marina Vendrell|R|DSK +#266|Winter, Misanthropic Guide|R|DSK +#267|Attack-in-the-Box|U|DSK +#268|Greenhouse Rickety Gazebo|U|DSK +#269|Unwanted Remake|U|DSK +#270|Leyline of Hope|R|DSK +#271|Leyline of Mutation|R|DSK +#272|Leyline of Resonance|R|DSK +#273|Leyline of the Void|R|DSK +#274|Leyline of Transformation|R|DSK +#275|Marina Vendrell's Grimoire|R|DSK +#276|The Tale of Tamiyo|R|DSK +#277|Noxious Revival|M|DSK +#278|Maddening Hex|M|DSK +#279|Sacrifice|M|DSK +#280|Expropriate|M|DSK +#281|Soul Warden|M|DSK +#282|Forest|C|DSK +#283|Mountain|C|DSK +#284|Swamp|C|DSK +#285|Island|C|DSK +#286|Plains|C|DSK diff --git a/forge-gui/res/editions/Duskmourn House of Horror.txt b/forge-gui/res/editions/Duskmourn House of Horror.txt index 0289eaaf0a7..492ed5490fd 100644 --- a/forge-gui/res/editions/Duskmourn House of Horror.txt +++ b/forge-gui/res/editions/Duskmourn House of Horror.txt @@ -4,6 +4,42 @@ Date=2024-09-27 Name=Duskmourn: House of Horror Type=Expansion ScryfallCode=DSK +# Lurking evil treatment for Commons and Uncommons is 1 in 4, but only relevant for 6 total cards so isn't handled +# https://mtgscribe.com/2024/09/01/play-booster-fact-sheet-duskmourn/ +BoosterSlots=Common,Common-Guest,Uncommon,RareMythic,AnyLand,Wildcard +Booster=6 Common, 1 Common-Guest, 3 Uncommon, 1 RareMythic, 1 AnyLand, 1 Wildcard, 1 Wildcard+ +Prerelease=6 Boosters, 1 RareMythic+ +BoosterBox=36 Boosters + +[Common] +Base=Common:fromSheet("DSK cards") + +[Common-Guest] +Base=Common:fromSheet("DSK cards") +Replace=.015625F fromSheet("DSK special guests") + +[Uncommon] +Base=Uncommon:fromSheet("DSK cards") + +[RareMythic] +Base=RareMythic:fromSheet("DSK cards") +# Someone needs to do the replace math here +#Replace=.082F fromSheet("DSK borderless") +#Replace=.014F fromSheet("DSK showcase") + +[AnyLand] +Base=Land:Common:fromSheet("DSK cards") +Replace=.10F Land:Common:fromSheet("DSK cards")+ +Replace=.267F Land:fromSheet("DSK cards") +Replace=.067F Land:fromSheet("DSK cards")+ +Replace=.133F Land:Rare:fromSheet("DSK cards")+ +Replace=.033F Land:Rare:fromSheet("DSK cards")+ + +[Wildcard] +Base=Common:fromSheet("DSK cards") +# I don't know about these numbers, so i'm just copying them from BLB +Replace=.417F Uncommon:fromSheet("DSK cards") +Replace=.078F RareMythic:fromSheet("DSK cards") [cards] 1 C Acrobatic Cheerleader @Julia Metzger @@ -438,6 +474,19 @@ ScryfallCode=DSK [buy a box] 417 R Twitching Doll @John Tedrick +[special guests] +1 Collected Company|SPG +1 Damnation|SPG +1 Expropriate|SPG +1 Hallowed Haunting|SPG +1 Maddening Hex|SPG +1 Noxious Revival|SPG +1 Phantasmal Image|SPG +1 Sacrifice|SPG +1 Soul Warden|SPG +1 Unholy Heat|SPG + + [tokens] b_2_2_e_horror b_6_6_demon_flying diff --git a/forge-gui/tools/RankingScraper.py b/forge-gui/tools/RankingScraper.py index 455b02698f8..83b29d74c00 100644 --- a/forge-gui/tools/RankingScraper.py +++ b/forge-gui/tools/RankingScraper.py @@ -1,8 +1,10 @@ +import argparse import json import requests -import argparse -def draftsimRankings(edition='KHM', extra=None): + +def draftsimRankings(edition='DSK', extra=None): + edition = edition.upper() url1 = 'https://draftsim.com/generated/%s/' % (edition) url2 = '%s' % edition url = url1 + url2 + '.js' @@ -34,7 +36,7 @@ def draftsimRankings(edition='KHM', extra=None): txt3 = txt + txt2 txt3 = txt3.replace(u'\xa9', '') - # print(txt3) + print(txt3) cardlist = json.loads(txt3) From 8669859706a5e667bf6f52566ecb889ce08759d3 Mon Sep 17 00:00:00 2001 From: Chris H Date: Sun, 13 Oct 2024 17:30:10 -0400 Subject: [PATCH 35/91] Accidentally pushed --- forge-gui/res/editions/Duskmourn House of Horror.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui/res/editions/Duskmourn House of Horror.txt b/forge-gui/res/editions/Duskmourn House of Horror.txt index 492ed5490fd..6efde85c4cb 100644 --- a/forge-gui/res/editions/Duskmourn House of Horror.txt +++ b/forge-gui/res/editions/Duskmourn House of Horror.txt @@ -9,7 +9,7 @@ ScryfallCode=DSK BoosterSlots=Common,Common-Guest,Uncommon,RareMythic,AnyLand,Wildcard Booster=6 Common, 1 Common-Guest, 3 Uncommon, 1 RareMythic, 1 AnyLand, 1 Wildcard, 1 Wildcard+ Prerelease=6 Boosters, 1 RareMythic+ -BoosterBox=36 Boosters +BoosterBox=36 [Common] Base=Common:fromSheet("DSK cards") From 6859380e9ea1bc8dff06d31e41c04c235dcd46cc Mon Sep 17 00:00:00 2001 From: Dnaynu Date: Sun, 13 Oct 2024 22:26:49 +0530 Subject: [PATCH 36/91] Docs: Typo fix Corrected "[enviroment]" to "[environment]" in [README.md]. This pull request addresses a minor typo found in repository. The typo has been corrected to improve clarity and maintain the quality of the documentation. This change is purely cosmetic and does not affect functionality. --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 0a969ed0a74..e1e94874b13 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ This file is tarball, and may need to be extracted twice depending on which prog We recommend extracting to a new folder rather than on top of an existing installation. **For users who have played Forge before all of your user data is stored separately so you don't have to worry about losing it on upgrade.** -Java 8 or later is required to run Forge. Please make sure is the right version is installed in your enviroment. Check the user guide for more info. +Java 8 or later is required to run Forge. Please make sure is the right version is installed in your environment. Check the user guide for more info. For Android users, download the APK file from [Snapshot Build](https://downloads.cardforge.org/dailysnapshots/) to your device. On first run, Forge will download all needed data. @@ -47,4 +47,4 @@ You can also play against the AI in a variety of formats, such as Sealed, Draft, ## Questions If you have any questions, please join the Discord channel. Read the #rules and the frequently-asked-questions. -If your question is not answered there, feel free to ask in the #help channel. \ No newline at end of file +If your question is not answered there, feel free to ask in the #help channel. From 2a5fa9d0a5aaea10387d7a1c3dbad42286ef1413 Mon Sep 17 00:00:00 2001 From: tool4ever Date: Mon, 14 Oct 2024 08:05:24 +0200 Subject: [PATCH 37/91] Fix CardZoneTable not using the LastStates before moving (#6291) --- forge-game/src/main/java/forge/game/phase/PhaseHandler.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-game/src/main/java/forge/game/phase/PhaseHandler.java b/forge-game/src/main/java/forge/game/phase/PhaseHandler.java index 78f7dba82e5..ce824a67032 100644 --- a/forge-game/src/main/java/forge/game/phase/PhaseHandler.java +++ b/forge-game/src/main/java/forge/game/phase/PhaseHandler.java @@ -1049,6 +1049,7 @@ public class PhaseHandler implements java.io.Serializable { for (SpellAbility sa : chosenSa) { Card saHost = sa.getHostCard(); final Zone originZone = saHost.getZone(); + final CardZoneTable triggerList = new CardZoneTable(game.getLastStateBattlefield(), game.getLastStateGraveyard()); if (pPlayerPriority.getController().playChosenSpellAbility(sa)) { // 117.3c If a player has priority when they cast a spell, activate an ability, [play a land] @@ -1064,7 +1065,6 @@ public class PhaseHandler implements java.io.Serializable { // Need to check if Zone did change if (currentZone != null && originZone != null && !currentZone.equals(originZone) && (sa.isSpell() || sa.isLandAbility())) { // currently there can be only one Spell put on the Stack at once, or Land Abilities be played - final CardZoneTable triggerList = new CardZoneTable(game.getLastStateBattlefield(), game.getLastStateGraveyard()); triggerList.put(originZone.getZoneType(), currentZone.getZoneType(), saHost); triggerList.triggerChangesZoneAll(game, sa); } From 0df84b91f22c3961765fd390e29c5c7e481dcc0e Mon Sep 17 00:00:00 2001 From: tool4ever Date: Mon, 14 Oct 2024 08:33:41 +0200 Subject: [PATCH 38/91] Support recursive check for tokens that create others (#6315) --- forge-core/src/main/java/forge/card/DeckHints.java | 2 +- forge-gui/res/cardsfolder/a/ardent_dustspeaker.txt | 2 +- forge-gui/res/cardsfolder/a/arni_metalbrow.txt | 4 ++-- forge-gui/res/cardsfolder/b/belligerent_whiptail.txt | 2 +- forge-gui/res/cardsfolder/b/blight_herder.txt | 2 +- forge-gui/res/cardsfolder/b/bloodroot_apothecary.txt | 2 +- forge-gui/res/cardsfolder/b/bull_rush_bruiser.txt | 2 +- forge-gui/res/cardsfolder/c/canonized_in_blood.txt | 2 +- forge-gui/res/cardsfolder/d/down_for_repairs.txt | 2 +- forge-gui/res/cardsfolder/f/fledgling_griffin.txt | 2 +- forge-gui/res/cardsfolder/f/flood_of_tears.txt | 2 +- forge-gui/res/cardsfolder/f/flotsam_jetsam.txt | 2 +- forge-gui/res/cardsfolder/f/foundry_of_the_consuls.txt | 2 +- forge-gui/res/cardsfolder/f/frostling.txt | 2 +- forge-gui/res/cardsfolder/g/ghalta_and_mavren.txt | 2 +- forge-gui/res/cardsfolder/g/gonti_lord_of_luxury.txt | 2 +- forge-gui/res/cardsfolder/g/grinning_totem.txt | 2 +- forge-gui/res/cardsfolder/g/gwyllion_hedge_mage.txt | 4 ++-- forge-gui/res/cardsfolder/h/hag_hedge_mage.txt | 4 ++-- forge-gui/res/cardsfolder/h/harbor_guardian.txt | 4 ++-- forge-gui/res/cardsfolder/i/intellect_devourer.txt | 2 +- .../i/invasion_of_kylem_valors_reach_tag_team.txt | 2 +- forge-gui/res/cardsfolder/j/judge_unworthy.txt | 2 +- forge-gui/res/cardsfolder/k/kiora_bests_the_sea_god.txt | 2 +- forge-gui/res/cardsfolder/k/krenko_tin_street_kingpin.txt | 2 +- forge-gui/res/cardsfolder/l/leech_bonder.txt | 2 +- forge-gui/res/cardsfolder/l/lightning_runner.txt | 2 +- forge-gui/res/cardsfolder/l/lilianas_influence.txt | 2 +- forge-gui/res/cardsfolder/l/longhorn_firebeast.txt | 5 ++--- forge-gui/res/cardsfolder/m/mindleech_ghoul.txt | 2 +- forge-gui/res/cardsfolder/m/misfortune.txt | 5 ++--- forge-gui/res/cardsfolder/m/mordor_on_the_march.txt | 2 +- forge-gui/res/cardsfolder/o/oath_of_the_grey_host.txt | 2 +- forge-gui/res/cardsfolder/p/phyrexian_missionary.txt | 2 +- .../res/cardsfolder/p/pious_evangel_wayward_disciple.txt | 2 +- forge-gui/res/cardsfolder/q/quartzwood_crasher.txt | 2 +- forge-gui/res/cardsfolder/q/quest_for_the_gravelord.txt | 2 +- forge-gui/res/cardsfolder/r/rags_riches.txt | 2 +- forge-gui/res/cardsfolder/r/ral_and_the_implicit_maze.txt | 2 +- forge-gui/res/cardsfolder/r/rampaging_yao_guai.txt | 2 +- forge-gui/res/cardsfolder/r/revival_experiment.txt | 2 +- .../r/rona_herald_of_invasion_rona_tolarian_obliterator.txt | 2 +- forge-gui/res/cardsfolder/r/rose_room_treasurer.txt | 2 +- forge-gui/res/cardsfolder/r/rousing_refrain.txt | 2 +- forge-gui/res/cardsfolder/s/shark_typhoon.txt | 4 ++-- forge-gui/res/cardsfolder/s/sibilant_spirit.txt | 4 ++-- forge-gui/res/cardsfolder/s/skeleton_ship.txt | 2 +- forge-gui/res/cardsfolder/s/skullcap_snail.txt | 2 +- forge-gui/res/cardsfolder/s/soul_guide_lantern.txt | 2 +- forge-gui/res/cardsfolder/s/spawning_bed.txt | 2 +- forge-gui/res/cardsfolder/s/sword_of_forge_and_frontier.txt | 2 +- forge-gui/res/cardsfolder/t/tenth_district_hero.txt | 2 +- forge-gui/res/cardsfolder/t/the_infamous_cruelclaw.txt | 2 +- forge-gui/res/cardsfolder/t/transmogrify.txt | 2 +- forge-gui/res/cardsfolder/upcoming/i_am_untouchable.txt | 2 +- .../res/cardsfolder/upcoming/no_secret_is_hidden_from_me.txt | 4 ++-- forge-gui/res/cardsfolder/v/vault_87_forced_evolution.txt | 2 +- forge-gui/res/cardsfolder/v/verdant_succession.txt | 2 +- forge-gui/res/cardsfolder/v/vessel_of_ephemera.txt | 2 +- forge-gui/res/cardsfolder/v/vivien_natures_avenger.txt | 2 +- forge-gui/res/cardsfolder/y/yaroks_fenlurker.txt | 2 +- 61 files changed, 70 insertions(+), 72 deletions(-) diff --git a/forge-core/src/main/java/forge/card/DeckHints.java b/forge-core/src/main/java/forge/card/DeckHints.java index ef38a23da89..6b7d2b0435a 100644 --- a/forge-core/src/main/java/forge/card/DeckHints.java +++ b/forge-core/src/main/java/forge/card/DeckHints.java @@ -224,7 +224,7 @@ public class DeckHints { return true; } for (String tok : card.getTokens()) { - if (tdb != null && tdb.containsRule(tok) && predicate.apply(tdb.getToken(tok).getRules())) { + if (tdb != null && tdb.containsRule(tok) && rulesWithTokens(predicate).apply(tdb.getToken(tok).getRules())) { return true; } } diff --git a/forge-gui/res/cardsfolder/a/ardent_dustspeaker.txt b/forge-gui/res/cardsfolder/a/ardent_dustspeaker.txt index bdd23d331d9..d6c7dac808f 100644 --- a/forge-gui/res/cardsfolder/a/ardent_dustspeaker.txt +++ b/forge-gui/res/cardsfolder/a/ardent_dustspeaker.txt @@ -3,7 +3,7 @@ ManaCost:4 R Types:Creature Minotaur Shaman PT:3/4 T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ ABImpulse | TriggerZones$ Battlefield | TriggerDescription$ Whenever CARDNAME attacks, you may put an instant or sorcery card from your graveyard on the bottom of your library. If you do, exile the top two cards of your library. You may play those cards this turn. -SVar:ABImpulse:AB$ Dig | Cost$ PutCardToLibFromGrave<1/-1/Sorcery;Instant> | Defined$ You | DigNum$ 2 | ChangeNum$ All | DestinationZone$ Exile | SubAbility$ DBEffect | RememberChanged$ True | SubAbility$ DBEffect | SpellDescription$ Exile the top two cards of your library. You may play those cards this turn. +SVar:ABImpulse:AB$ Dig | Cost$ PutCardToLibFromGrave<1/-1/Sorcery;Instant> | Defined$ You | DigNum$ 2 | ChangeNum$ All | DestinationZone$ Exile | RememberChanged$ True | SubAbility$ DBEffect | SpellDescription$ Exile the top two cards of your library. You may play those cards this turn. SVar:DBEffect:DB$ Effect | RememberObjects$ RememberedCard | StaticAbilities$ Play | SubAbility$ DBCleanup | ForgetOnMoved$ Exile SVar:Play:Mode$ Continuous | MayPlay$ True | EffectZone$ Command | Affected$ Card.IsRemembered | AffectedZone$ Exile | Description$ You may play the exiled cards this turn. SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True diff --git a/forge-gui/res/cardsfolder/a/arni_metalbrow.txt b/forge-gui/res/cardsfolder/a/arni_metalbrow.txt index 120e098a13a..5ecd15d22a2 100644 --- a/forge-gui/res/cardsfolder/a/arni_metalbrow.txt +++ b/forge-gui/res/cardsfolder/a/arni_metalbrow.txt @@ -4,8 +4,8 @@ Types:Legendary Creature Human Berserker PT:3/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.YouCtrl+attacking | TriggerZones$ Battlefield | Execute$ TrigChangeZoneBis | TriggerDescription$ Whenever a creature you control attacks or a creature you control enters attacking, you may pay {1}{R}. If you do, you may put a creature card with mana value less than that creature's mana value from your hand onto the battlefield tapped and attacking. T:Mode$ Attacks | ValidCard$ Creature.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigChangeZone | Secondary$ True | TriggerDescription$ Whenever a creature you control attacks or a creature you control enters attacking, you may pay {1}{R}. If you do, you may put a creature card with mana value less than that creature's mana value from your hand onto the battlefield tapped and attacking. -SVar:TrigChangeZone:AB$ ChangeZone | Cost$ 1 R | Origin$ Hand | ChangeNum$ 1 | Destination$ Battlefield | ChangeType$ Creature.cmcLTX+YouCtrl | ChangeNum$ 1 | Tapped$ True | Attacking$ True -SVar:TrigChangeZoneBis:AB$ ChangeZone | Cost$ 1 R | Origin$ Hand | ChangeNum$ 1 | Destination$ Battlefield | ChangeType$ Creature.cmcLTY+YouCtrl | ChangeNum$ 1 | Tapped$ True | Attacking$ True +SVar:TrigChangeZone:AB$ ChangeZone | Cost$ 1 R | Origin$ Hand | Destination$ Battlefield | ChangeType$ Creature.cmcLTX+YouCtrl | ChangeNum$ 1 | Tapped$ True | Attacking$ True +SVar:TrigChangeZoneBis:AB$ ChangeZone | Cost$ 1 R | Origin$ Hand | Destination$ Battlefield | ChangeType$ Creature.cmcLTY+YouCtrl | ChangeNum$ 1 | Tapped$ True | Attacking$ True SVar:X:TriggeredAttacker$CardManaCost SVar:Y:TriggeredCard$CardManaCost Oracle:Whenever a creature you control attacks or a creature you control enters attacking, you may pay {1}{R}. If you do, you may put a creature card with mana value less than that creature's mana value from your hand onto the battlefield tapped and attacking. diff --git a/forge-gui/res/cardsfolder/b/belligerent_whiptail.txt b/forge-gui/res/cardsfolder/b/belligerent_whiptail.txt index c63cb7c4868..c7a9e238321 100644 --- a/forge-gui/res/cardsfolder/b/belligerent_whiptail.txt +++ b/forge-gui/res/cardsfolder/b/belligerent_whiptail.txt @@ -3,6 +3,6 @@ ManaCost:3 R Types:Creature Wurm PT:4/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.YouCtrl | Execute$ TrigPump | TriggerZones$ Battlefield | TriggerDescription$ Landfall — Whenever a land you control enters, CARDNAME gains first strike until end of turn. -SVar:TrigPump:DB$ Pump | Defined$ Self | KW$ First Strike | Defined$ Self +SVar:TrigPump:DB$ Pump | Defined$ Self | KW$ First Strike SVar:BuffedBy:Land Oracle:Landfall — Whenever a land you control enters, Belligerent Whiptail gains first strike until end of turn. diff --git a/forge-gui/res/cardsfolder/b/blight_herder.txt b/forge-gui/res/cardsfolder/b/blight_herder.txt index 6ace632c508..92ca2444ba3 100644 --- a/forge-gui/res/cardsfolder/b/blight_herder.txt +++ b/forge-gui/res/cardsfolder/b/blight_herder.txt @@ -2,7 +2,7 @@ Name:Blight Herder ManaCost:5 Types:Creature Eldrazi Processor PT:4/5 -T:Mode$ SpellCast | ValidCard$ Card.Self | OptionalDecider$ You | Execute$ TrigToken | OptionalDecider$ You | TriggerDescription$ When you cast this spell, you may put two cards your opponents own from exile into their owners' graveyards. If you do, create three 1/1 colorless Eldrazi Scion creature tokens. They have "Sacrifice this creature: Add {C}." +T:Mode$ SpellCast | ValidCard$ Card.Self | Execute$ TrigToken | OptionalDecider$ You | TriggerDescription$ When you cast this spell, you may put two cards your opponents own from exile into their owners' graveyards. If you do, create three 1/1 colorless Eldrazi Scion creature tokens. They have "Sacrifice this creature: Add {C}." SVar:TrigToken:AB$ Token | Cost$ ExiledMoveToGrave<2/Card.OppOwn/cards your opponents own> | TokenAmount$ 3 | TokenScript$ c_1_1_eldrazi_scion_sac | TokenOwner$ You DeckHints:Keyword$Ingest & Type$Eldrazi DeckHas:Ability$Mana.Colorless|Token diff --git a/forge-gui/res/cardsfolder/b/bloodroot_apothecary.txt b/forge-gui/res/cardsfolder/b/bloodroot_apothecary.txt index 5f18522f1eb..a95db70102f 100644 --- a/forge-gui/res/cardsfolder/b/bloodroot_apothecary.txt +++ b/forge-gui/res/cardsfolder/b/bloodroot_apothecary.txt @@ -4,7 +4,7 @@ Types:Creature Squirrel Druid PT:3/3 K:Toxic:2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ WWen CARDNAME enters, you and target opponent each create a Treasure token. -SVar:TrigToken:DB$ Token | TokenAmount$ 1 | ValidTgts$ Opponent | TokenOwner$ TargetedAndYou | TokenAmount$ 1 | TokenScript$ c_a_treasure_sac | SpellDescription$ You and target opponent each create a Food token. +SVar:TrigToken:DB$ Token | TokenAmount$ 1 | ValidTgts$ Opponent | TokenOwner$ TargetedAndYou | TokenScript$ c_a_treasure_sac | SpellDescription$ You and target opponent each create a Food token. T:Mode$ Sacrificed | ValidCard$ Permanent.token+nonCreature | ValidPlayer$ Opponent | Execute$ TrigPoison | TriggerZones$ Battlefield | TriggerDescription$ Whenever an opponent sacrifices a noncreature token, that player gets two poison counters. SVar:TrigPoison:DB$ Poison | Defined$ TriggeredCardController | Num$ 2 Oracle:Toxic 2 (Players dealt combat damage by this creature also get two poison counters. A player with ten or more poison counters loses the game.)\nWhen Bloodroot Apothecary enters, you and target opponent each create a Treasure token.\nWhenever an opponent sacrifices a noncreature token, that player gets two poison counters. diff --git a/forge-gui/res/cardsfolder/b/bull_rush_bruiser.txt b/forge-gui/res/cardsfolder/b/bull_rush_bruiser.txt index 212a3050bcc..19819bafa38 100644 --- a/forge-gui/res/cardsfolder/b/bull_rush_bruiser.txt +++ b/forge-gui/res/cardsfolder/b/bull_rush_bruiser.txt @@ -3,6 +3,6 @@ ManaCost:3 R Types:Creature Minotaur Warrior PT:4/3 T:Mode$ Attacks | ValidCard$ Card.Self | IsPresent$ Warrior.Other+YourTeamCtrl | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ Whenever CARDNAME attacks, if your team controls another Warrior, CARDNAME gains first strike until end of turn. -SVar:TrigPump:DB$ Pump | Defined$ Self | KW$ First Strike | Defined$ Self +SVar:TrigPump:DB$ Pump | Defined$ Self | KW$ First Strike SVar:BuffedBy:Warrior Oracle:Whenever Bull-Rush Bruiser attacks, if your team controls another Warrior, Bull-Rush Bruiser gains first strike until end of turn. diff --git a/forge-gui/res/cardsfolder/c/canonized_in_blood.txt b/forge-gui/res/cardsfolder/c/canonized_in_blood.txt index ba0342682fa..b40be9a2f5e 100644 --- a/forge-gui/res/cardsfolder/c/canonized_in_blood.txt +++ b/forge-gui/res/cardsfolder/c/canonized_in_blood.txt @@ -3,7 +3,7 @@ ManaCost:1 B Types:Enchantment T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You.descended | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ At the beginning of your end step, if you descended this turn, put a +1/+1 counter on target creature you control. (You descended if a permanent card was put into your graveyard from anywhere.) SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterNum$ 1 | CounterType$ P1P1 -A:AB$ Token | Cost$ 5 B B Sac<1/CARDNAME> | TokenOwner$ You | TokenScript$ wb_4_3_vampire_demon_flying | TokenOwner$ You | SpellDescription$ Create a 4/3 white and black Vampire Demon creature token with flying. +A:AB$ Token | Cost$ 5 B B Sac<1/CARDNAME> | TokenScript$ wb_4_3_vampire_demon_flying | TokenOwner$ You | SpellDescription$ Create a 4/3 white and black Vampire Demon creature token with flying. DeckHas:Ability$Sacrifice|Token|Counters & Type$Vampire|Demon DeckHints:Ability$Mill|Sacrifice Oracle:At the beginning of your end step, if you descended this turn, put a +1/+1 counter on target creature you control. (You descended if a permanent card was put into your graveyard from anywhere.)\n{5}{B}{B}, Sacrifice Canonized in Blood: Create a 4/3 white and black Vampire Demon creature token with flying. diff --git a/forge-gui/res/cardsfolder/d/down_for_repairs.txt b/forge-gui/res/cardsfolder/d/down_for_repairs.txt index bf049af5c29..e0f2e3fb75d 100644 --- a/forge-gui/res/cardsfolder/d/down_for_repairs.txt +++ b/forge-gui/res/cardsfolder/d/down_for_repairs.txt @@ -2,5 +2,5 @@ Name:Down for Repairs ManaCost:2 B Types:Sorcery A:SP$ Discard | ValidTgts$ Player | NumCards$ 1 | DiscardValid$ Card.nonLand | Mode$ RevealYouChoose | SubAbility$ DBDestroy | SpellDescription$ Target opponent reveals their hand. You choose a nonland card from it. That player discards that card. Destroy up to one target Attraction that player controls. (It's put into their junkyard.) -SVar:DBDestroy:DB$ Destroy | TgtPrompt$ Select up to one target attraction that player controls | TgtPrompt$ Attraction.TargetedPlayerCtrl | TargetMin$ 0 | TargetMax$ 1 +SVar:DBDestroy:DB$ Destroy | TgtPrompt$ Select up to one target attraction that player controls | ValidTgts$ Attraction.TargetedPlayerCtrl | TargetMin$ 0 | TargetMax$ 1 Oracle:Target opponent reveals their hand. You choose a nonland card from it. That player discards that card. Destroy up to one target Attraction that player controls. (It's put into their junkyard.) diff --git a/forge-gui/res/cardsfolder/f/fledgling_griffin.txt b/forge-gui/res/cardsfolder/f/fledgling_griffin.txt index 956f1f70fd1..1bbddb639fd 100644 --- a/forge-gui/res/cardsfolder/f/fledgling_griffin.txt +++ b/forge-gui/res/cardsfolder/f/fledgling_griffin.txt @@ -3,6 +3,6 @@ ManaCost:1 W Types:Creature Griffin PT:2/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.YouCtrl | Execute$ TrigPump | TriggerZones$ Battlefield | TriggerDescription$ Landfall — Whenever a land you control enters, CARDNAME gains flying until end of turn. -SVar:TrigPump:DB$ Pump | Defined$ Self | KW$ Flying | Defined$ Self +SVar:TrigPump:DB$ Pump | Defined$ Self | KW$ Flying SVar:BuffedBy:Land Oracle:Landfall — Whenever a land you control enters, Fledgling Griffin gains flying until end of turn. diff --git a/forge-gui/res/cardsfolder/f/flood_of_tears.txt b/forge-gui/res/cardsfolder/f/flood_of_tears.txt index e821f9257b1..529f31bdafe 100644 --- a/forge-gui/res/cardsfolder/f/flood_of_tears.txt +++ b/forge-gui/res/cardsfolder/f/flood_of_tears.txt @@ -2,6 +2,6 @@ Name:Flood of Tears ManaCost:4 U U Types:Sorcery A:SP$ ChangeZoneAll | ChangeType$ Permanent.nonLand | Origin$ Battlefield | Destination$ Hand | RememberChanged$ True | SubAbility$ DBChangeZone | SpellDescription$ Return all nonland permanents to their owners' hands. If you return four or more nontoken permanents you control this way, you may put a permanent card from your hand onto the battlefield. -SVar:DBChangeZone:DB$ ChangeZone | Optional$ True | Origin$ Hand | Destination$ Battlefield | ChangeType$ Permanent.YouCtrl | Optional$ True | ChangeNum$ 1 | ConditionDefined$ Remembered | ConditionPresent$ Permanent.nonToken+YouCtrl | ConditionCompare$ GE4 | SubAbility$ DBCleanup +SVar:DBChangeZone:DB$ ChangeZone | Origin$ Hand | Destination$ Battlefield | ChangeType$ Permanent.YouCtrl | Optional$ True | ChangeNum$ 1 | ConditionDefined$ Remembered | ConditionPresent$ Permanent.nonToken+YouCtrl | ConditionCompare$ GE4 | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True Oracle:Return all nonland permanents to their owners' hands. If you return four or more nontoken permanents you control this way, you may put a permanent card from your hand onto the battlefield. diff --git a/forge-gui/res/cardsfolder/f/flotsam_jetsam.txt b/forge-gui/res/cardsfolder/f/flotsam_jetsam.txt index 85040265869..affc9da099f 100644 --- a/forge-gui/res/cardsfolder/f/flotsam_jetsam.txt +++ b/forge-gui/res/cardsfolder/f/flotsam_jetsam.txt @@ -13,7 +13,7 @@ ALTERNATE Name:Jetsam ManaCost:4 UB UB Types:Instant -A:SP$ Mill | Defined$ Opponent | SubAbility$ DBCast | NumCards$ 3 | SubAbility$ DBCast | SpellDescription$ Each opponent mills three cards, then you may cast a spell from each opponent's graveyard without paying its mana cost. If a spell cast this way would be put into a graveyard, exile it instead. +A:SP$ Mill | Defined$ Opponent | NumCards$ 3 | SubAbility$ DBCast | SpellDescription$ Each opponent mills three cards, then you may cast a spell from each opponent's graveyard without paying its mana cost. If a spell cast this way would be put into a graveyard, exile it instead. SVar:DBCast:DB$ RepeatEach | RepeatPlayers$ Opponent | RepeatSubAbility$ DBChoose | SubAbility$ DBPlayAll SVar:DBChoose:DB$ ChooseCard | Choices$ Card.RememberedPlayerCtrl+nonLand | ChoiceZone$ Graveyard | Defined$ You | Amount$ 1 | RememberChosen$ True SVar:DBPlayAll:DB$ Play | Defined$ Remembered | Amount$ All | ValidSA$ Spell | WithoutManaCost$ True | Optional$ True | ReplaceGraveyard$ Exile | AILogic$ ReplaySpell | SubAbility$ DBCleanup diff --git a/forge-gui/res/cardsfolder/f/foundry_of_the_consuls.txt b/forge-gui/res/cardsfolder/f/foundry_of_the_consuls.txt index 95ec4ceb5dc..5742f09e08c 100644 --- a/forge-gui/res/cardsfolder/f/foundry_of_the_consuls.txt +++ b/forge-gui/res/cardsfolder/f/foundry_of_the_consuls.txt @@ -2,6 +2,6 @@ Name:Foundry of the Consuls ManaCost:no cost Types:Land A:AB$ Mana | Cost$ T | Produced$ C | SpellDescription$ Add {C}. -A:AB$ Token | Cost$ 5 T Sac<1/CARDNAME> | TokenOwner$ You | TokenAmount$ 2 | TokenScript$ c_1_1_a_thopter_flying | TokenOwner$ You | SpellDescription$ Create two 1/1 colorless Thopter artifact creature tokens with flying. +A:AB$ Token | Cost$ 5 T Sac<1/CARDNAME> | TokenOwner$ You | TokenAmount$ 2 | TokenScript$ c_1_1_a_thopter_flying | SpellDescription$ Create two 1/1 colorless Thopter artifact creature tokens with flying. DeckHas:Ability$Mana.Colorless|Token Oracle:{T}: Add {C}.\n{5}, {T}, Sacrifice Foundry of the Consuls: Create two 1/1 colorless Thopter artifact creature tokens with flying. diff --git a/forge-gui/res/cardsfolder/f/frostling.txt b/forge-gui/res/cardsfolder/f/frostling.txt index 09d918fd62b..3c4716b2c5c 100644 --- a/forge-gui/res/cardsfolder/f/frostling.txt +++ b/forge-gui/res/cardsfolder/f/frostling.txt @@ -2,5 +2,5 @@ Name:Frostling ManaCost:R Types:Creature Spirit PT:1/1 -A:AB$ DealDamage | Cost$ Sac<1/CARDNAME> | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumDmg$ 1 | TgtPrompt$ Select target creature | SpellDescription$ It deals 1 damage to target creature. +A:AB$ DealDamage | Cost$ Sac<1/CARDNAME> | ValidTgts$ Creature | NumDmg$ 1 | SpellDescription$ It deals 1 damage to target creature. Oracle:Sacrifice Frostling: It deals 1 damage to target creature. diff --git a/forge-gui/res/cardsfolder/g/ghalta_and_mavren.txt b/forge-gui/res/cardsfolder/g/ghalta_and_mavren.txt index 12e6115b223..d4d694b017f 100644 --- a/forge-gui/res/cardsfolder/g/ghalta_and_mavren.txt +++ b/forge-gui/res/cardsfolder/g/ghalta_and_mavren.txt @@ -5,7 +5,7 @@ PT:12/12 K:Trample T:Mode$ AttackersDeclared | AttackingPlayer$ You | Execute$ TrigCharm | TriggerZones$ Battlefield | TriggerDescription$ Whenever you attack, ABILITY SVar:TrigCharm:DB$ Charm | CharmNum$ 1 | Choices$ DBDino,DBVampire -SVar:DBDino:DB$ Token | TokenAmount$ 1 | TokenOwner$ You | TokenScript$ g_x_x_dinosaur_trample | TokenPower$ X | TokenToughness$ X | TokenTapped$ True | TokenAttacking$ True | TokenOwner$ You | SpellDescription$ Create a tapped and attacking X/X green Dinosaur creature token with trample, where X is the greatest power among other attacking creatures. +SVar:DBDino:DB$ Token | TokenAmount$ 1 | TokenScript$ g_x_x_dinosaur_trample | TokenPower$ X | TokenToughness$ X | TokenTapped$ True | TokenAttacking$ True | TokenOwner$ You | SpellDescription$ Create a tapped and attacking X/X green Dinosaur creature token with trample, where X is the greatest power among other attacking creatures. SVar:DBVampire:DB$ Token | TokenAmount$ Y | TokenScript$ w_1_1_vampire_lifelink | TokenOwner$ You | SpellDescription$ Create X 1/1 white Vampire creature tokens with lifelink, where X is the number of other attacking creatures. SVar:X:Count$Valid Creature.YouCtrl+Other+attacking$GreatestPower SVar:Y:Count$Valid Creature.attacking+Other diff --git a/forge-gui/res/cardsfolder/g/gonti_lord_of_luxury.txt b/forge-gui/res/cardsfolder/g/gonti_lord_of_luxury.txt index 78bd96324bd..505d7b81cd9 100644 --- a/forge-gui/res/cardsfolder/g/gonti_lord_of_luxury.txt +++ b/forge-gui/res/cardsfolder/g/gonti_lord_of_luxury.txt @@ -4,7 +4,7 @@ Types:Legendary Creature Aetherborn Rogue PT:2/3 K:Deathtouch T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDig | TriggerDescription$ When CARDNAME enters, look at the top four cards of target opponent's library, exile one of them face down, then put the rest on the bottom of that library in a random order. For as long as that card remains exiled, you may look at it, you may cast it, and you may spend mana as though it were mana of any type to cast that spell. -SVar:TrigDig:DB$ Dig | ValidTgts$ Opponent | DigNum$ 4 | ChangeNum$ 1 | DestinationZone$ Exile | DestinationZone2$ Library | LibraryPosition$ -1 | RestRandomOrder$ True | ExileFaceDown$ True | ChangeValid$ Card | RememberChanged$ True | SubAbility$ DBEffect | RememberChanged$ True +SVar:TrigDig:DB$ Dig | ValidTgts$ Opponent | DigNum$ 4 | ChangeNum$ 1 | DestinationZone$ Exile | DestinationZone2$ Library | LibraryPosition$ -1 | RestRandomOrder$ True | ExileFaceDown$ True | ChangeValid$ Card | RememberChanged$ True | SubAbility$ DBEffect SVar:DBEffect:DB$ Effect | RememberObjects$ Remembered | StaticAbilities$ STPlay1,STPlay2 | Duration$ Permanent | ForgetOnMoved$ Exile | SubAbility$ DBCleanup SVar:STPlay1:Mode$ Continuous | MayLookAt$ You | EffectZone$ Command | Affected$ Card.IsRemembered | AffectedZone$ Exile | Description$ You may look at the card, you may cast it, and you may spend mana as though it were mana of any type to cast that spell. SVar:STPlay2:Mode$ Continuous | MayPlay$ True | MayPlayIgnoreType$ True | EffectZone$ Command | Affected$ Card.IsRemembered+nonLand | AffectedZone$ Exile | Secondary$ True | Description$ You may look at the card, you may cast it, and you may spend mana as though it were mana of any type to cast that spell. diff --git a/forge-gui/res/cardsfolder/g/grinning_totem.txt b/forge-gui/res/cardsfolder/g/grinning_totem.txt index 5c4bf0ef0fd..125b1c544a6 100644 --- a/forge-gui/res/cardsfolder/g/grinning_totem.txt +++ b/forge-gui/res/cardsfolder/g/grinning_totem.txt @@ -1,7 +1,7 @@ Name:Grinning Totem ManaCost:4 Types:Artifact -A:AB$ ChangeZone | Cost$ 2 T Sac<1/CARDNAME> | ValidTgts$ Opponent | IsCurse$ True | Chooser$ You | Origin$ Library | Destination$ Exile | ChangeType$ Card | ChangeNum$ 1 | IsCurse$ True | RememberChanged$ True | SubAbility$ TotemEffect | SpellDescription$ Search target opponent's library for a card and exile it. Then that player shuffles. | StackDescription$ {p:You} searches {p:Targeted}'s library for a card and exiles it. Then {p:Targeted} shuffles. +A:AB$ ChangeZone | Cost$ 2 T Sac<1/CARDNAME> | ValidTgts$ Opponent | Chooser$ You | Origin$ Library | Destination$ Exile | ChangeType$ Card | ChangeNum$ 1 | IsCurse$ True | RememberChanged$ True | SubAbility$ TotemEffect | SpellDescription$ Search target opponent's library for a card and exile it. Then that player shuffles. | StackDescription$ {p:You} searches {p:Targeted}'s library for a card and exiles it. Then {p:Targeted} shuffles. SVar:TotemEffect:DB$ Effect | StaticAbilities$ STGrinning | Duration$ UntilYourNextUpkeep | RememberObjects$ Remembered | ExileOnMoved$ Exile | SubAbility$ DBDelayedTrigger | SpellDescription$ Until the beginning of your next upkeep, you may play that card. SVar:STGrinning:Mode$ Continuous | Affected$ Card.IsRemembered | MayPlay$ True | EffectZone$ Command | AffectedZone$ Exile | Description$ Until the beginning of your next upkeep, you may play that card. SVar:DBDelayedTrigger:DB$ DelayedTrigger | Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | RememberObjects$ Remembered | Execute$ DBReturn | IsPresent$ Card.IsTriggerRemembered | PresentZone$ Exile | SubAbility$ DBCleanup | TriggerDescription$ At the beginning of your next upkeep, if you haven't played it, put it into its owner's graveyard. diff --git a/forge-gui/res/cardsfolder/g/gwyllion_hedge_mage.txt b/forge-gui/res/cardsfolder/g/gwyllion_hedge_mage.txt index 47ed6dafb2e..8f17f280823 100644 --- a/forge-gui/res/cardsfolder/g/gwyllion_hedge_mage.txt +++ b/forge-gui/res/cardsfolder/g/gwyllion_hedge_mage.txt @@ -2,8 +2,8 @@ Name:Gwyllion Hedge-Mage ManaCost:2 WB Types:Creature Hag Wizard PT:2/2 -T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | IsPresent$ Plains.YouCtrl | PresentCompare$ GE2 | OptionalDecider$ You | Execute$ TrigToken | OptionalDecider$ You | TriggerDescription$ When CARDNAME enters, if you control two or more Plains, you may create a 1/1 white Kithkin Soldier creature token. -T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | IsPresent$ Swamp.YouCtrl | PresentCompare$ GE2 | OptionalDecider$ You | Execute$ TrigPutCounter | OptionalDecider$ You | TriggerDescription$ When CARDNAME enters, if you control two or more Swamps, you may put a -1/-1 counter on target creature. +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | IsPresent$ Plains.YouCtrl | PresentCompare$ GE2 | OptionalDecider$ You | Execute$ TrigToken | TriggerDescription$ When CARDNAME enters, if you control two or more Plains, you may create a 1/1 white Kithkin Soldier creature token. +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | IsPresent$ Swamp.YouCtrl | PresentCompare$ GE2 | OptionalDecider$ You | Execute$ TrigPutCounter | TriggerDescription$ When CARDNAME enters, if you control two or more Swamps, you may put a -1/-1 counter on target creature. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ w_1_1_kithkin_soldier | TokenOwner$ You SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature | TgtPrompt$ Select target creature | CounterType$ M1M1 | CounterNum$ 1 | IsCurse$ True Oracle:When Gwyllion Hedge-Mage enters, if you control two or more Plains, you may create a 1/1 white Kithkin Soldier creature token.\nWhen Gwyllion Hedge-Mage enters, if you control two or more Swamps, you may put a -1/-1 counter on target creature. diff --git a/forge-gui/res/cardsfolder/h/hag_hedge_mage.txt b/forge-gui/res/cardsfolder/h/hag_hedge_mage.txt index 593e8a381c4..d0afa86f1f1 100644 --- a/forge-gui/res/cardsfolder/h/hag_hedge_mage.txt +++ b/forge-gui/res/cardsfolder/h/hag_hedge_mage.txt @@ -2,8 +2,8 @@ Name:Hag Hedge-Mage ManaCost:2 BG Types:Creature Hag Shaman PT:2/2 -T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | IsPresent$ Swamp.YouCtrl | PresentCompare$ GE2 | OptionalDecider$ You | Execute$ TrigDiscard | OptionalDecider$ You | TriggerDescription$ When CARDNAME enters, if you control two or more Swamps, you may have target player discard a card. -T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | IsPresent$ Forest.YouCtrl | PresentCompare$ GE2 | OptionalDecider$ You | Execute$ TrigChangeZone | OptionalDecider$ You | TriggerDescription$ When CARDNAME enters, if you control two or more Forests, you may put target card from your graveyard on top of your library. +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | IsPresent$ Swamp.YouCtrl | PresentCompare$ GE2 | OptionalDecider$ You | Execute$ TrigDiscard | TriggerDescription$ When CARDNAME enters, if you control two or more Swamps, you may have target player discard a card. +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | IsPresent$ Forest.YouCtrl | PresentCompare$ GE2 | OptionalDecider$ You | Execute$ TrigChangeZone | TriggerDescription$ When CARDNAME enters, if you control two or more Forests, you may put target card from your graveyard on top of your library. SVar:TrigDiscard:DB$ Discard | ValidTgts$ Player | TgtPrompt$ Select target player | NumCards$ 1 | Mode$ TgtChoose SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Library | LibraryPosition$ 0 | TgtPrompt$ Select target card in your graveyard | ValidTgts$ Card.YouCtrl Oracle:When Hag Hedge-Mage enters, if you control two or more Swamps, you may have target player discard a card.\nWhen Hag Hedge-Mage enters, if you control two or more Forests, you may put target card from your graveyard on top of your library. diff --git a/forge-gui/res/cardsfolder/h/harbor_guardian.txt b/forge-gui/res/cardsfolder/h/harbor_guardian.txt index 2e5b7069906..53a64989e00 100644 --- a/forge-gui/res/cardsfolder/h/harbor_guardian.txt +++ b/forge-gui/res/cardsfolder/h/harbor_guardian.txt @@ -3,6 +3,6 @@ ManaCost:2 W U Types:Creature Gargoyle PT:3/4 K:Reach -T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigDraw | OptionalDecider$ Opponent | Execute$ TrigDraw | TriggerDescription$ Whenever CARDNAME attacks, defending player may draw a card. -SVar:TrigDraw:DB$ Draw | Defined$ TriggeredDefendingPlayer | NumCards$ 1 +T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigDraw | TriggerDescription$ Whenever CARDNAME attacks, defending player may draw a card. +SVar:TrigDraw:DB$ Draw | Defined$ TriggeredDefendingPlayer | NumCards$ 1 | OptionalDecider$ True Oracle:Reach (This creature can block creatures with flying.)\nWhenever Harbor Guardian attacks, defending player may draw a card. diff --git a/forge-gui/res/cardsfolder/i/intellect_devourer.txt b/forge-gui/res/cardsfolder/i/intellect_devourer.txt index 73682ce3f0a..db940d9a07c 100644 --- a/forge-gui/res/cardsfolder/i/intellect_devourer.txt +++ b/forge-gui/res/cardsfolder/i/intellect_devourer.txt @@ -3,6 +3,6 @@ ManaCost:3 B Types:Creature Horror PT:2/4 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigExile | TriggerDescription$ Devour Intellect — When CARDNAME enters, each opponent exiles a card from their hand until CARDNAME leaves the battlefield. -SVar:TrigExile:DB$ ChangeZone | Origin$ Hand | Destination$ Exile | ChangeType$ Card | DefinedPlayer$ Opponent | Mandatory$ True | ChangeType$ Card | Hidden$ True | Duration$ UntilHostLeavesPlay | IsCurse$ True +SVar:TrigExile:DB$ ChangeZone | Origin$ Hand | Destination$ Exile | ChangeType$ Card | DefinedPlayer$ Opponent | Mandatory$ True | Hidden$ True | Duration$ UntilHostLeavesPlay | IsCurse$ True S:Mode$ Continuous | MayPlay$ True | MayPlayIgnoreColor$ True | Affected$ Card.ExiledWithSource | AffectedZone$ Exile | Description$ Body Thief — You may play lands and cast spells from among cards exiled with CARDNAME. If you cast a spell this way, you may spend mana as though it were mana of any color to cast it. Oracle:Devour Intellect — When Intellect Devourer enters, each opponent exiles a card from their hand until Intellect Devourer leaves the battlefield.\nBody Thief — You may play lands and cast spells from among cards exiled with Intellect Devourer. If you cast a spell this way, you may spend mana as though it were mana of any color to cast it. diff --git a/forge-gui/res/cardsfolder/i/invasion_of_kylem_valors_reach_tag_team.txt b/forge-gui/res/cardsfolder/i/invasion_of_kylem_valors_reach_tag_team.txt index 7e4386ea885..1d151bc9dc2 100644 --- a/forge-gui/res/cardsfolder/i/invasion_of_kylem_valors_reach_tag_team.txt +++ b/forge-gui/res/cardsfolder/i/invasion_of_kylem_valors_reach_tag_team.txt @@ -13,6 +13,6 @@ Name:Valor's Reach Tag Team ManaCost:no cost Colors:red,white Types:Sorcery -A:SP$ Token | TokenAmount$ 1 | TokenScript$ rw_3_2_warrior_symbiotic_attack | TokenAmount$ 2 | TokenOwner$ You | SpellDescription$ Create two 3/2 red and white Warrior creature tokens with "Whenever this creature and at least one other creature token attack, put a +1/+1 counter on this creature." +A:SP$ Token | TokenScript$ rw_3_2_warrior_symbiotic_attack | TokenAmount$ 2 | TokenOwner$ You | SpellDescription$ Create two 3/2 red and white Warrior creature tokens with "Whenever this creature and at least one other creature token attack, put a +1/+1 counter on this creature." DeckHas:Ability$Token & Type$Warrior Oracle:Create two 3/2 red and white Warrior creature tokens with "Whenever this creature and at least one other creature token attack, put a +1/+1 counter on this creature." diff --git a/forge-gui/res/cardsfolder/j/judge_unworthy.txt b/forge-gui/res/cardsfolder/j/judge_unworthy.txt index 30cd1ff25ef..9d1468fbe4e 100644 --- a/forge-gui/res/cardsfolder/j/judge_unworthy.txt +++ b/forge-gui/res/cardsfolder/j/judge_unworthy.txt @@ -3,7 +3,7 @@ ManaCost:1 W Types:Instant A:SP$ Scry | ScryNum$ 3 | SubAbility$ DBReveal | SpellDescription$ Choose target attacking or blocking creature. Scry 3, then reveal the top card of your library. CARDNAME deals damage equal to that card's mana value to that creature. SVar:DBReveal:DB$ Dig | DigNum$ 1 | Reveal$ True | DestinationZone$ Library | LibraryPosition$ 0 | SubAbility$ DBDamage -SVar:DBDamage:DB$ DealDamage | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumDmg$ X | ValidTgts$ Creature.attacking,Creature.blocking | TgtPrompt$ Select target attacking or blocking creature +SVar:DBDamage:DB$ DealDamage | NumDmg$ X | ValidTgts$ Creature.attacking,Creature.blocking | TgtPrompt$ Select target attacking or blocking creature SVar:X:Count$TopOfLibraryCMC AI:RemoveDeck:All Oracle:Choose target attacking or blocking creature. Scry 3, then reveal the top card of your library. Judge Unworthy deals damage equal to that card's mana value to that creature. diff --git a/forge-gui/res/cardsfolder/k/kiora_bests_the_sea_god.txt b/forge-gui/res/cardsfolder/k/kiora_bests_the_sea_god.txt index aa0cd4b296c..e3f9178e5ad 100644 --- a/forge-gui/res/cardsfolder/k/kiora_bests_the_sea_god.txt +++ b/forge-gui/res/cardsfolder/k/kiora_bests_the_sea_god.txt @@ -5,7 +5,7 @@ K:Chapter:3:TrigToken,TrigTap,TrigGainControl SVar:TrigToken:DB$ Token | TokenScript$ u_8_8_kraken_hexproof | SpellDescription$ Create an 8/8 blue Kraken creature token with hexproof. SVar:TrigTap:DB$ TapAll | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | ValidCards$ Permanent.nonLand | SubAbility$ DBPumpAll | SpellDescription$ Tap all nonland permanents target opponent controls. They don't untap during their controllers' next untap step. SVar:DBPumpAll:DB$ PumpAll | Defined$ Targeted | ValidCards$ Creature | KW$ HIDDEN This card doesn't untap during your next untap step. | Duration$ Permanent -SVar:TrigGainControl:DB$ GainControl | TgtPrompt$ Choose target creature | ValidTgts$ Permanent.OppCtrl | TgtPrompt$ Select target permanent an opponent controls | SubAbility$ DBUntap | SpellDescription$ Gain control of target permanent an opponent controls. Untap it. +SVar:TrigGainControl:DB$ GainControl | ValidTgts$ Permanent.OppCtrl | TgtPrompt$ Select target permanent an opponent controls | SubAbility$ DBUntap | SpellDescription$ Gain control of target permanent an opponent controls. Untap it. SVar:DBUntap:DB$ Untap | Defined$ Targeted DeckHas:Ability$Token Oracle:(As this Saga enters and after your draw step, add a lore counter. Sacrifice after III.)\nI — Create an 8/8 blue Kraken creature token with hexproof.\nII — Tap all nonland permanents target opponent controls. They don't untap during their controller's next untap step.\nIII — Gain control of target permanent an opponent controls. Untap it. diff --git a/forge-gui/res/cardsfolder/k/krenko_tin_street_kingpin.txt b/forge-gui/res/cardsfolder/k/krenko_tin_street_kingpin.txt index cf4ad0c4229..9cb313b032a 100644 --- a/forge-gui/res/cardsfolder/k/krenko_tin_street_kingpin.txt +++ b/forge-gui/res/cardsfolder/k/krenko_tin_street_kingpin.txt @@ -4,7 +4,7 @@ Types:Legendary Creature Goblin PT:1/2 T:Mode$ Attacks | ValidCard$ Creature.Self | Execute$ TrigPut | TriggerDescription$ Whenever CARDNAME attacks, put a +1/+1 counter on it, then create a number of 1/1 red Goblin creature tokens equal to NICKNAME's power. SVar:TrigPut:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBToken -SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ r_1_1_goblin | TokenOwner$ You | TokenAmount$ X +SVar:DBToken:DB$ Token | TokenScript$ r_1_1_goblin | TokenOwner$ You | TokenAmount$ X SVar:X:Count$CardPower SVar:HasAttackEffect:TRUE DeckHas:Ability$Token|Counters diff --git a/forge-gui/res/cardsfolder/l/leech_bonder.txt b/forge-gui/res/cardsfolder/l/leech_bonder.txt index d70c55442a4..60b69850b87 100644 --- a/forge-gui/res/cardsfolder/l/leech_bonder.txt +++ b/forge-gui/res/cardsfolder/l/leech_bonder.txt @@ -3,6 +3,6 @@ ManaCost:2 U Types:Creature Merfolk Soldier PT:3/3 K:etbCounter:M1M1:2 -A:AB$ MoveCounter | Cost$ U Q | ValidTgts$ Creature | TgtPrompt$ Select target creatures to move counters | ValidTgts$ Creature | TargetMin$ 2 | TargetMax$ 2 | CounterType$ Any | SpellDescription$ Move a counter from target creature onto a second target creature. +A:AB$ MoveCounter | Cost$ U Q | ValidTgts$ Creature | TgtPrompt$ Select target creatures to move counters | TargetMin$ 2 | TargetMax$ 2 | CounterType$ Any | SpellDescription$ Move a counter from target creature onto a second target creature. AI:RemoveDeck:All Oracle:Leech Bonder enters with two -1/-1 counters on it.\n{U}, {Q}: Move a counter from target creature onto a second target creature. ({Q} is the untap symbol.) diff --git a/forge-gui/res/cardsfolder/l/lightning_runner.txt b/forge-gui/res/cardsfolder/l/lightning_runner.txt index b859cf4e08c..0ee06a51292 100644 --- a/forge-gui/res/cardsfolder/l/lightning_runner.txt +++ b/forge-gui/res/cardsfolder/l/lightning_runner.txt @@ -6,7 +6,7 @@ K:Double Strike K:Haste T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigEnergy | TriggerDescription$ Whenever CARDNAME attacks, you get {E}{E} (two energy counters), then you may pay eight {E}. If you pay, untap all creatures you control, and after this phase, there is an additional combat phase. SVar:TrigEnergy:DB$ PutCounter | Defined$ You | CounterType$ ENERGY | CounterNum$ 2 | SubAbility$ DBUntapAll -SVar:DBUntapAll:DB$ UntapAll | ValidCards$ Creature.YouCtrl | SubAbility$ DBAddCombat | UnlessCost$ PayEnergy<8> | UnlessPayer$ You | UnlessSwitched$ True | UnlessResolveSubs$ WhenPaid | SubAbility$ DBAddCombat +SVar:DBUntapAll:DB$ UntapAll | ValidCards$ Creature.YouCtrl | UnlessCost$ PayEnergy<8> | UnlessPayer$ You | UnlessSwitched$ True | UnlessResolveSubs$ WhenPaid | SubAbility$ DBAddCombat SVar:DBAddCombat:DB$ AddPhase | ExtraPhase$ Combat | AfterPhase$ EndCombat SVar:PlayMain1:TRUE Oracle:Double strike, haste\nWhenever Lightning Runner attacks, you get {E}{E} (two energy counters), then you may pay eight {E}. If you pay, untap all creatures you control, and after this phase, there is an additional combat phase. diff --git a/forge-gui/res/cardsfolder/l/lilianas_influence.txt b/forge-gui/res/cardsfolder/l/lilianas_influence.txt index 78061cdc620..dd9e769c99e 100644 --- a/forge-gui/res/cardsfolder/l/lilianas_influence.txt +++ b/forge-gui/res/cardsfolder/l/lilianas_influence.txt @@ -1,7 +1,7 @@ Name:Liliana's Influence ManaCost:4 B B Types:Sorcery -A:SP$ PutCounterAll | ValidCards$ Creature.YouDontCtrl | CounterType$ M1M1 | CounterNum$ 1 | SubAbility$ DBShuffle | IsCurse$ True | SubAbility$ DBSearch | SpellDescription$ Put a -1/-1 counter on each creature you don't control. +A:SP$ PutCounterAll | ValidCards$ Creature.YouDontCtrl | CounterType$ M1M1 | CounterNum$ 1 | IsCurse$ True | SubAbility$ DBSearch | SpellDescription$ Put a -1/-1 counter on each creature you don't control. SVar:DBSearch:DB$ ChangeZone | Origin$ Library | OriginAlternative$ Graveyard | Destination$ Hand | ChangeType$ Card.YouOwn+namedLiliana; Death Wielder | Optional$ True | SpellDescription$ You may search your library and/or graveyard for a card named Liliana, Death Wielder, reveal it, and put it into your hand. If you search your library this way, shuffle. DeckHints:Name$Liliana, Death Wielder Oracle:Put a -1/-1 counter on each creature you don't control. You may search your library and/or graveyard for a card named Liliana, Death Wielder, reveal it, and put it into your hand. If you search your library this way, shuffle. diff --git a/forge-gui/res/cardsfolder/l/longhorn_firebeast.txt b/forge-gui/res/cardsfolder/l/longhorn_firebeast.txt index d4f1c715d05..71091357b5c 100644 --- a/forge-gui/res/cardsfolder/l/longhorn_firebeast.txt +++ b/forge-gui/res/cardsfolder/l/longhorn_firebeast.txt @@ -2,7 +2,6 @@ Name:Longhorn Firebeast ManaCost:2 R Types:Creature Elemental Ox Beast PT:3/2 -T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDealDamage | OptionalDecider$ Opponent | TriggerDescription$ When CARDNAME enters, any opponent may have it deal 5 damage to them. If a player does, sacrifice CARDNAME. -SVar:TrigDealDamage:DB$ DealDamage | Defined$ Opponent | NumDmg$ 5 | SubAbility$ DBSacrifice -SVar:DBSacrifice:DB$ Sacrifice +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDealDamage | TriggerDescription$ When CARDNAME enters, any opponent may have it deal 5 damage to them. If a player does, sacrifice CARDNAME. +SVar:TrigDealDamage::DB$ Sacrifice | UnlessCost$ DamageYou<5> | UnlessPayer$ Opponent | UnlessSwitched$ True Oracle:When Longhorn Firebeast enters, any opponent may have it deal 5 damage to them. If a player does, sacrifice Longhorn Firebeast. diff --git a/forge-gui/res/cardsfolder/m/mindleech_ghoul.txt b/forge-gui/res/cardsfolder/m/mindleech_ghoul.txt index ab03cfe47d1..0eb208c4ecb 100644 --- a/forge-gui/res/cardsfolder/m/mindleech_ghoul.txt +++ b/forge-gui/res/cardsfolder/m/mindleech_ghoul.txt @@ -4,6 +4,6 @@ Types:Creature Zombie PT:2/2 K:Exploit T:Mode$ Exploited | ValidCard$ Creature | ValidSource$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigExile | TriggerDescription$ When CARDNAME exploits a creature, each opponent exiles a card from their hand. -SVar:TrigExile:DB$ ChangeZone | Origin$ Hand | Destination$ Exile | ChangeType$ Card | DefinedPlayer$ Player.Opponent | Mandatory$ True | ChangeType$ Card | ChangeNum$ 1 | Hidden$ True | IsCurse$ True +SVar:TrigExile:DB$ ChangeZone | Origin$ Hand | Destination$ Exile | DefinedPlayer$ Player.Opponent | Mandatory$ True | ChangeType$ Card | ChangeNum$ 1 | Hidden$ True | IsCurse$ True DeckHas:Ability$Sacrifice Oracle:Exploit (When this creature enters, you may sacrifice a creature.)\nWhen Mindleech Ghoul exploits a creature, each opponent exiles a card from their hand. diff --git a/forge-gui/res/cardsfolder/m/misfortune.txt b/forge-gui/res/cardsfolder/m/misfortune.txt index 7589f74f997..5276f58ffec 100644 --- a/forge-gui/res/cardsfolder/m/misfortune.txt +++ b/forge-gui/res/cardsfolder/m/misfortune.txt @@ -2,9 +2,8 @@ Name:Misfortune ManaCost:1 B R G Types:Sorcery A:SP$ Charm | Chooser$ Opponent | Choices$ Fortune,Misfortune -SVar:Fortune:DB$ PutCounterAll | ValidCards$ Creature.YouCtrl | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBGainLife | SpellDescription$ Put a +1/+1 counter on each creature you control. You gain 4 life. | SubAbility$ DBGainLife +SVar:Fortune:DB$ PutCounterAll | ValidCards$ Creature.YouCtrl | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBGainLife | SpellDescription$ Put a +1/+1 counter on each creature you control. You gain 4 life. SVar:DBGainLife:DB$ GainLife | LifeAmount$ 4 -SVar:Misfortune:DB$ PutCounterAll | ValidCards$ Creature.ControlledBy ChoosingPlayer | CounterType$ M1M1 | CounterNum$ 1 | SubAbility$ DBLoseLife | SpellDescription$ You put a -1/-1 counter on each creature that player controls and CARDNAME deals 4 damage to that player. | SubAbility$ DBDamage +SVar:Misfortune:DB$ PutCounterAll | ValidCards$ Creature.ControlledBy ChoosingPlayer | CounterType$ M1M1 | CounterNum$ 1 | SubAbility$ DBDamage | SpellDescription$ You put a -1/-1 counter on each creature that player controls and CARDNAME deals 4 damage to that player. SVar:DBDamage:DB$ DealDamage | Defined$ ChoosingPlayer | NumDmg$ 4 -SVar:ChooserDraws:DB$ Draw | NumCards$ 3 | Defined$ ChosenPlayer Oracle:An opponent chooses one —\n• You put a +1/+1 counter on each creature you control and gain 4 life.\n• You put a -1/-1 counter on each creature that player controls and Misfortune deals 4 damage to that player. diff --git a/forge-gui/res/cardsfolder/m/mordor_on_the_march.txt b/forge-gui/res/cardsfolder/m/mordor_on_the_march.txt index 33a02673090..08643be7460 100644 --- a/forge-gui/res/cardsfolder/m/mordor_on_the_march.txt +++ b/forge-gui/res/cardsfolder/m/mordor_on_the_march.txt @@ -2,7 +2,7 @@ Name:Mordor on the March ManaCost:3 B R Types:Sorcery K:Storm -A:SP$ ChangeZone | ChangeType$ Creature.YouCtrl | Hidden$ True | ChangeNum$ 1 | RememberChanged$ True | Origin$ Graveyard | Destination$ Exile | ChangeNum$ 1 | SubAbility$ DBCopy | SpellDescription$ Exile a creature card from your graveyard. Create a token that's a copy of it. It gains haste until end of turn. Exile it at the beginning of the next end step. +A:SP$ ChangeZone | ChangeType$ Creature.YouCtrl | Hidden$ True | RememberChanged$ True | Origin$ Graveyard | Destination$ Exile | ChangeNum$ 1 | SubAbility$ DBCopy | SpellDescription$ Exile a creature card from your graveyard. Create a token that's a copy of it. It gains haste until end of turn. Exile it at the beginning of the next end step. SVar:DBCopy:DB$ CopyPermanent | Defined$ Remembered | PumpKeywords$ Haste | PumpDuration$ EOT | AtEOT$ Exile | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:PlayMain1:TRUE diff --git a/forge-gui/res/cardsfolder/o/oath_of_the_grey_host.txt b/forge-gui/res/cardsfolder/o/oath_of_the_grey_host.txt index 2b6040fcbfe..019971a9795 100644 --- a/forge-gui/res/cardsfolder/o/oath_of_the_grey_host.txt +++ b/forge-gui/res/cardsfolder/o/oath_of_the_grey_host.txt @@ -2,7 +2,7 @@ Name:Oath of the Grey Host ManaCost:3 B Types:Enchantment Saga K:Chapter:3:DBFood,DBLoseLife,DBSpirit -SVar:DBFood:DB$ Token | TokenAmount$ 1 | ValidTgts$ Opponent | TokenOwner$ TargetedAndYou | TokenAmount$ 1 | TokenScript$ c_a_food_sac | SpellDescription$ You and target opponent each create a Food token. +SVar:DBFood:DB$ Token | TokenAmount$ 1 | ValidTgts$ Opponent | TokenOwner$ TargetedAndYou | TokenScript$ c_a_food_sac | SpellDescription$ You and target opponent each create a Food token. SVar:DBLoseLife:DB$ LoseLife | LifeAmount$ 3 | Defined$ Player.Opponent | SubAbility$ DBTreasure | SpellDescription$ Each opponent loses 3 life. Create a Treasure token. SVar:DBTreasure:DB$ Token | TokenScript$ c_a_treasure_sac SVar:DBSpirit:DB$ Token | TokenAmount$ 3 | TokenScript$ w_1_1_spirit_flying | TokenTapped$ True | SpellDescription$ Create three tapped 1/1 white Spirit creature tokens with flying. diff --git a/forge-gui/res/cardsfolder/p/phyrexian_missionary.txt b/forge-gui/res/cardsfolder/p/phyrexian_missionary.txt index f4693119779..d82111a6661 100644 --- a/forge-gui/res/cardsfolder/p/phyrexian_missionary.txt +++ b/forge-gui/res/cardsfolder/p/phyrexian_missionary.txt @@ -4,7 +4,7 @@ Types:Creature Phyrexian Human Cleric PT:2/3 K:Kicker:1 B K:Lifelink -T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked | OptionalDecider$ You | Execute$ TrigChangeZone | OptionalDecider$ You | TriggerDescription$ When CARDNAME enters, if it was kicked, you may return target creature card from your graveyard to your hand. +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked | Execute$ TrigChangeZone | TriggerDescription$ When CARDNAME enters, if it was kicked, return target creature card from your graveyard to your hand. SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | ValidTgts$ Creature.YouCtrl DeckHas:Ability$Graveyard DeckHints:Color$Black diff --git a/forge-gui/res/cardsfolder/p/pious_evangel_wayward_disciple.txt b/forge-gui/res/cardsfolder/p/pious_evangel_wayward_disciple.txt index 5357abe9102..0f2227cc1c6 100644 --- a/forge-gui/res/cardsfolder/p/pious_evangel_wayward_disciple.txt +++ b/forge-gui/res/cardsfolder/p/pious_evangel_wayward_disciple.txt @@ -2,7 +2,7 @@ Name:Pious Evangel ManaCost:2 W Types:Creature Human Cleric PT:2/2 -T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigGainLife | ValidCard$ Card.Self,Creature.Other+YouCtrl | TriggerDescription$ Whenever CARDNAME or another creature you control enters, you gain 1 life. +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | Execute$ TrigGainLife | ValidCard$ Card.Self,Creature.Other+YouCtrl | TriggerDescription$ Whenever CARDNAME or another creature you control enters, you gain 1 life. SVar:TrigGainLife:DB$ GainLife | Defined$ You | LifeAmount$ 1 A:AB$ SetState | Cost$ 2 T Sac<1/Permanent.Other/another permanent> | Defined$ Self | Mode$ Transform | SpellDescription$ Transform CARDNAME. AlternateMode:DoubleFaced diff --git a/forge-gui/res/cardsfolder/q/quartzwood_crasher.txt b/forge-gui/res/cardsfolder/q/quartzwood_crasher.txt index 0f8b77f3ad3..be0f574fb8c 100644 --- a/forge-gui/res/cardsfolder/q/quartzwood_crasher.txt +++ b/forge-gui/res/cardsfolder/q/quartzwood_crasher.txt @@ -4,7 +4,7 @@ Types:Creature Dinosaur Beast PT:6/6 K:Trample T:Mode$ DamageDoneOnce | CombatDamage$ True | ValidSource$ Creature.YouCtrl+withTrample | TriggerZones$ Battlefield | ValidTarget$ Player | Execute$ DBToken | TriggerDescription$ Whenever one or more creatures you control with trample deal combat damage to a player, create an X/X green Dinosaur Beast creature token with trample, where X is the amount of damage those creatures dealt to that player. -SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenOwner$ You | TokenScript$ g_x_x_dinosaur_beast_trample | TokenPower$ X | TokenToughness$ X | TokenOwner$ You +SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ g_x_x_dinosaur_beast_trample | TokenPower$ X | TokenToughness$ X | TokenOwner$ You SVar:X:TriggerCount$DamageAmount DeckHas:Ability$Token Oracle:Trample\nWhenever one or more creatures you control with trample deal combat damage to a player, create an X/X green Dinosaur Beast creature token with trample, where X is the amount of damage those creatures dealt to that player. diff --git a/forge-gui/res/cardsfolder/q/quest_for_the_gravelord.txt b/forge-gui/res/cardsfolder/q/quest_for_the_gravelord.txt index 889096c2e6d..27d51f647d0 100644 --- a/forge-gui/res/cardsfolder/q/quest_for_the_gravelord.txt +++ b/forge-gui/res/cardsfolder/q/quest_for_the_gravelord.txt @@ -1,7 +1,7 @@ Name:Quest for the Gravelord ManaCost:B Types:Enchantment -A:AB$ Token | Cost$ SubCounter<3/QUEST> Sac<1/CARDNAME> | TokenAmount$ 1 | TokenScript$ b_5_5_zombie_giant | TokenOwner$ You | TokenAmount$ 1 | SpellDescription$ Create a 5/5 black Zombie Giant creature token. +A:AB$ Token | Cost$ SubCounter<3/QUEST> Sac<1/CARDNAME> | TokenAmount$ 1 | TokenScript$ b_5_5_zombie_giant | TokenOwner$ You | SpellDescription$ Create a 5/5 black Zombie Giant creature token. T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Creature | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigPutCounter | TriggerDescription$ Whenever a creature dies, you may put a quest counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ QUEST | CounterNum$ 1 SVar:MaxQuestEffect:3 diff --git a/forge-gui/res/cardsfolder/r/rags_riches.txt b/forge-gui/res/cardsfolder/r/rags_riches.txt index 26d9674cab5..24418f58cc3 100644 --- a/forge-gui/res/cardsfolder/r/rags_riches.txt +++ b/forge-gui/res/cardsfolder/r/rags_riches.txt @@ -11,7 +11,7 @@ Name:Riches ManaCost:5 U U Types:Sorcery K:Aftermath -A:SP$ ChooseCard | Defined$ Opponent | Mandatory$ True | Amount$ 1 | Choices$ Creature | ControlledByPlayer$ Chooser | ChoiceTitle$ Choose a creature to be stolen | AILogic$ WorstCard | Mandatory$ True | SubAbility$ StealChosen | SpellDescription$ Each opponent chooses a creature they control. You gain control of those creatures. +A:SP$ ChooseCard | Defined$ Opponent | Amount$ 1 | Choices$ Creature | ControlledByPlayer$ Chooser | ChoiceTitle$ Choose a creature to be stolen | AILogic$ WorstCard | Mandatory$ True | SubAbility$ StealChosen | SpellDescription$ Each opponent chooses a creature they control. You gain control of those creatures. SVar:StealChosen:DB$ GainControl | AllValid$ Permanent.ChosenCard SVar:NeedsToPlay:Creature.OppCtrl Oracle:Aftermath (Cast this spell only from your graveyard. Then exile it.)\nEach opponent chooses a creature they control. You gain control of those creatures. diff --git a/forge-gui/res/cardsfolder/r/ral_and_the_implicit_maze.txt b/forge-gui/res/cardsfolder/r/ral_and_the_implicit_maze.txt index ff178e89f71..f4e50e5c35c 100644 --- a/forge-gui/res/cardsfolder/r/ral_and_the_implicit_maze.txt +++ b/forge-gui/res/cardsfolder/r/ral_and_the_implicit_maze.txt @@ -3,7 +3,7 @@ ManaCost:3 R R Types:Enchantment Saga K:Chapter:3:DBDamageAll,DBImpulseDraw,DBToken SVar:DBDamageAll:DB$ DamageAll | ValidCards$ Creature.OppCtrl,Planeswalker.OppCtrl | NumDmg$ 2 | SpellDescription$ CARDNAME deals 2 damage to each creature and planeswalker your opponents control. -SVar:DBImpulseDraw:AB$ Dig | Cost$ Discard<1/Card> | Defined$ You | DigNum$ 2 | ChangeNum$ All | DestinationZone$ Exile | SubAbility$ DBEffect | RememberChanged$ True | SubAbility$ DBEffect | SpellDescription$ You may discard a card. If you do, exile the top two cards of your library. You may play them until the end of your next turn. +SVar:DBImpulseDraw:AB$ Dig | Cost$ Discard<1/Card> | Defined$ You | DigNum$ 2 | ChangeNum$ All | DestinationZone$ Exile | RememberChanged$ True | SubAbility$ DBEffect | SpellDescription$ You may discard a card. If you do, exile the top two cards of your library. You may play them until the end of your next turn. SVar:DBEffect:DB$ Effect | RememberObjects$ RememberedCard | StaticAbilities$ STPlay | SubAbility$ DBCleanup | ForgetOnMoved$ Exile | Duration$ UntilTheEndOfYourNextTurn SVar:STPlay:Mode$ Continuous | MayPlay$ True | EffectZone$ Command | Affected$ Card.IsRemembered | AffectedZone$ Exile | Description$ You may play them until the end of your next turn. SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True diff --git a/forge-gui/res/cardsfolder/r/rampaging_yao_guai.txt b/forge-gui/res/cardsfolder/r/rampaging_yao_guai.txt index 729297c6853..26eacdf17a3 100644 --- a/forge-gui/res/cardsfolder/r/rampaging_yao_guai.txt +++ b/forge-gui/res/cardsfolder/r/rampaging_yao_guai.txt @@ -7,7 +7,7 @@ K:Trample K:etbCounter:P1P1:X SVar:X:Count$xPaid T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters, destroy any number of target artifacts and/or enchantments with total mana value X or less. -SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select any number of target artifacts and/or enchantments with total mana value X | TargetMin$ 0 | TargetMax$ Y | MaxTotalTargetCMC$ X | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select up to X target creature cards with total mana value X or less +SVar:TrigDestroy:DB$ Destroy | TargetMin$ 0 | TargetMax$ Y | MaxTotalTargetCMC$ X | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select up to X target creature cards with total mana value X or less SVar:Y:Count$Valid Enchantment,Artifact DeckHas:Ability$Counters Oracle:Vigilance, trample\nRampaging Yao Guai enters with X +1/+1 counters on it.\nWhen Rampaging Yao Guai enters, destroy any number of target artifacts and/or enchantments with total mana value X or less. diff --git a/forge-gui/res/cardsfolder/r/revival_experiment.txt b/forge-gui/res/cardsfolder/r/revival_experiment.txt index c598759eab6..243a6666deb 100644 --- a/forge-gui/res/cardsfolder/r/revival_experiment.txt +++ b/forge-gui/res/cardsfolder/r/revival_experiment.txt @@ -3,7 +3,7 @@ ManaCost:4 B G Types:Sorcery A:SP$ ChooseCard | Defined$ You | Choices$ Card.Permanent+YouOwn | ChoiceZone$ Graveyard | ChooseEach$ Artifact & Battle & Creature & Enchantment & Land & Planeswalker | ControlledByPlayer$ Chooser | MinAmount$ 0 | Amount$ 1 | Reveal$ True | RememberChosen$ True | SubAbility$ DBReturn | StackDescription$ REP return_{p:You} returns & from your_from their & You lose_{p:You} loses & Exile_{p:You} exiles | SpellDescription$ For each permanent type, return up to one card of that type from your graveyard to the battlefield. You lose 3 life for each card returned this way. Exile CARDNAME. SVar:DBReturn:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | Defined$ Remembered | RememberChanged$ True | ForgetOtherRemembered$ True | SubAbility$ DBLoseLife | StackDescription$ None -SVar:DBLoseLife:DB$ LoseLife | LifeAmount$ X | SubAbility$ DBChange | SubAbility$ DBExile | StackDescription$ None +SVar:DBLoseLife:DB$ LoseLife | LifeAmount$ X | SubAbility$ DBExile | StackDescription$ None SVar:DBExile:DB$ ChangeZone | Origin$ Stack | Destination$ Exile | SubAbility$ DBCleanup | StackDescription$ None SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True | ClearChosenCard$ True SVar:X:Remembered$Amount/Times.3 diff --git a/forge-gui/res/cardsfolder/r/rona_herald_of_invasion_rona_tolarian_obliterator.txt b/forge-gui/res/cardsfolder/r/rona_herald_of_invasion_rona_tolarian_obliterator.txt index 4be743354de..b8afcb07b0f 100644 --- a/forge-gui/res/cardsfolder/r/rona_herald_of_invasion_rona_tolarian_obliterator.txt +++ b/forge-gui/res/cardsfolder/r/rona_herald_of_invasion_rona_tolarian_obliterator.txt @@ -21,7 +21,7 @@ Types:Legendary Creature Phyrexian Wizard PT:5/5 K:Trample T:Mode$ DamageDone | ValidTarget$ Card.Self | Execute$ TrigExile | TriggerDescription$ Whenever a source deals damage to CARDNAME, that source's controller exiles a card from their hand at random. If it's a land card, you may put it onto the battlefield under your control. Otherwise, you may cast it without paying its mana cost. -SVar:TrigExile:DB$ ChangeZone | Origin$ Hand | Destination$ Exile | ChangeType$ Card | DefinedPlayer$ TriggeredSourceController | Mandatory$ True | ChangeType$ Card | Hidden$ True | AtRandom$ True | RememberChanged$ True | SubAbility$ DBRonaLand +SVar:TrigExile:DB$ ChangeZone | Origin$ Hand | Destination$ Exile | DefinedPlayer$ TriggeredSourceController | Mandatory$ True | ChangeType$ Card | Hidden$ True | AtRandom$ True | RememberChanged$ True | SubAbility$ DBRonaLand SVar:DBRonaLand:DB$ ChangeZone | Origin$ Exile | Destination$ Battlefield | ChangeType$ Land.IsRemembered | Hidden$ True | Optional$ True | GainControl$ True | SubAbility$ DBRonaPlay SVar:DBRonaPlay:DB$ Play | ValidZone$ Exile | Controller$ You | Valid$ Card.IsRemembered | ValidSA$ Spell | WithoutManaCost$ True | Optional$ True | SubAbility$ DBRonaCleanup SVar:DBRonaCleanup:DB$ Cleanup | ClearRemembered$ True diff --git a/forge-gui/res/cardsfolder/r/rose_room_treasurer.txt b/forge-gui/res/cardsfolder/r/rose_room_treasurer.txt index 268201472a9..27fee03f341 100644 --- a/forge-gui/res/cardsfolder/r/rose_room_treasurer.txt +++ b/forge-gui/res/cardsfolder/r/rose_room_treasurer.txt @@ -4,7 +4,7 @@ Types:Creature Ogre Warrior PT:4/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.YouCtrl+Other | TriggerZones$ Battlefield | Execute$ TrigTreasure | TriggerDescription$ Alliance — Whenever another creature you control enters, create a Treasure token if this is the first or second time this ability has resolved this turn. Otherwise, you may pay {X}. When you do, CARDNAME deals X damage to any target. SVar:TrigTreasure:DB$ Token | TokenScript$ c_a_treasure_sac | SubAbility$ DBChooseX | ConditionCheckSVar$ Resolved | ConditionSVarCompare$ LE2 -SVar:DBChooseX:DB$ ChooseNumber | ChooseAnyNumber$ True | ListTitle$ amount of mana to pay | SubAbility$ DBStore | ConditionCheckSVar$ Resolved | ConditionSVarCompare$ GT2 | SubAbility$ DBImmediateTrig +SVar:DBChooseX:DB$ ChooseNumber | ChooseAnyNumber$ True | ListTitle$ amount of mana to pay | ConditionCheckSVar$ Resolved | ConditionSVarCompare$ GT2 | SubAbility$ DBImmediateTrig SVar:DBImmediateTrig:DB$ ImmediateTrigger | UnlessCost$ X | UnlessPayer$ You | UnlessSwitched$ True | ConditionCheckSVar$ Resolved | ConditionSVarCompare$ GT2 | Execute$ TrigDamage | RememberSVarAmount$ X | TriggerDescription$ When you do, CARDNAME deals X damage to any target. SVar:TrigDamage:DB$ DealDamage | ValidTgts$ Any | NumDmg$ Y SVar:Resolved:Count$ResolvedThisTurn diff --git a/forge-gui/res/cardsfolder/r/rousing_refrain.txt b/forge-gui/res/cardsfolder/r/rousing_refrain.txt index df86d009684..d79dc59228f 100644 --- a/forge-gui/res/cardsfolder/r/rousing_refrain.txt +++ b/forge-gui/res/cardsfolder/r/rousing_refrain.txt @@ -2,7 +2,7 @@ Name:Rousing Refrain ManaCost:3 R R Types:Sorcery K:Suspend:3:1 R -A:SP$ Mana | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | SubAbility$ DBMana | AILogic$ ManaRitual | Produced$ R | Amount$ Z | PersistentMana$ True | Defined$ You | SubAbility$ DBChange | StackDescription$ SpellDescription | SpellDescription$ Until end of turn, you don't lose this mana as steps and phases end. +A:SP$ Mana | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | AILogic$ ManaRitual | Produced$ R | Amount$ Z | PersistentMana$ True | Defined$ You | SubAbility$ DBChange | StackDescription$ SpellDescription | SpellDescription$ Add {R} for each card in target opponent's hand. Until end of turn, you don't lose this mana as steps and phases end. SVar:Z:TargetedPlayer$CardsInHand SVar:DBChange:DB$ ChangeZone | Origin$ Stack | Destination$ Exile | WithCountersType$ TIME | WithCountersAmount$ 3 | SpellDescription$ Exile CARDNAME with three time counters on it. Oracle:Add {R} for each card in target opponent's hand. Until end of turn, you don't lose this mana as steps and phases end. Exile Rousing Refrain with three time counters on it.\nSuspend 3—{1}{R} (Rather than cast this card from your hand, you may pay {1}{R} and exile it with three time counters on it. At the beginning of your upkeep, remove a time counter. When the last is removed, cast it without paying its mana cost.) diff --git a/forge-gui/res/cardsfolder/s/shark_typhoon.txt b/forge-gui/res/cardsfolder/s/shark_typhoon.txt index 891102c9f36..a46bd07af5f 100644 --- a/forge-gui/res/cardsfolder/s/shark_typhoon.txt +++ b/forge-gui/res/cardsfolder/s/shark_typhoon.txt @@ -2,11 +2,11 @@ Name:Shark Typhoon ManaCost:5 U Types:Enchantment T:Mode$ SpellCast | ValidCard$ Card.nonCreature | ValidActivatingPlayer$ You | Execute$ TrigToken | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast a noncreature spell, create an X/X blue Shark creature token with flying, where X is that spell's mana value. -SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ u_x_x_shark_flying | TokenOwner$ You | TokenPower$ Y | TokenToughness$ Y | TokenAmount$ 1 +SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ u_x_x_shark_flying | TokenOwner$ You | TokenPower$ Y | TokenToughness$ Y SVar:Y:TriggeredStackInstance$CardManaCostLKI K:Cycling:X 1 U T:Mode$ Cycled | ValidCard$ Card.Self | Execute$ TrigToken2 | TriggerDescription$ When you cycle CARDNAME, create an X/X blue Shark creature token with flying. -SVar:TrigToken2:DB$ Token | TokenAmount$ 1 | TokenScript$ u_x_x_shark_flying | TokenOwner$ You | TokenPower$ X | TokenToughness$ X | TokenAmount$ 1 +SVar:TrigToken2:DB$ Token | TokenAmount$ 1 | TokenScript$ u_x_x_shark_flying | TokenOwner$ You | TokenPower$ X | TokenToughness$ X SVar:X:Count$xPaid DeckHas:Ability$Token Oracle:Whenever you cast a noncreature spell, create an X/X blue Shark creature token with flying, where X is that spell's mana value.\nCycling {X}{1}{U} ({X}{1}{U}, Discard this card: Draw a card.)\nWhen you cycle Shark Typhoon, create an X/X blue Shark creature token with flying. diff --git a/forge-gui/res/cardsfolder/s/sibilant_spirit.txt b/forge-gui/res/cardsfolder/s/sibilant_spirit.txt index e372b84e09d..655bf6051f7 100644 --- a/forge-gui/res/cardsfolder/s/sibilant_spirit.txt +++ b/forge-gui/res/cardsfolder/s/sibilant_spirit.txt @@ -3,6 +3,6 @@ ManaCost:5 U Types:Creature Spirit PT:5/6 K:Flying -T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigDraw | OptionalDecider$ Opponent | Execute$ TrigDraw | TriggerDescription$ Whenever CARDNAME attacks, defending player may draw a card. -SVar:TrigDraw:DB$ Draw | Defined$ TriggeredDefendingPlayer | NumCards$ 1 +T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigDraw | TriggerDescription$ Whenever CARDNAME attacks, defending player may draw a card. +SVar:TrigDraw:DB$ Draw | Defined$ TriggeredDefendingPlayer | NumCards$ 1 | OptionalDecider$ True Oracle:Flying\nWhenever Sibilant Spirit attacks, defending player may draw a card. diff --git a/forge-gui/res/cardsfolder/s/skeleton_ship.txt b/forge-gui/res/cardsfolder/s/skeleton_ship.txt index 1b35c112f21..ceb118f9d8b 100644 --- a/forge-gui/res/cardsfolder/s/skeleton_ship.txt +++ b/forge-gui/res/cardsfolder/s/skeleton_ship.txt @@ -4,6 +4,6 @@ Types:Legendary Creature Skeleton PT:0/3 T:Mode$ Always | TriggerZones$ Battlefield | IsPresent$ Island.YouCtrl | PresentCompare$ EQ0 | Execute$ TrigSac | TriggerDescription$ When you control no Islands, sacrifice CARDNAME. SVar:TrigSac:DB$ Sacrifice -A:AB$ PutCounter | Cost$ T | IsCurse$ True | ValidTgts$ Creature | TgtPrompt$ Select target Creature | CounterType$ M1M1 | CounterNum$ 1 | IsCurse$ True | SpellDescription$ Put a -1/-1 counter on target creature. +A:AB$ PutCounter | Cost$ T | ValidTgts$ Creature | TgtPrompt$ Select target Creature | CounterType$ M1M1 | CounterNum$ 1 | IsCurse$ True | SpellDescription$ Put a -1/-1 counter on target creature. SVar:NeedsToPlay:Island.YouCtrl Oracle:When you control no Islands, sacrifice Skeleton Ship.\n{T}: Put a -1/-1 counter on target creature. diff --git a/forge-gui/res/cardsfolder/s/skullcap_snail.txt b/forge-gui/res/cardsfolder/s/skullcap_snail.txt index 85ba74048eb..ea0542706cc 100644 --- a/forge-gui/res/cardsfolder/s/skullcap_snail.txt +++ b/forge-gui/res/cardsfolder/s/skullcap_snail.txt @@ -3,5 +3,5 @@ ManaCost:1 B Types:Creature Fungus Snail PT:1/1 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigExile | TriggerDescription$ When CARDNAME enters, target opponent exiles a card from their hand. -SVar:TrigExile:DB$ ChangeZone | Chooser$ Targeted | Origin$ Hand | Destination$ Exile | ChangeType$ Card | ValidTgts$ Opponent | Mandatory$ True | ChangeType$ Card | ChangeNum$ 1 | Hidden$ True | IsCurse$ True +SVar:TrigExile:DB$ ChangeZone | Chooser$ Targeted | Origin$ Hand | Destination$ Exile | ValidTgts$ Opponent | Mandatory$ True | ChangeType$ Card | ChangeNum$ 1 | Hidden$ True | IsCurse$ True Oracle:When Skullcap Snail enters, target opponent exiles a card from their hand. diff --git a/forge-gui/res/cardsfolder/s/soul_guide_lantern.txt b/forge-gui/res/cardsfolder/s/soul_guide_lantern.txt index 7f3a9806503..731515c28da 100644 --- a/forge-gui/res/cardsfolder/s/soul_guide_lantern.txt +++ b/forge-gui/res/cardsfolder/s/soul_guide_lantern.txt @@ -3,6 +3,6 @@ ManaCost:1 Types:Artifact T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters, exile target card from a graveyard. SVar:TrigChange:DB$ ChangeZone | Origin$ Graveyard | Destination$ Exile | TgtPrompt$ Choose target card in a graveyard | ValidTgts$ Card | TgtZone$ Graveyard -A:AB$ ChangeZoneAll | Cost$ T Sac<1/CARDNAME> | ChangeType$ Opponent | Origin$ Graveyard | Destination$ Exile | ChangeType$ Card.OppOwn | AILogic$ Curse | SpellDescription$ Exile each opponent's graveyard. +A:AB$ ChangeZoneAll | Cost$ T Sac<1/CARDNAME> | Origin$ Graveyard | Destination$ Exile | ChangeType$ Card.OppOwn | AILogic$ Curse | SpellDescription$ Exile each opponent's graveyard. A:AB$ Draw | Cost$ 1 T Sac<1/CARDNAME> | NumCards$ 1 | SpellDescription$ Draw a card. Oracle:When Soul-Guide Lantern enters, exile target card from a graveyard.\n{T}, Sacrifice Soul-Guide Lantern: Exile each opponent's graveyard.\n{1}, {T}, Sacrifice Soul-Guide Lantern: Draw a card. diff --git a/forge-gui/res/cardsfolder/s/spawning_bed.txt b/forge-gui/res/cardsfolder/s/spawning_bed.txt index e8343c38bd1..0d82a6d20b4 100644 --- a/forge-gui/res/cardsfolder/s/spawning_bed.txt +++ b/forge-gui/res/cardsfolder/s/spawning_bed.txt @@ -2,7 +2,7 @@ Name:Spawning Bed ManaCost:no cost Types:Land A:AB$ Mana | Cost$ T | Produced$ C | SpellDescription$ Add {C}. -A:AB$ Token | Cost$ 6 T Sac<1/CARDNAME> | TokenOwner$ You | TokenAmount$ 3 | TokenScript$ c_1_1_eldrazi_scion_sac | TokenOwner$ You | SpellDescription$ Create three 1/1 colorless Eldrazi Scion creature tokens. They have "Sacrifice this creature: Add {C}." +A:AB$ Token | Cost$ 6 T Sac<1/CARDNAME> | TokenOwner$ You | TokenAmount$ 3 | TokenScript$ c_1_1_eldrazi_scion_sac | SpellDescription$ Create three 1/1 colorless Eldrazi Scion creature tokens. They have "Sacrifice this creature: Add {C}." DeckHints:Type$Eldrazi DeckHas:Ability$Mana.Colorless|Token Oracle:{T}: Add {C}.\n{6}, {T}, Sacrifice Spawning Bed: Create three 1/1 colorless Eldrazi Scion creature tokens. They have "Sacrifice this creature: Add {C}." diff --git a/forge-gui/res/cardsfolder/s/sword_of_forge_and_frontier.txt b/forge-gui/res/cardsfolder/s/sword_of_forge_and_frontier.txt index 00e88bda6a5..8c87f56518a 100644 --- a/forge-gui/res/cardsfolder/s/sword_of_forge_and_frontier.txt +++ b/forge-gui/res/cardsfolder/s/sword_of_forge_and_frontier.txt @@ -5,7 +5,7 @@ K:Equip:2 S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddPower$ 2 | AddToughness$ 2 | AddKeyword$ Protection from red & Protection from green | Description$ Equipped creature gets +2/+2 and has protection from red and from green. T:Mode$ DamageDone | ValidSource$ Creature.EquippedBy | ValidTarget$ Player | CombatDamage$ True | Execute$ ExileTwo | TriggerZones$ Battlefield | TriggerDescription$ Whenever equipped creature deals combat damage to a player, exile the top two cards of your library. You may play those cards this turn. You may play an additional land this turn. SVar:ExileTwo:DB$ Dig | Defined$ You | DigNum$ 2 | ChangeNum$ All | DestinationZone$ Exile | RememberChanged$ True | SubAbility$ DBEffect -SVar:DBEffect:DB$ Effect | RememberObjects$ RememberedCard | StaticAbilities$ STPlay | SubAbility$ DBCleanup | ForgetOnMoved$ Exile | Duration$ EndOfTurn | SubAbility$ DBEffectBis +SVar:DBEffect:DB$ Effect | RememberObjects$ RememberedCard | StaticAbilities$ STPlay | ForgetOnMoved$ Exile | Duration$ EndOfTurn | SubAbility$ DBEffectBis SVar:STPlay:Mode$ Continuous | MayPlay$ True | Affected$ Card.IsRemembered | AffectedZone$ Exile | Description$ You may play the exiled cards this turn. SVar:DBEffectBis:DB$ Effect | Name$ Sword of Forge and Frontier's Effect — Exploration | StaticAbilities$ Exploration | AILogic$ Always | SubAbility$ DBCleanup SVar:Exploration:Mode$ Continuous | Affected$ You | AdjustLandPlays$ 1 | Description$ You may play an additional land this turn. diff --git a/forge-gui/res/cardsfolder/t/tenth_district_hero.txt b/forge-gui/res/cardsfolder/t/tenth_district_hero.txt index 503d7fd185b..fc8d22f5872 100644 --- a/forge-gui/res/cardsfolder/t/tenth_district_hero.txt +++ b/forge-gui/res/cardsfolder/t/tenth_district_hero.txt @@ -3,7 +3,7 @@ ManaCost:1 W Types:Creature Human PT:2/3 A:AB$ Animate | Cost$ 1 W CollectEvidence<2> | Types$ Human,Detective | RemoveCreatureTypes$ True | Duration$ Permanent | Power$ 4 | Toughness$ 4 | Keywords$ Vigilance | SpellDescription$ CARDNAME becomes a Human Detective with base power and toughness 4/4 and gains vigilance. -A:AB$ Animate | Cost$ 2 W CollectEvidence<4> | staticAbilities$ Static | ConditionPresent$ Card.Self+Detective | Types$ Legendary,Creature | Name$ Mileva, the Stalwart | Power$ 5 | Toughness$ 5 | Duration$ Permanent | RemoveCreatureTypes$ True | Duration$ Permanent | SpellDescription$ If CARDNAME is a Detective, it becomes a legendary creature named Mileva, the Stalwart, it has base power and toughness 5/5, and it gains "Other creatures you control have indestructible." +A:AB$ Animate | Cost$ 2 W CollectEvidence<4> | staticAbilities$ Static | ConditionPresent$ Card.Self+Detective | Types$ Legendary,Creature | Name$ Mileva, the Stalwart | Power$ 5 | Toughness$ 5 | RemoveCreatureTypes$ True | Duration$ Permanent | SpellDescription$ If CARDNAME is a Detective, it becomes a legendary creature named Mileva, the Stalwart, it has base power and toughness 5/5, and it gains "Other creatures you control have indestructible." SVar:Static:Mode$ Continuous | Affected$ Creature.Other+YouCtrl | AddKeyword$ Indestructible | Description$ Other creatures you control have indestructible. DeckHints:Ability$Graveyard|Mill|Discard|Dredge DeckHas:Type$Detective diff --git a/forge-gui/res/cardsfolder/t/the_infamous_cruelclaw.txt b/forge-gui/res/cardsfolder/t/the_infamous_cruelclaw.txt index 70cacf6fd1b..911090f2f81 100644 --- a/forge-gui/res/cardsfolder/t/the_infamous_cruelclaw.txt +++ b/forge-gui/res/cardsfolder/t/the_infamous_cruelclaw.txt @@ -5,7 +5,7 @@ PT:3/3 K:Menace T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigDigUntil | TriggerZones$ Battlefield | TriggerDescription$ Whenever CARDNAME deals combat damage to a player, exile cards from the top of your library until you exile a nonland card. You may cast that card by discarding a card rather than paying its mana cost. SVar:TrigDigUntil:DB$ DigUntil | Valid$ Card.nonLand | FoundDestination$ Exile | RevealedDestination$ Exile | RememberFound$ True | SubAbility$ DBPlay -SVar:DBPlay:DB$ Play | Defined$ Remembered | ValidSA$ Spell | PlayCost$ Discard<1/Card> | Optional$ True | SubAbility$ DBChange | SubAbility$ DBCleanup +SVar:DBPlay:DB$ Play | Defined$ Remembered | ValidSA$ Spell | PlayCost$ Discard<1/Card> | Optional$ True | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:MustBeBlocked:True Oracle:Menace\nWhenever The Infamous Cruelclaw deals combat damage to a player, exile cards from the top of your library until you exile a nonland card. You may cast that card by discarding a card rather than paying its mana cost. diff --git a/forge-gui/res/cardsfolder/t/transmogrify.txt b/forge-gui/res/cardsfolder/t/transmogrify.txt index 07bbe4437b5..3aa21d9788e 100644 --- a/forge-gui/res/cardsfolder/t/transmogrify.txt +++ b/forge-gui/res/cardsfolder/t/transmogrify.txt @@ -1,6 +1,6 @@ Name:Transmogrify ManaCost:3 R Types:Sorcery -A:SP$ ChangeZone | ValidTgts$ Creature | Origin$ Battlefield | Destination$ Exile | NoRegen$ True | ValidTgts$ Creature | TgtPrompt$ Select target creature | SubAbility$ DBDig | SpellDescription$ Exile target creature. That creature's controller reveals cards from the top of their library until they reveal a creature card. That player puts that card onto the battlefield, then shuffles the rest into their library. +A:SP$ ChangeZone | Origin$ Battlefield | Destination$ Exile | NoRegen$ True | ValidTgts$ Creature | TgtPrompt$ Select target creature | SubAbility$ DBDig | SpellDescription$ Exile target creature. That creature's controller reveals cards from the top of their library until they reveal a creature card. That player puts that card onto the battlefield, then shuffles the rest into their library. SVar:DBDig:DB$ DigUntil | Defined$ TargetedController | Valid$ Creature | ValidDescription$ creature | FoundDestination$ Battlefield | RevealedDestination$ Library | Shuffle$ True Oracle:Exile target creature. That creature's controller reveals cards from the top of their library until they reveal a creature card. That player puts that card onto the battlefield, then shuffles the rest into their library. diff --git a/forge-gui/res/cardsfolder/upcoming/i_am_untouchable.txt b/forge-gui/res/cardsfolder/upcoming/i_am_untouchable.txt index bb2f9c148bc..71b297f5ec7 100644 --- a/forge-gui/res/cardsfolder/upcoming/i_am_untouchable.txt +++ b/forge-gui/res/cardsfolder/upcoming/i_am_untouchable.txt @@ -2,7 +2,7 @@ Name:I Am Untouchable ManaCost:no cost Types:Ongoing Scheme S:Mode$ Continuous | EffectZone$ Command | Affected$ You,Permanent.YouCtrl | AddKeyword$ Hexproof | Description$ You and permanents you control have hexproof. -T:Mode$ DamageDoneOnce | ValidTarget$ You | TriggerZones$ Battlefield | CombatDamage$ True | Execute$ TrigToken | TriggerZones$ Command | TriggerDescription$ When combat damage is dealt to you, create a 4/4 colorless Scarecrow artifact creature token with vigilance, then abandon this scheme. +T:Mode$ DamageDoneOnce | ValidTarget$ You | CombatDamage$ True | Execute$ TrigToken | TriggerZones$ Command | TriggerDescription$ When combat damage is dealt to you, create a 4/4 colorless Scarecrow artifact creature token with vigilance, then abandon this scheme. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_4_4_a_scarecrow_vigilance | TokenOwner$ You | SubAbility$ DBAbandon SVar:DBAbandon:DB$ Abandon Oracle:(An ongoing scheme remains face up until it's abandoned.)\nYou and permanents you control have hexproof.\nWhen combat damage is dealt to you, create a 4/4 colorless Scarecrow artifact creature token with vigilance, then abandon this scheme. diff --git a/forge-gui/res/cardsfolder/upcoming/no_secret_is_hidden_from_me.txt b/forge-gui/res/cardsfolder/upcoming/no_secret_is_hidden_from_me.txt index ddb30933b66..e67382295cc 100644 --- a/forge-gui/res/cardsfolder/upcoming/no_secret_is_hidden_from_me.txt +++ b/forge-gui/res/cardsfolder/upcoming/no_secret_is_hidden_from_me.txt @@ -3,10 +3,10 @@ ManaCost:no cost Types:Scheme T:Mode$ SetInMotion | ValidCard$ Card.Self | Execute$ TrigDigUntil | TriggerZones$ Command | TriggerDescription$ When you set this scheme in motion, exile cards from the top of your library until you exile a nonland card. You may cast that card without paying its mana cost. Then if you control six or more lands, repeat this process once. SVar:TrigDigUntil:DB$ DigUntil | Valid$ Card.nonLand | FoundDestination$ Exile | RevealedDestination$ Exile | RememberFound$ True | SubAbility$ DBPlay1 -SVar:DBPlay1:DB$ Play | Defined$ Remembered | ValidSA$ Spell | WithoutManaCost$ True | Optional$ True | SubAbility$ DBChange | SubAbility$ DBCleanup1 +SVar:DBPlay1:DB$ Play | Defined$ Remembered | ValidSA$ Spell | WithoutManaCost$ True | Optional$ True | SubAbility$ DBCleanup1 SVar:DBCleanup1:DB$ Cleanup | ClearRemembered$ True | SubAbility$ DBDigUntil SVar:DBDigUntil:DB$ DigUntil | Valid$ Card.nonLand | FoundDestination$ Exile | RevealedDestination$ Exile | RememberFound$ True | ConditionCheckSVar$ X | ConditionSVarCompare$ GE6 | SubAbility$ DBPlay2 -SVar:DBPlay2:DB$ Play | Defined$ Remembered | ValidSA$ Spell | WithoutManaCost$ True | Optional$ True | SubAbility$ DBChange | SubAbility$ DBCleanup2 +SVar:DBPlay2:DB$ Play | Defined$ Remembered | ValidSA$ Spell | WithoutManaCost$ True | Optional$ True | SubAbility$ DBCleanup2 SVar:DBCleanup2:DB$ Cleanup | ClearRemembered$ True SVar:X:Count$Valid Land.YouCtrl Oracle:When you set this scheme in motion, exile cards from the top of your library until you exile a nonland card. You may cast that card without paying its mana cost. Then if you control six or more lands, repeat this process once. diff --git a/forge-gui/res/cardsfolder/v/vault_87_forced_evolution.txt b/forge-gui/res/cardsfolder/v/vault_87_forced_evolution.txt index 637f94f76f7..4c4e24a2be4 100644 --- a/forge-gui/res/cardsfolder/v/vault_87_forced_evolution.txt +++ b/forge-gui/res/cardsfolder/v/vault_87_forced_evolution.txt @@ -2,7 +2,7 @@ Name:Vault 87: Forced Evolution ManaCost:3 G U Types:Enchantment Saga K:Chapter:3:DBSteal,DBPutCounter,DBDraw -SVar:DBSteal:DB$ GainControl | TgtPrompt$ Choose target creature | ValidTgts$ Creature.nonMutant | TgtPrompt$ Select target non-Mutant creature | LoseControl$ LeavesPlay,LoseControl | SpellDescription$ Gain control of target non-Mutant creature for as long as you control NICKNAME. +SVar:DBSteal:DB$ GainControl | ValidTgts$ Creature.nonMutant | TgtPrompt$ Select target non-Mutant creature | LoseControl$ LeavesPlay,LoseControl | SpellDescription$ Gain control of target non-Mutant creature for as long as you control NICKNAME. SVar:DBPutCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBAnimate | SpellDescription$ Put a +1/+1 counter on target creature you control. It becomes a Mutant in addition to its other types. SVar:DBAnimate:DB$ Animate | Defined$ Targeted | Types$ Mutant | Duration$ Permanent SVar:DBDraw:DB$ Draw | Defined$ You | NumCards$ X | SpellDescription$ Draw cards equal to the greatest power among Mutants you control. diff --git a/forge-gui/res/cardsfolder/v/verdant_succession.txt b/forge-gui/res/cardsfolder/v/verdant_succession.txt index 79b46115d3e..b53d096ba65 100644 --- a/forge-gui/res/cardsfolder/v/verdant_succession.txt +++ b/forge-gui/res/cardsfolder/v/verdant_succession.txt @@ -2,6 +2,6 @@ Name:Verdant Succession ManaCost:4 G Types:Enchantment T:Mode$ ChangesZone | ValidCard$ Creature.Green+nonToken | Origin$ Battlefield | Destination$ Graveyard | TriggerZones$ Battlefield | Execute$ TrigSearch | TriggerDescription$ Whenever a green nontoken creature dies, that creature's controller may search their library for a card with the same name as that creature, put it onto the battlefield, then shuffle. -SVar:TrigSearch:DB$ ChangeZone | Optional$ True | DefinedPlayer$ TriggeredCardController | ChangeType$ Triggered.sameName | ChangeNum$ 1 | Origin$ Library | Destination$ Battlefield | Optional$ You | ShuffleNonMandatory$ True +SVar:TrigSearch:DB$ ChangeZone | DefinedPlayer$ TriggeredCardController | ChangeType$ Triggered.sameName | ChangeNum$ 1 | Origin$ Library | Destination$ Battlefield | Optional$ You | ShuffleNonMandatory$ True AI:RemoveDeck:Random Oracle:Whenever a green nontoken creature dies, that creature's controller may search their library for a card with the same name as that creature, put it onto the battlefield, then shuffle. diff --git a/forge-gui/res/cardsfolder/v/vessel_of_ephemera.txt b/forge-gui/res/cardsfolder/v/vessel_of_ephemera.txt index 3ac2ef427f4..63773b615c9 100644 --- a/forge-gui/res/cardsfolder/v/vessel_of_ephemera.txt +++ b/forge-gui/res/cardsfolder/v/vessel_of_ephemera.txt @@ -1,6 +1,6 @@ Name:Vessel of Ephemera ManaCost:1 W Types:Enchantment -A:AB$ Token | Cost$ 2 W Sac<1/CARDNAME> | TokenOwner$ You | TokenAmount$ 2 | TokenScript$ w_1_1_spirit_flying | TokenOwner$ You | SpellDescription$ Create two 1/1 white Spirit creature tokens with flying. +A:AB$ Token | Cost$ 2 W Sac<1/CARDNAME> | TokenOwner$ You | TokenAmount$ 2 | TokenScript$ w_1_1_spirit_flying | SpellDescription$ Create two 1/1 white Spirit creature tokens with flying. DeckHas:Ability$Token Oracle:{2}{W}, Sacrifice Vessel of Ephemera: Create two 1/1 white Spirit creature tokens with flying. diff --git a/forge-gui/res/cardsfolder/v/vivien_natures_avenger.txt b/forge-gui/res/cardsfolder/v/vivien_natures_avenger.txt index ac81175a2bd..31c84c7fe4d 100644 --- a/forge-gui/res/cardsfolder/v/vivien_natures_avenger.txt +++ b/forge-gui/res/cardsfolder/v/vivien_natures_avenger.txt @@ -3,7 +3,7 @@ ManaCost:4 G G Types:Legendary Planeswalker Vivien Loyalty:3 A:AB$ PutCounter | Cost$ AddCounter<1/LOYALTY> | Planeswalker$ True | CounterNum$ 3 | CounterType$ P1P1 | TargetMin$ 0 | TargetMax$ 1 | ValidTgts$ Creature | TgtPrompt$ Select target creature | SpellDescription$ Put three +1/+1 counters on up to one target creature. -A:AB$ DigUntil | Cost$ SubCounter<1/LOYALTY> | Planeswalker$ True | Valid$ Card.Creature | ValidDescription$ creature | FoundDestination$ Hand | RevealedDestination$ Library | RevealedLibraryPosition$ -1 | RevealRandomOrder$ True | FoundDestination$ Hand | SpellDescription$ Reveal cards from the top of your library until you reveal a creature card. Put that card into your hand and the rest on the bottom of your library in a random order. +A:AB$ DigUntil | Cost$ SubCounter<1/LOYALTY> | Planeswalker$ True | Valid$ Card.Creature | ValidDescription$ creature | FoundDestination$ Hand | RevealedDestination$ Library | RevealedLibraryPosition$ -1 | RevealRandomOrder$ True | SpellDescription$ Reveal cards from the top of your library until you reveal a creature card. Put that card into your hand and the rest on the bottom of your library in a random order. A:AB$ Pump | Cost$ SubCounter<6/LOYALTY> | Planeswalker$ True | Ultimate$ True | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumAtt$ +10 | NumDef$ +10 | KW$ Trample | SpellDescription$ Target creature gets +10/+10 and gains trample until end of turn. DeckHas:Ability$Counters Oracle:[+1]: Put three +1/+1 counters on up to one target creature.\n[-1]: Reveal cards from the top of your library until you reveal a creature card. Put that card into your hand and the rest on the bottom of your library in a random order.\n[-6]: Target creature gets +10/+10 and gains trample until end of turn. diff --git a/forge-gui/res/cardsfolder/y/yaroks_fenlurker.txt b/forge-gui/res/cardsfolder/y/yaroks_fenlurker.txt index 398359522a9..8cf98d4cd4f 100644 --- a/forge-gui/res/cardsfolder/y/yaroks_fenlurker.txt +++ b/forge-gui/res/cardsfolder/y/yaroks_fenlurker.txt @@ -3,6 +3,6 @@ ManaCost:B B Types:Creature Horror PT:1/1 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigExile | TriggerDescription$ When CARDNAME enters, each opponent exiles a card from their hand. -SVar:TrigExile:DB$ ChangeZone | Origin$ Hand | Destination$ Exile | ChangeType$ Card | DefinedPlayer$ Player.Opponent | Mandatory$ True | ChangeType$ Card | ChangeNum$ 1 | Hidden$ True | IsCurse$ True +SVar:TrigExile:DB$ ChangeZone | Origin$ Hand | Destination$ Exile | DefinedPlayer$ Player.Opponent | Mandatory$ True | ChangeType$ Card | ChangeNum$ 1 | Hidden$ True | IsCurse$ True A:AB$ Pump | Cost$ 2 B | Defined$ Self | NumAtt$ +1 | NumDef$ +1 | SpellDescription$ CARDNAME gets +1/+1 until end of turn. Oracle:When Yarok's Fenlurker enters, each opponent exiles a card from their hand.\n{2}{B}: Yarok's Fenlurker gets +1/+1 until end of turn. From 90adf4b0cb532aebf1f3f5ef36c72769220aafba Mon Sep 17 00:00:00 2001 From: tool4ever Date: Mon, 14 Oct 2024 06:38:01 +0000 Subject: [PATCH 39/91] Update struggle_for_project_purity.txt --- forge-gui/res/cardsfolder/s/struggle_for_project_purity.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui/res/cardsfolder/s/struggle_for_project_purity.txt b/forge-gui/res/cardsfolder/s/struggle_for_project_purity.txt index 955934334f7..d2c89d86212 100644 --- a/forge-gui/res/cardsfolder/s/struggle_for_project_purity.txt +++ b/forge-gui/res/cardsfolder/s/struggle_for_project_purity.txt @@ -4,7 +4,7 @@ Types:Enchantment K:ETBReplacement:Other:SiegeChoice SVar:SiegeChoice:DB$ GenericChoice | Choices$ Brotherhood,Enclave | Defined$ You | SetChosenMode$ True | AILogic$ Brotherhood | ShowChoice$ ExceptSelf | SpellDescription$ As CARDNAME enters, choose Brotherhood or Enclave. SVar:Brotherhood:DB$ Pump | SpellDescription$ Brotherhood -SVar:Enclave:DB$ Pump | SpellDescription$ Enclare +SVar:Enclave:DB$ Pump | SpellDescription$ Enclave S:Mode$ Continuous | Affected$ Card.Self+ChosenModeBrotherhood | AddTrigger$ BrotherhoodTrig | Description$ • Brotherhood — At the beginning of your upkeep, each opponent draws a card. You draw a card for each card drawn this way. S:Mode$ Continuous | Affected$ Card.Self+ChosenModeEnclave | AddTrigger$ EnclaveTrig | Description$ • Enclave — Whenever a player attacks you with one or more creatures, that player gets twice that many rad counters. SVar:BrotherhoodTrig:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDraw | Secondary$ True | TriggerDescription$ Brotherhood — At the beginning of your upkeep, each opponent draws a card. You draw a card for each card drawn this way. From 8f33da5b9cd06349c8e28a02b76ba3c5d1127c3f Mon Sep 17 00:00:00 2001 From: tool4ever Date: Mon, 14 Oct 2024 12:23:18 +0200 Subject: [PATCH 40/91] AI aura targeting fix (#6320) --- forge-ai/src/main/java/forge/ai/AiController.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/forge-ai/src/main/java/forge/ai/AiController.java b/forge-ai/src/main/java/forge/ai/AiController.java index 966300ee475..14915df4a79 100644 --- a/forge-ai/src/main/java/forge/ai/AiController.java +++ b/forge-ai/src/main/java/forge/ai/AiController.java @@ -923,6 +923,10 @@ public class AiController { if (checkCurseEffects(sa)) { return AiPlayDecision.CurseEffects; } + // TODO maybe other location for this? + if (!sa.isLegalAfterStack()) { + return AiPlayDecision.AnotherTime; + } Card spellHost = card; if (sa.isSpell()) { spellHost = CardCopyService.getLKICopy(spellHost); @@ -930,10 +934,6 @@ public class AiController { spellHost.setLastKnownZone(game.getStackZone()); // need to add to stack to make check Restrictions respect stack cmc spellHost.setCastFrom(card.getZone()); } - // TODO maybe other location for this? - if (!sa.isLegalAfterStack()) { - return AiPlayDecision.AnotherTime; - } if (!sa.checkRestrictions(spellHost, player)) { return AiPlayDecision.AnotherTime; } @@ -946,7 +946,7 @@ public class AiController { } } if (sa instanceof Spell) { - if (card.isPermanent()) { + if (sa.getApi() == ApiType.PermanentCreature || sa.getApi() == ApiType.PermanentNoncreature) { return canPlayFromEffectAI((Spell) sa, false, true); } if (!player.cantLoseForZeroOrLessLife() && player.canLoseLife() && From b6f118f89b96aaae3f5030091f001179c9372b35 Mon Sep 17 00:00:00 2001 From: tool4ever Date: Mon, 14 Oct 2024 12:55:00 +0200 Subject: [PATCH 41/91] Fear of Sleep Paralysis and support (#6287) --- .../main/java/forge/ai/AiCostDecision.java | 4 +-- .../src/main/java/forge/ai/ComputerUtil.java | 12 +++------ .../forge/ai/ability/CountersRemoveAi.java | 2 ++ .../src/main/java/forge/game/GameEntity.java | 8 +++--- .../ability/effects/CountersMoveEffect.java | 19 +++++++------ .../effects/CountersPutOrRemoveEffect.java | 13 ++++++++- .../effects/CountersRemoveAllEffect.java | 5 ++-- .../ability/effects/CountersRemoveEffect.java | 21 +++++++++------ .../src/main/java/forge/game/card/Card.java | 27 ++++++++++++++++--- .../forge/game/cost/CostRemoveAnyCounter.java | 10 +++++-- .../main/java/forge/game/cost/CostUntap.java | 5 +++- .../java/forge/game/cost/CostUntapType.java | 4 ++- .../main/java/forge/game/player/Player.java | 13 +++++++-- .../upcoming/fear_of_sleep_paralysis.txt | 11 ++++++++ .../java/forge/player/HumanCostDecision.java | 4 +-- 15 files changed, 110 insertions(+), 48 deletions(-) create mode 100644 forge-gui/res/cardsfolder/upcoming/fear_of_sleep_paralysis.txt diff --git a/forge-ai/src/main/java/forge/ai/AiCostDecision.java b/forge-ai/src/main/java/forge/ai/AiCostDecision.java index 0da8034e52f..fd176603ff0 100644 --- a/forge-ai/src/main/java/forge/ai/AiCostDecision.java +++ b/forge-ai/src/main/java/forge/ai/AiCostDecision.java @@ -651,7 +651,7 @@ public class AiCostDecision extends CostDecisionMakerBase { // TODO sort negatives to remove from best Cards first? for (final Card crd : negatives) { for (Map.Entry e : table.filterToRemove(crd).entrySet()) { - if (ComputerUtil.isNegativeCounter(e.getKey(), crd)) { + if (ComputerUtil.isNegativeCounter(e.getKey(), crd) && crd.canRemoveCounters(e.getKey())) { int over = Math.min(e.getValue(), c - toRemove); if (over > 0) { toRemove += over; @@ -762,7 +762,7 @@ public class AiCostDecision extends CostDecisionMakerBase { } } - // if table is empty, than no counter was removed + // if table is empty, then no counter was removed return table.isEmpty() ? null : PaymentDecision.counters(table); } diff --git a/forge-ai/src/main/java/forge/ai/ComputerUtil.java b/forge-ai/src/main/java/forge/ai/ComputerUtil.java index af51c5afa0b..3af26c3358f 100644 --- a/forge-ai/src/main/java/forge/ai/ComputerUtil.java +++ b/forge-ai/src/main/java/forge/ai/ComputerUtil.java @@ -836,10 +836,9 @@ public class ComputerUtil { } public static CardCollection chooseUntapType(final Player ai, final String type, final Card activate, final boolean untap, final int amount, SpellAbility sa) { - CardCollection typeList = - CardLists.getValidCards(ai.getCardsIn(ZoneType.Battlefield), type.split(";"), activate.getController(), activate, sa); + CardCollection typeList = CardLists.getValidCards(ai.getCardsIn(ZoneType.Battlefield), type.split(";"), activate.getController(), activate, sa); - typeList = CardLists.filter(typeList, Presets.TAPPED); + typeList = CardLists.filter(typeList, Presets.TAPPED, c -> c.getCounters(CounterEnumType.STUN) == 0 || c.canRemoveCounters(CounterType.get(CounterEnumType.STUN))); if (untap) { typeList.remove(activate); @@ -851,12 +850,7 @@ public class ComputerUtil { CardLists.sortByPowerDesc(typeList); - final CardCollection untapList = new CardCollection(); - - for (int i = 0; i < amount; i++) { - untapList.add(typeList.get(i)); - } - return untapList; + return typeList.subList(0, amount); } public static CardCollection chooseReturnType(final Player ai, final String type, final Card activate, final Card target, final int amount, SpellAbility sa) { diff --git a/forge-ai/src/main/java/forge/ai/ability/CountersRemoveAi.java b/forge-ai/src/main/java/forge/ai/ability/CountersRemoveAi.java index 6a307d80773..d386ad08d87 100644 --- a/forge-ai/src/main/java/forge/ai/ability/CountersRemoveAi.java +++ b/forge-ai/src/main/java/forge/ai/ability/CountersRemoveAi.java @@ -221,6 +221,8 @@ public class CountersRemoveAi extends SpellAbilityAi { sa.getTargets().add(ComputerUtilCard.getBestCreatureAI(aiUndyingList)); return true; } + + // TODO stun counters with canRemoveCounters check // remove P1P1 counters from opposing creatures CardCollection oppP1P1List = CardLists.filter(list, diff --git a/forge-game/src/main/java/forge/game/GameEntity.java b/forge-game/src/main/java/forge/game/GameEntity.java index 285514b2189..a6c986b9d94 100644 --- a/forge-game/src/main/java/forge/game/GameEntity.java +++ b/forge-game/src/main/java/forge/game/GameEntity.java @@ -309,8 +309,10 @@ public abstract class GameEntity extends GameObject implements IIdentifiable { abstract public void setCounters(final Map allCounters); + abstract public boolean canRemoveCounters(final CounterType type); + abstract public boolean canReceiveCounters(final CounterType type); - abstract public void subtractCounter(final CounterType counterName, final int n, final Player remover); + abstract public int subtractCounter(final CounterType counterName, final int n, final Player remover); abstract public void clearCounters(); public boolean canReceiveCounters(final CounterEnumType type) { @@ -331,8 +333,8 @@ public abstract class GameEntity extends GameObject implements IIdentifiable { addCounter(CounterType.get(counterType), n, source, table); } - public void subtractCounter(final CounterEnumType counterName, final int n, final Player remover) { - subtractCounter(CounterType.get(counterName), n, remover); + public int subtractCounter(final CounterEnumType counterName, final int n, final Player remover) { + return subtractCounter(CounterType.get(counterName), n, remover); } abstract public void addCounterInternal(final CounterType counterType, final int n, final Player source, final boolean fireEvents, GameEntityCounterTable table, Map params); diff --git a/forge-game/src/main/java/forge/game/ability/effects/CountersMoveEffect.java b/forge-game/src/main/java/forge/game/ability/effects/CountersMoveEffect.java index 1f22a9db209..55f85d87356 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/CountersMoveEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/CountersMoveEffect.java @@ -101,8 +101,7 @@ public class CountersMoveEffect extends SpellAbilityEffect { // uses for multi sources -> one defined/target // this needs given counter type if (sa.hasParam("ValidSource")) { - CardCollectionView srcCards = game.getCardsIn(ZoneType.Battlefield); - srcCards = CardLists.getValidCards(srcCards, sa.getParam("ValidSource"), activator, host, sa); + CardCollectionView srcCards = CardLists.getValidCards(game.getCardsIn(ZoneType.Battlefield), sa.getParam("ValidSource"), activator, host, sa); List tgtCards = getDefinedCardsOrTargeted(sa); if (tgtCards.isEmpty()) { @@ -147,11 +146,6 @@ public class CountersMoveEffect extends SpellAbilityEffect { Map countersToAdd = Maps.newHashMap(); for (Card src : srcCards) { - // rule 121.5: If the first and second objects are the same object, nothing happens - if (src.equals(dest)) { - continue; - } - if ("All".equals(counterName)) { final Map tgtCounters = Maps.newHashMap(src.getCounters()); for (Map.Entry e : tgtCounters.entrySet()) { @@ -183,8 +177,7 @@ public class CountersMoveEffect extends SpellAbilityEffect { params.put("CounterType", cType); params.put("Source", source); - CardCollectionView tgtCards = game.getCardsIn(ZoneType.Battlefield); - tgtCards = CardLists.getValidCards(tgtCards, sa.getParam("ValidDefined"), activator, host, sa); + CardCollectionView tgtCards = CardLists.getValidCards(game.getCardsIn(ZoneType.Battlefield), sa.getParam("ValidDefined"), activator, host, sa); if (counterNum.equals("Any")) { tgtCards = activator.getController().chooseCardsForEffect( @@ -203,6 +196,9 @@ public class CountersMoveEffect extends SpellAbilityEffect { if (!dest.canReceiveCounters(cType)) { continue; } + if (!source.canRemoveCounters(cType)) { + continue; + } Card cur = game.getCardState(dest, null); if (cur == null || !cur.equalsWithGameTimestamp(dest)) { @@ -287,7 +283,7 @@ public class CountersMoveEffect extends SpellAbilityEffect { final List typeChoices = Lists.newArrayList(); // get types of counters for (CounterType ct : tgtCounters.keySet()) { - if (dest.canReceiveCounters(ct)) { + if (dest.canReceiveCounters(ct) && source.canRemoveCounters(cType)) { typeChoices.add(ct); } } @@ -337,6 +333,9 @@ public class CountersMoveEffect extends SpellAbilityEffect { if (!dest.canReceiveCounters(cType)) { return; } + if (!src.canRemoveCounters(cType)) { + return; + } int cmax = src.getCounters(cType); if (cmax <= 0) { diff --git a/forge-game/src/main/java/forge/game/ability/effects/CountersPutOrRemoveEffect.java b/forge-game/src/main/java/forge/game/ability/effects/CountersPutOrRemoveEffect.java index 0b4f50aa69f..90c56c66c70 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/CountersPutOrRemoveEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/CountersPutOrRemoveEffect.java @@ -127,7 +127,18 @@ public class CountersPutOrRemoveEffect extends SpellAbilityEffect { putCounter = !Expressions.compare(value, operator, operandValue); } else { - putCounter = pc.chooseBinary(sa, prompt, BinaryChoiceType.AddOrRemove, params); + boolean canReceive = tgtCard.canReceiveCounters(ctype); + boolean canRemove = tgtCard.canRemoveCounters(ctype); + if (!canReceive && !canRemove) { + return; + } + if (canReceive && !canRemove) { + putCounter = true; + } else if (!canReceive && canRemove) { + putCounter = false; + } else { + putCounter = pc.chooseBinary(sa, prompt, BinaryChoiceType.AddOrRemove, params); + } } if (putCounter) { diff --git a/forge-game/src/main/java/forge/game/ability/effects/CountersRemoveAllEffect.java b/forge-game/src/main/java/forge/game/ability/effects/CountersRemoveAllEffect.java index 459b6d7371f..4a9de811f88 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/CountersRemoveAllEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/CountersRemoveAllEffect.java @@ -63,8 +63,7 @@ public class CountersRemoveAllEffect extends SpellAbilityEffect { for (final Card tgtCard : cards) { if (sa.hasParam("AllCounterTypes")) { for (Map.Entry e : Lists.newArrayList(tgtCard.getCounters().entrySet())) { - numberRemoved += e.getValue(); - tgtCard.subtractCounter(e.getKey(), e.getValue(), sa.getActivatingPlayer()); + numberRemoved += tgtCard.subtractCounter(e.getKey(), e.getValue(), sa.getActivatingPlayer()); } //tgtCard.getCounters().clear(); continue; @@ -74,7 +73,7 @@ public class CountersRemoveAllEffect extends SpellAbilityEffect { } if (counterAmount > 0) { - tgtCard.subtractCounter(CounterType.getType(type), counterAmount, sa.getActivatingPlayer()); + numberRemoved += tgtCard.subtractCounter(CounterType.getType(type), counterAmount, sa.getActivatingPlayer()); game.updateLastStateForCard(tgtCard); } } diff --git a/forge-game/src/main/java/forge/game/ability/effects/CountersRemoveEffect.java b/forge-game/src/main/java/forge/game/ability/effects/CountersRemoveEffect.java index d2baf42e9e3..524d430a95d 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/CountersRemoveEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/CountersRemoveEffect.java @@ -110,8 +110,7 @@ public class CountersRemoveEffect extends SpellAbilityEffect { // Removing energy if (type.equals("All")) { for (Map.Entry e : Lists.newArrayList(tgtPlayer.getCounters().entrySet())) { - tgtPlayer.subtractCounter(e.getKey(), e.getValue(), activator); - totalRemoved += e.getValue(); + totalRemoved += tgtPlayer.subtractCounter(e.getKey(), e.getValue(), activator); } } else { if (num.equals("All")) { @@ -120,8 +119,7 @@ public class CountersRemoveEffect extends SpellAbilityEffect { if (type.equals("Any")) { totalRemoved += removeAnyType(tgtPlayer, cntToRemove, sa); } else { - tgtPlayer.subtractCounter(counterType, cntToRemove, activator); - totalRemoved += cntToRemove; + totalRemoved += tgtPlayer.subtractCounter(counterType, cntToRemove, activator); } } } @@ -165,11 +163,11 @@ public class CountersRemoveEffect extends SpellAbilityEffect { if (gameCard == null || !tgtCard.equalsWithGameTimestamp(gameCard)) { continue; } + final Zone zone = game.getZoneOf(gameCard); if (type.equals("All")) { for (Map.Entry e : Lists.newArrayList(gameCard.getCounters().entrySet())) { - gameCard.subtractCounter(e.getKey(), e.getValue(), activator); - totalRemoved += e.getValue(); + totalRemoved += gameCard.subtractCounter(e.getKey(), e.getValue(), activator); } game.updateLastStateForCard(gameCard); continue; @@ -180,6 +178,9 @@ public class CountersRemoveEffect extends SpellAbilityEffect { if (type.equals("Any")) { totalRemoved += removeAnyType(gameCard, cntToRemove, sa); } else { + if (!tgtCard.canRemoveCounters(counterType)) { + continue; + } cntToRemove = Math.min(cntToRemove, gameCard.getCounters(counterType)); if (zone.is(ZoneType.Battlefield) || zone.is(ZoneType.Exile)) { @@ -221,14 +222,18 @@ public class CountersRemoveEffect extends SpellAbilityEffect { final Player activator = sa.getActivatingPlayer(); final PlayerController pc = activator.getController(); final Map tgtCounters = Maps.newHashMap(entity.getCounters()); + for (CounterType ct : ImmutableList.copyOf(tgtCounters.keySet())) { + if (!entity.canRemoveCounters(ct)) { + tgtCounters.remove(ct); + } + } while (cntToRemove > 0 && !tgtCounters.isEmpty()) { Map params = Maps.newHashMap(); params.put("Target", entity); String prompt = Localizer.getInstance().getMessage("lblSelectCountersTypeToRemove"); - CounterType chosenType = pc.chooseCounterType( - ImmutableList.copyOf(tgtCounters.keySet()), sa, prompt, params); + CounterType chosenType = pc.chooseCounterType(ImmutableList.copyOf(tgtCounters.keySet()), sa, prompt, params); int max = Math.min(cntToRemove, tgtCounters.get(chosenType)); // remove selection so player can't cheat additional trigger by choosing the same type multiple times diff --git a/forge-game/src/main/java/forge/game/card/Card.java b/forge-game/src/main/java/forge/game/card/Card.java index e7ffd5e6ff1..f413b32e8f3 100644 --- a/forge-game/src/main/java/forge/game/card/Card.java +++ b/forge-game/src/main/java/forge/game/card/Card.java @@ -1600,6 +1600,21 @@ public class Card extends GameEntity implements Comparable, IHasSVars, ITr return true; } + @Override + public final boolean canRemoveCounters(final CounterType type) { + if (isPhasedOut()) { + return false; + } + final Map repParams = AbilityKey.mapFromAffected(this); + repParams.put(AbilityKey.CounterType, type); + repParams.put(AbilityKey.Result, 0); + repParams.put(AbilityKey.IsDamage, false); + if (game.getReplacementHandler().cantHappenCheck(ReplacementType.RemoveCounter, repParams)) { + return false; + } + return true; + } + @Override public void addCounterInternal(final CounterType counterType, final int n, final Player source, final boolean fireEvents, GameEntityCounterTable table, Map params) { int addAmount = n; @@ -1736,11 +1751,11 @@ public class Card extends GameEntity implements Comparable, IHasSVars, ITr } @Override - public final void subtractCounter(final CounterType counterName, final int n, final Player remover) { - subtractCounter(counterName, n, remover, false); + public final int subtractCounter(final CounterType counterName, final int n, final Player remover) { + return subtractCounter(counterName, n, remover, false); } - public final void subtractCounter(final CounterType counterName, final int n, final Player remover, final boolean isDamage) { + public final int subtractCounter(final CounterType counterName, final int n, final Player remover, final boolean isDamage) { int oldValue = getCounters(counterName); int newValue = Math.max(oldValue - n, 0); @@ -1758,12 +1773,14 @@ public class Card extends GameEntity implements Comparable, IHasSVars, ITr newValue = 0; } break; + case Replaced: + return 0; default: break; } final int delta = oldValue - newValue; - if (delta == 0) { return; } + if (delta == 0) { return 0; } int powerBonusBefore = getPowerBonusFromCounters(); int toughnessBonusBefore = getToughnessBonusFromCounters(); @@ -1800,6 +1817,8 @@ public class Card extends GameEntity implements Comparable, IHasSVars, ITr runParams.put(AbilityKey.CounterAmount, delta); runParams.put(AbilityKey.NewCounterAmount, newValue); getGame().getTriggerHandler().runTrigger(TriggerType.CounterRemovedOnce, runParams, false); + + return delta; } @Override diff --git a/forge-game/src/main/java/forge/game/cost/CostRemoveAnyCounter.java b/forge-game/src/main/java/forge/game/cost/CostRemoveAnyCounter.java index 95818b6eff9..c68f97212ff 100644 --- a/forge-game/src/main/java/forge/game/cost/CostRemoveAnyCounter.java +++ b/forge-game/src/main/java/forge/game/cost/CostRemoveAnyCounter.java @@ -70,10 +70,16 @@ public class CostRemoveAnyCounter extends CostPart { int allCounters = 0; for (Card c : validCards) { if (this.counter != null) { + if (!c.canRemoveCounters(this.counter)) { + continue; + } allCounters += c.getCounters(this.counter); } else { - for (Integer value : c.getCounters().values()) { - allCounters += value; + for (Map.Entry entry : c.getCounters().entrySet()) { + if (!c.canRemoveCounters(entry.getKey())) { + continue; + } + allCounters += entry.getValue(); } } } diff --git a/forge-game/src/main/java/forge/game/cost/CostUntap.java b/forge-game/src/main/java/forge/game/cost/CostUntap.java index 0fbebd0bbed..2a4a800be0c 100644 --- a/forge-game/src/main/java/forge/game/cost/CostUntap.java +++ b/forge-game/src/main/java/forge/game/cost/CostUntap.java @@ -21,6 +21,8 @@ import com.google.common.collect.Maps; import forge.game.ability.AbilityKey; import forge.game.card.Card; import forge.game.card.CardCollection; +import forge.game.card.CounterEnumType; +import forge.game.card.CounterType; import forge.game.player.Player; import forge.game.spellability.SpellAbility; import forge.game.trigger.TriggerType; @@ -78,7 +80,8 @@ public class CostUntap extends CostPart { @Override public final boolean canPay(final SpellAbility ability, final Player payer, final boolean effect) { final Card source = ability.getHostCard(); - return source.isTapped() && !source.isAbilitySick(); + return source.isTapped() && !source.isAbilitySick() && + (source.getCounters(CounterEnumType.STUN) == 0 || source.canRemoveCounters(CounterType.get(CounterEnumType.STUN))); } @Override diff --git a/forge-game/src/main/java/forge/game/cost/CostUntapType.java b/forge-game/src/main/java/forge/game/cost/CostUntapType.java index 4fc1cbd34bc..4cc9894e32d 100644 --- a/forge-game/src/main/java/forge/game/cost/CostUntapType.java +++ b/forge-game/src/main/java/forge/game/cost/CostUntapType.java @@ -23,6 +23,8 @@ import forge.game.card.Card; import forge.game.card.CardCollection; import forge.game.card.CardCollectionView; import forge.game.card.CardLists; +import forge.game.card.CounterEnumType; +import forge.game.card.CounterType; import forge.game.card.CardPredicates.Presets; import forge.game.player.Player; import forge.game.spellability.SpellAbility; @@ -90,7 +92,7 @@ public class CostUntapType extends CostPartWithList { if (!canUntapSource) { typeList.remove(source); } - typeList = CardLists.filter(typeList, Presets.TAPPED); + typeList = CardLists.filter(typeList, Presets.TAPPED, c -> c.getCounters(CounterEnumType.STUN) == 0 || c.canRemoveCounters(CounterType.get(CounterEnumType.STUN))); final int amount = this.getAbilityAmount(ability); return (typeList.size() != 0) && (typeList.size() >= amount); diff --git a/forge-game/src/main/java/forge/game/player/Player.java b/forge-game/src/main/java/forge/game/player/Player.java index 02d9db748e2..df35d49a727 100644 --- a/forge-game/src/main/java/forge/game/player/Player.java +++ b/forge-game/src/main/java/forge/game/player/Player.java @@ -855,6 +855,14 @@ public class Player extends GameEntity implements Comparable { return true; } + public final boolean canRemoveCounters(final CounterType type) { + if (!isInGame()) { + return false; + } + // no RE affecting players currently, skip check for performance + return true; + } + @Override public void addCounterInternal(final CounterType counterType, final int n, final Player source, final boolean fireEvents, GameEntityCounterTable table, Map params) { int addAmount = n; @@ -896,12 +904,12 @@ public class Player extends GameEntity implements Comparable { } @Override - public void subtractCounter(CounterType counterName, int num, final Player remover) { + public int subtractCounter(CounterType counterName, int num, final Player remover) { int oldValue = getCounters(counterName); int newValue = Math.max(oldValue - num, 0); final int delta = oldValue - newValue; - if (delta == 0) { return; } + if (delta == 0) { return 0; } setCounters(counterName, newValue, null, true); @@ -917,6 +925,7 @@ public class Player extends GameEntity implements Comparable { getGame().getTriggerHandler().runTrigger(TriggerType.CounterRemoved, runParams, false); } */ + return delta; } public final void clearCounters() { diff --git a/forge-gui/res/cardsfolder/upcoming/fear_of_sleep_paralysis.txt b/forge-gui/res/cardsfolder/upcoming/fear_of_sleep_paralysis.txt new file mode 100644 index 00000000000..a750cc23ea3 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/fear_of_sleep_paralysis.txt @@ -0,0 +1,11 @@ +Name:Fear of Sleep Paralysis +ManaCost:5 U +Types:Enchantment Creature Nightmare +PT:6/6 +K:Flying +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self,Enchantment.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigTap | TriggerDescription$ Eerie — Whenever CARDNAME or another enchantment you control enters and whenever you fully unlock a Room, tap up to one target creature and put a stun counter on it. +T:Mode$ FullyUnlock | ValidCard$ Card.Room | ValidPlayer$ You | Secondary$ True | Execute$ TrigTap | TriggerZones$ Battlefield | TriggerDescription$ Eerie — Whenever CARDNAME or another enchantment you control enters and whenever you fully unlock a Room, tap up to one target creature and put a stun counter on it. +SVar:TrigTap:DB$ Tap | ValidTgts$ Creature | TargetMin$ 0 | TargetMax$ 1 | SubAbility$ DBStun +SVar:DBStun:DB$ PutCounter | Defined$ Targeted | CounterType$ Stun | CounterNum$ 1 +R:Event$ RemoveCounter | ActiveZones$ Battlefield | ValidCard$ Permanent.OppCtrl | ValidCounterType$ STUN | Layer$ CantHappen | Description$ Stun counters can't be removed from permanents your opponents control. +Oracle:Flying\nEerie — Whenever Fear of Sleep Paralysis or another enchantment you control enters and whenever you fully unlock a Room, tap up to one target creature and put a stun counter on it.\nStun counters can't be removed from permanents your opponents control. (They won't untap if they have stun counters.) diff --git a/forge-gui/src/main/java/forge/player/HumanCostDecision.java b/forge-gui/src/main/java/forge/player/HumanCostDecision.java index 6f8437163dc..4ffa07d42fc 100644 --- a/forge-gui/src/main/java/forge/player/HumanCostDecision.java +++ b/forge-gui/src/main/java/forge/player/HumanCostDecision.java @@ -992,7 +992,7 @@ public class HumanCostDecision extends CostDecisionMakerBase { cType = getController().chooseCounterType(Lists.newArrayList(cmap.keySet()), sa, prompt, null); } - if (cType == null) { + if (cType == null || !c.canRemoveCounters(cType)) { return false; } @@ -1308,7 +1308,7 @@ public class HumanCostDecision extends CostDecisionMakerBase { public PaymentDecision visit(final CostUntapType cost) { CardCollection typeList = CardLists.getValidCards(player.getGame().getCardsIn(ZoneType.Battlefield), cost.getType().split(";"), player, source, ability); - typeList = CardLists.filter(typeList, Presets.TAPPED); + typeList = CardLists.filter(typeList, Presets.TAPPED, c -> c.getCounters(CounterEnumType.STUN) == 0 || c.canRemoveCounters(CounterType.get(CounterEnumType.STUN))); if (!cost.canUntapSource) { typeList.remove(source); } From efd883ef1239e64eb443e70c64a7beeca50c31d2 Mon Sep 17 00:00:00 2001 From: Paul Hammerton <18243520+paulsnoops@users.noreply.github.com> Date: Mon, 14 Oct 2024 13:17:13 +0100 Subject: [PATCH 42/91] Edition updates: SLD, YDSK --- forge-gui/res/editions/Alchemy Duskmourn.txt | 31 ++++++++++++++++++- .../res/editions/Secret Lair Drop Series.txt | 6 +++- 2 files changed, 35 insertions(+), 2 deletions(-) diff --git a/forge-gui/res/editions/Alchemy Duskmourn.txt b/forge-gui/res/editions/Alchemy Duskmourn.txt index 761fe1255ee..08cae103b59 100644 --- a/forge-gui/res/editions/Alchemy Duskmourn.txt +++ b/forge-gui/res/editions/Alchemy Duskmourn.txt @@ -6,4 +6,33 @@ Type=Online ScryfallCode=YDSK [cards] -0 R Solitary Study // Endless Corridor @Leon Tukker +1 M Ethrimik, Imagined Fiend @John Tedrick +2 U Improvising Aerialist @Riccardo Federici +3 R Mothlight Processionist @A. M. Sartor +4 R Solitary Study // Endless Corridor @Leon Tukker +5 U Housemeld @David Auden Nash +6 M Lurker in the Deep @Jana Heidersdorf +7 R Fear of Ridicule @Warren Mahy +8 R Glimmer Hoarder @Irina Nordsol +9 R Razor Demon @Riccardo Federici +10 U Replicating Terror @Septian Fajrianto +11 M Welcome the Darkness @Tiffany Turrill +12 U Anguished Recollection @Chris Rallis +13 R Crude Abattoir // Unsavory Kitchen @Marina Ortega Lorente +14 U Eager Flameguide @Irina Nordsol +15 R Chittering Illuminator @Aurore Folny +16 U Harrowing Swarm @John Tedrick +17 M Verdant Dread @Septian Fajrianto +18 U Wary Zone Guard @Elizabeth Peiró +19 R Effie, Fast Learner @Elizabeth Peiró +20 R Enduring Friendship @Flavio Greco Paglia +21 U Fear of Change @Maxime Minard +22 R Gilded Ambusher @David Auden Nash +23 U Golden Sidekick @Domenico Cava +24 M Mangled Soulrager @Xabi Gaztelua +25 R Mischievous Lookout @Steven Russell Black +26 R Polterheist @Josu Hernaiz +27 R Unnatural Summons @Jana Heidersdorf +28 R Valiant Emberkin @Andrea Piparo +29 U Wingbright Thief @Racrufi +30 R Soul Shredder @Josu Hernaiz diff --git a/forge-gui/res/editions/Secret Lair Drop Series.txt b/forge-gui/res/editions/Secret Lair Drop Series.txt index 8de4bbbad21..314bf0950dd 100644 --- a/forge-gui/res/editions/Secret Lair Drop Series.txt +++ b/forge-gui/res/editions/Secret Lair Drop Series.txt @@ -796,7 +796,7 @@ F798 M Discord, Lord of Disharmony @Narendra Bintara Adi 827 R Norin the Wary @Jarel Threat 827b R Norin the Wary @Jarel Threat 828 R Keen Duelist @Thanh Tuấn -871 R Soul-Guide Lantern @ +871 R Soul-Guide Lantern @Tyler Walpole 872 R Yargle and Multani @Warren Mahy 873 R Dark Deal @Tyler Jacobson 874 R Archivist of Oghma @Cory Trego-Erdner @@ -1667,6 +1667,10 @@ F1540 M Rainbow Dash @John Thacker 1809 R Varragoth, Bloodsky Sire @Domenico Cava 1810 R Twinflame @Sean Vo 1811 R Genesis Chamber @Eddie Mendoza +1821 R Mana Geyser @Mike Burns +1822 R Lightning Bolt @Mike Burns +1823 R Fierce Guardianship @Mike Burns +1824 R Delayed Blast Fireball @Mike Burns 8001 M Jace, the Mind Sculptor @Wizard of Barge 9990 R Doom Blade @Cynthia Sheppard 9991 R Massacre @Andrey Kuzinskiy From c31b26a13d5b23a3543063c2cc1495bc79cd6c19 Mon Sep 17 00:00:00 2001 From: Paul Hammerton <18243520+paulsnoops@users.noreply.github.com> Date: Mon, 14 Oct 2024 13:21:03 +0100 Subject: [PATCH 43/91] Add YDSK to formats --- forge-gui/res/formats/Archived/Alchemy/2024-10-15.txt | 6 ++++++ forge-gui/res/formats/Archived/Historic/2024-10-15.txt | 8 ++++++++ forge-gui/res/formats/Archived/Timeless/2024-10-15.txt | 8 ++++++++ forge-gui/res/formats/Sanctioned/Historic.txt | 2 +- 4 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 forge-gui/res/formats/Archived/Alchemy/2024-10-15.txt create mode 100644 forge-gui/res/formats/Archived/Historic/2024-10-15.txt create mode 100644 forge-gui/res/formats/Archived/Timeless/2024-10-15.txt diff --git a/forge-gui/res/formats/Archived/Alchemy/2024-10-15.txt b/forge-gui/res/formats/Archived/Alchemy/2024-10-15.txt new file mode 100644 index 00000000000..f8cfaeb614a --- /dev/null +++ b/forge-gui/res/formats/Archived/Alchemy/2024-10-15.txt @@ -0,0 +1,6 @@ +[format] +Name:Alchemy (YDSK) +Type:Archived +Subtype:Arena +Effective:2024-10-15 +Sets:ANA, ANB, WOE, YWOE, LCI, YLCI, MKM, YMKM, OTJ, BIG, YOTJ, BLB, YBLB, DSK, YDSK diff --git a/forge-gui/res/formats/Archived/Historic/2024-10-15.txt b/forge-gui/res/formats/Archived/Historic/2024-10-15.txt new file mode 100644 index 00000000000..b9430dc2525 --- /dev/null +++ b/forge-gui/res/formats/Archived/Historic/2024-10-15.txt @@ -0,0 +1,8 @@ +[format] +Name:Historic (YDSK) +Type:Archived +Subtype:Arena +Effective:2024-10-15 +Sets:KTK, XLN, RIX, DOM, M19, ANA, PANA, GRN, G18, RNA, WAR, M20, ELD, HA1, THB, HA2, IKO, HA3, M21, JMP, AJMP, AKR, ANB, ZNR, KLR, KHM, HA4, STX, STA, HA5, AFR, J21, MID, VOW, YMID, NEO, YNEO, SNC, YSNC, HBG, HA6, EA1, DMU, YDMU, BRO, BRR, YBRO, EA2, ONE, YONE, SIR, SIS, MOM, MUL, MAT, LTR, HA7, EA3, WOE, WOT, YWOE, LCI, YLCI, MKM, YMKM, OTJ, OTP, BIG, YOTJ, MH3, BLB, YBLB, DSK, YDSK +Banned:Agent of Treachery; Arid Mesa; Blood Moon; Bloodstained Mire; Brainstorm; Channel; Commandeer; Counterspell; Dark Ritual; Demonic Tutor; Endurance; Field of the Dead; Flare of Cultivation; Flare of Denial; Flare of Duplication; Flare of Fortitude; Flare of Malice; Flooded Strand; Force of Vigor; Fury; Grief; Harbinger of the Seas; Intruder Alarm; Land Tax; Lightning Bolt; Mana Drain; Marsh Flats; Memory Lapse; Mishra's Bauble; Misty Rainforest; Natural Order; Necropotence; Nexus of Fate; Oko, Thief of Crowns; Once Upon a Time; Polluted Delta; Ragavan, Nimble Pilferer; Reanimate; Scalding Tarn; Show and Tell; Sneak Attack; Solitude; Spreading Seas; Subtlety; Swords to Plowshares; Thassa's Oracle; Tibalt's Trickery; Time Warp; Uro, Titan of Nature's Wrath; Veil of Summer; Verdant Catacombs; Wilderness Reclamation; Windswept Heath; Winter Moon; Wooded Foothills +Additional:Admiral Brass, Unsinkable; Burden of Guilt; Clavileño, First of the Blessed; Crashing Footfalls; Desert; Desertion; Dismember; Duskmantle, House of Shadow; Enlisted Wurm; Evolutionary Leap; Fabricate; Gamble; Ghostly Prison; Gonti, Canny Acquisitor; Goro-Goro and Satoru; Ixidor, Reality Sculptor; Katilda and Lier; Kuldotha Rebirth; Leonin Relic-Warder; Magmaw; Mass Hysteria; Metalspinner's Puzzleknot; Mistveil Plains; Molten Psyche; Monologue Tax; Mystery Key; Mystic Snake; Notion Thief; Nyx Weaver; Olivia, Opulent Outlaw; Pantlaza, Sun-Favored; Persist; Port Razer; Possibility Storm; Prismatic Ending; Prismatic Vista; Putrid Warrior; Shard of Broken Glass; Slimefoot and Squee; Smuggler's Copter; Spell Snare; Stella Lee, Wild Card; Stoneforge Mystic; Timeless Dragon; Treacherous Terrain; Victimize; Xolatoyac, the Smiling Flood; Yuma, Proud Protector diff --git a/forge-gui/res/formats/Archived/Timeless/2024-10-15.txt b/forge-gui/res/formats/Archived/Timeless/2024-10-15.txt new file mode 100644 index 00000000000..6fe3f3c4433 --- /dev/null +++ b/forge-gui/res/formats/Archived/Timeless/2024-10-15.txt @@ -0,0 +1,8 @@ +[format] +Name:Timeless (YDSK) +Type:Archived +Subtype:Vintage +Effective:2024-10-15 +Sets:KTK, XLN, RIX, DOM, M19, ANA, PANA, GRN, G18, RNA, WAR, M20, ELD, HA1, THB, HA2, IKO, HA3, M21, JMP, AJMP, AKR, ANB, ZNR, KLR, KHM, HA4, STX, STA, HA5, AFR, J21, MID, VOW, YMID, NEO, YNEO, SNC, YSNC, HBG, HA6, EA1, DMU, YDMU, BRO, BRR, YBRO, EA2, ONE, YONE, SIR, SIS, MOM, MUL, MAT, LTR, HA7, EA3, WOE, WOT, YWOE, LCI, YLCI, MKM, YMKM, OTJ, OTP, BIG, YOTJ, MH3, BLB, YBLB, DSK, YDSK +Restricted:Channel; Demonic Tutor; Tibalt's Trickery +Additional:Admiral Brass, Unsinkable; Burden of Guilt; Clavileño, First of the Blessed; Crashing Footfalls; Desert; Desertion; Dismember; Duskmantle, House of Shadow; Endurance; Enlisted Wurm; Evolutionary Leap; Fabricate; Fury; Gamble; Ghostly Prison; Gonti, Canny Acquisitor; Goro-Goro and Satoru; Grief; Ixidor, Reality Sculptor; Katilda and Lier; Kuldotha Rebirth; Leonin Relic-Warder; Magmaw; Mass Hysteria; Metalspinner's Puzzleknot; Mistveil Plains; Molten Psyche; Monologue Tax; Mystery Key; Mystic Snake; Notion Thief; Nyx Weaver; Olivia, Opulent Outlaw; Pantlaza, Sun-Favored; Persist; Port Razer; Possibility Storm; Prismatic Ending; Prismatic Vista; Putrid Warrior; Shard of Broken Glass; Show and Tell; Slimefoot and Squee; Smuggler's Copter; Solitude; Spell Snare; Stella Lee, Wild Card; Stoneforge Mystic; Subtlety; Timeless Dragon; Treacherous Terrain; Victimize; Xolatoyac, the Smiling Flood; Yuma, Proud Protector diff --git a/forge-gui/res/formats/Sanctioned/Historic.txt b/forge-gui/res/formats/Sanctioned/Historic.txt index 86df4963dca..4c06aea941e 100644 --- a/forge-gui/res/formats/Sanctioned/Historic.txt +++ b/forge-gui/res/formats/Sanctioned/Historic.txt @@ -4,6 +4,6 @@ Type:Digital Subtype:Arena Effective:2019-11-21 Order:142 -Sets:KTK, XLN, RIX, DOM, M19, ANA, PANA, GRN, G18, RNA, WAR, M20, ELD, HA1, THB, HA2, IKO, HA3, M21, JMP, AJMP, AKR, ANB, ZNR, KLR, KHM, HA4, STX, STA, HA5, AFR, J21, MID, VOW, YMID, NEO, YNEO, SNC, YSNC, HBG, HA6, EA1, DMU, YDMU, BRO, BRR, YBRO, EA2, ONE, YONE, SIR, SIS, MOM, MUL, MAT, LTR, HA7, EA3, WOE, WOT, YWOE, LCI, YLCI, MKM, YMKM, OTJ, OTP, BIG, YOTJ, MH3, BLB, YBLB, DSK +Sets:KTK, XLN, RIX, DOM, M19, ANA, PANA, GRN, G18, RNA, WAR, M20, ELD, HA1, THB, HA2, IKO, HA3, M21, JMP, AJMP, AKR, ANB, ZNR, KLR, KHM, HA4, STX, STA, HA5, AFR, J21, MID, VOW, YMID, NEO, YNEO, SNC, YSNC, HBG, HA6, EA1, DMU, YDMU, BRO, BRR, YBRO, EA2, ONE, YONE, SIR, SIS, MOM, MUL, MAT, LTR, HA7, EA3, WOE, WOT, YWOE, LCI, YLCI, MKM, YMKM, OTJ, OTP, BIG, YOTJ, MH3, BLB, YBLB, DSK, YDSK Banned:Agent of Treachery; Arid Mesa; Blood Moon; Bloodstained Mire; Brainstorm; Channel; Commandeer; Counterspell; Dark Ritual; Demonic Tutor; Endurance; Field of the Dead; Flare of Cultivation; Flare of Denial; Flare of Duplication; Flare of Fortitude; Flare of Malice; Flooded Strand; Force of Vigor; Fury; Grief; Harbinger of the Seas; Intruder Alarm; Land Tax; Lightning Bolt; Mana Drain; Marsh Flats; Memory Lapse; Mishra's Bauble; Misty Rainforest; Natural Order; Necropotence; Nexus of Fate; Oko, Thief of Crowns; Once Upon a Time; Polluted Delta; Ragavan, Nimble Pilferer; Reanimate; Scalding Tarn; Show and Tell; Sneak Attack; Solitude; Spreading Seas; Subtlety; Swords to Plowshares; Thassa's Oracle; Tibalt's Trickery; Time Warp; Uro, Titan of Nature's Wrath; Veil of Summer; Verdant Catacombs; Wilderness Reclamation; Windswept Heath; Winter Moon; Wooded Foothills Additional:Admiral Brass, Unsinkable; Burden of Guilt; Clavileño, First of the Blessed; Crashing Footfalls; Desert; Desertion; Dismember; Duskmantle, House of Shadow; Enlisted Wurm; Evolutionary Leap; Fabricate; Gamble; Ghostly Prison; Gonti, Canny Acquisitor; Goro-Goro and Satoru; Ixidor, Reality Sculptor; Katilda and Lier; Kuldotha Rebirth; Leonin Relic-Warder; Magmaw; Mass Hysteria; Metalspinner's Puzzleknot; Mistveil Plains; Molten Psyche; Monologue Tax; Mystery Key; Mystic Snake; Notion Thief; Nyx Weaver; Olivia, Opulent Outlaw; Pantlaza, Sun-Favored; Persist; Port Razer; Possibility Storm; Prismatic Ending; Prismatic Vista; Putrid Warrior; Shard of Broken Glass; Slimefoot and Squee; Smuggler's Copter; Spell Snare; Stella Lee, Wild Card; Stoneforge Mystic; Timeless Dragon; Treacherous Terrain; Victimize; Xolatoyac, the Smiling Flood; Yuma, Proud Protector From 68bb0ebd39fead2e1f0e2fd10d759cbdc888dd7c Mon Sep 17 00:00:00 2001 From: Paul Hammerton <18243520+paulsnoops@users.noreply.github.com> Date: Mon, 14 Oct 2024 16:49:13 +0100 Subject: [PATCH 44/91] Fix Demonic Covenant (#6326) --- forge-gui/res/cardsfolder/upcoming/demonic_covenant.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui/res/cardsfolder/upcoming/demonic_covenant.txt b/forge-gui/res/cardsfolder/upcoming/demonic_covenant.txt index 36e9729e563..42e434af31d 100644 --- a/forge-gui/res/cardsfolder/upcoming/demonic_covenant.txt +++ b/forge-gui/res/cardsfolder/upcoming/demonic_covenant.txt @@ -7,7 +7,7 @@ SVar:DBLoseLife:DB$ LoseLife | LifeAmount$ 1 T:Mode$ Phase | Phase$ End of Turn | TriggerZones$ Battlefield | Execute$ TrigCreateAndMill | TriggerDescription$ At the beginning of your end step, create a 5/5 black Demon creature token with flying, then mill two cards. If two cards that share all their card types were milled this way, sacrifice CARDNAME. SVar:TrigCreateAndMill:DB$ Token | TokenAmount$ 1 | TokenScript$ b_5_5_demon_flying | TokenOwner$ You | SubAbility$ DBMill SVar:DBMill:DB$ Mill | NumCards$ 2 | RememberMilled$ True | ShowMilledCards$ True | SubAbility$ DBSacrifice -SVar:DBSacrifice:DB$ Sacrifice | SacValid$ Self | ShowSacrificedCards$ True | ConditionCheckSVar$ MilledSharesAllTypes | ConditionSVarCompare$ GE2 | SubAbility$ Cleanup +SVar:DBSacrifice:DB$ Sacrifice | SacValid$ Self | ShowSacrificedCards$ True | ConditionCheckSVar$ MilledSharesAllTypes | ConditionSVarCompare$ GE2 | SubAbility$ DBCleanup SVar:MilledSharesAllTypes:Remembered$Valid Card.sharesAllCardTypesWithOther Remembered SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True DeckHas:Ability$Token|Mill|Sacrifice From 1a6d0a435473f24b43f25c822a9e74e436862ca0 Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Fri, 11 Oct 2024 11:17:01 -0500 Subject: [PATCH 45/91] Add My Will Is Irresistible --- .../cardsfolder/upcoming/my_will_is_irresistible.txt | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/my_will_is_irresistible.txt diff --git a/forge-gui/res/cardsfolder/upcoming/my_will_is_irresistible.txt b/forge-gui/res/cardsfolder/upcoming/my_will_is_irresistible.txt new file mode 100644 index 00000000000..e3f2f0a7d71 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/my_will_is_irresistible.txt @@ -0,0 +1,10 @@ +Name:My Will Is Irresistible +ManaCost:no cost +Types:Scheme +T:Mode$ SetInMotion | ValidCard$ Card.Self | TriggerZones$ Command | Execute$ DBChooseOpp | TriggerDescription$ When you set this scheme in motion, choose up to three nonland permanents you don't control. Target opponent chooses one of those permanents. You gain control of the rest. +SVar:DBChooseOpp:DB$ ChoosePlayer | Defined$ You | Choices$ Player.Opponent | RememberChosen$ True | SubAbility$ DBChoosePerms | ChoiceTitle$ Select target opponent. +SVar:DBChoosePerms:DB$ ChooseCard | Choices$ Permanent.nonLand+YouDontCtrl | RememberChosen$ True | MinAmount$ 0 | Amount$ 3 | AILogic$ SacOneEach | SubAbility$ DBOppChooseCard | ChoiceTitle$ Choose up to three nonland permanents you don't control. +SVar:DBOppChooseCard:DB$ ChooseCard | Defined$ Remembered | ChoiceZone$ Battlefield | DefinedCards$ Remembered | AILogic$ OwnCard | Mandatory$ True | ForgetChosen$ True | Reveal$ True | SubAbility$ DBGainControl | ChoiceTitle$ Choose a nonland permanent. +SVar:DBGainControl:DB$ GainControl | Defined$ Remembered | NewController$ You | SubAbility$ DBCleanup +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +Oracle:When you set this scheme in motion, choose up to three nonland permanents you don't control. Target opponent chooses one of those permanents. You gain control of the rest. \ No newline at end of file From 79337dbf1fef36f7c8e4a399a21bfe206c75c95d Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Mon, 14 Oct 2024 08:06:27 -0500 Subject: [PATCH 46/91] Update my_will_is_irresistible.txt --- .../res/cardsfolder/upcoming/my_will_is_irresistible.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/forge-gui/res/cardsfolder/upcoming/my_will_is_irresistible.txt b/forge-gui/res/cardsfolder/upcoming/my_will_is_irresistible.txt index e3f2f0a7d71..a2e32b365ad 100644 --- a/forge-gui/res/cardsfolder/upcoming/my_will_is_irresistible.txt +++ b/forge-gui/res/cardsfolder/upcoming/my_will_is_irresistible.txt @@ -2,9 +2,9 @@ Name:My Will Is Irresistible ManaCost:no cost Types:Scheme T:Mode$ SetInMotion | ValidCard$ Card.Self | TriggerZones$ Command | Execute$ DBChooseOpp | TriggerDescription$ When you set this scheme in motion, choose up to three nonland permanents you don't control. Target opponent chooses one of those permanents. You gain control of the rest. -SVar:DBChooseOpp:DB$ ChoosePlayer | Defined$ You | Choices$ Player.Opponent | RememberChosen$ True | SubAbility$ DBChoosePerms | ChoiceTitle$ Select target opponent. +SVar:DBChooseOpp:DB$ ChoosePlayer | Defined$ You | ValidTgts$ Opponent | SubAbility$ DBChoosePerms | ChoiceTitle$ Select target opponent. SVar:DBChoosePerms:DB$ ChooseCard | Choices$ Permanent.nonLand+YouDontCtrl | RememberChosen$ True | MinAmount$ 0 | Amount$ 3 | AILogic$ SacOneEach | SubAbility$ DBOppChooseCard | ChoiceTitle$ Choose up to three nonland permanents you don't control. -SVar:DBOppChooseCard:DB$ ChooseCard | Defined$ Remembered | ChoiceZone$ Battlefield | DefinedCards$ Remembered | AILogic$ OwnCard | Mandatory$ True | ForgetChosen$ True | Reveal$ True | SubAbility$ DBGainControl | ChoiceTitle$ Choose a nonland permanent. +SVar:DBOppChooseCard:DB$ ChooseCard | Defined$ Targeted | ChoiceZone$ Battlefield | DefinedCards$ Remembered | AILogic$ OwnCard | Mandatory$ True | ForgetChosen$ True | Reveal$ True | SubAbility$ DBGainControl | ChoiceTitle$ Choose a nonland permanent. SVar:DBGainControl:DB$ GainControl | Defined$ Remembered | NewController$ You | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -Oracle:When you set this scheme in motion, choose up to three nonland permanents you don't control. Target opponent chooses one of those permanents. You gain control of the rest. \ No newline at end of file +Oracle:When you set this scheme in motion, choose up to three nonland permanents you don't control. Target opponent chooses one of those permanents. You gain control of the rest. From b820d6b62210e94e8258952edd792662c3b83c9b Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Mon, 14 Oct 2024 10:37:39 -0500 Subject: [PATCH 47/91] Update my_will_is_irresistible.txt --- .../res/cardsfolder/upcoming/my_will_is_irresistible.txt | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/forge-gui/res/cardsfolder/upcoming/my_will_is_irresistible.txt b/forge-gui/res/cardsfolder/upcoming/my_will_is_irresistible.txt index a2e32b365ad..fd4b765c7a9 100644 --- a/forge-gui/res/cardsfolder/upcoming/my_will_is_irresistible.txt +++ b/forge-gui/res/cardsfolder/upcoming/my_will_is_irresistible.txt @@ -1,10 +1,9 @@ Name:My Will Is Irresistible ManaCost:no cost Types:Scheme -T:Mode$ SetInMotion | ValidCard$ Card.Self | TriggerZones$ Command | Execute$ DBChooseOpp | TriggerDescription$ When you set this scheme in motion, choose up to three nonland permanents you don't control. Target opponent chooses one of those permanents. You gain control of the rest. -SVar:DBChooseOpp:DB$ ChoosePlayer | Defined$ You | ValidTgts$ Opponent | SubAbility$ DBChoosePerms | ChoiceTitle$ Select target opponent. +T:Mode$ SetInMotion | ValidCard$ Card.Self | TriggerZones$ Command | Execute$ DBChoosePerms | TriggerDescription$ When you set this scheme in motion, choose up to three nonland permanents you don't control. Target opponent chooses one of those permanents. You gain control of the rest. SVar:DBChoosePerms:DB$ ChooseCard | Choices$ Permanent.nonLand+YouDontCtrl | RememberChosen$ True | MinAmount$ 0 | Amount$ 3 | AILogic$ SacOneEach | SubAbility$ DBOppChooseCard | ChoiceTitle$ Choose up to three nonland permanents you don't control. -SVar:DBOppChooseCard:DB$ ChooseCard | Defined$ Targeted | ChoiceZone$ Battlefield | DefinedCards$ Remembered | AILogic$ OwnCard | Mandatory$ True | ForgetChosen$ True | Reveal$ True | SubAbility$ DBGainControl | ChoiceTitle$ Choose a nonland permanent. +SVar:DBOppChooseCard:DB$ ChooseCard | ValidTgts$ Opponent | ChoiceZone$ Battlefield | DefinedCards$ Remembered | AILogic$ OwnCard | Mandatory$ True | ForgetChosen$ True | Reveal$ True | SubAbility$ DBGainControl | ChoiceTitle$ Choose a nonland permanent. SVar:DBGainControl:DB$ GainControl | Defined$ Remembered | NewController$ You | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True Oracle:When you set this scheme in motion, choose up to three nonland permanents you don't control. Target opponent chooses one of those permanents. You gain control of the rest. From 0fb2db556bd008c5bf1a1065f8488be1bedd70f3 Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Mon, 14 Oct 2024 12:32:34 -0500 Subject: [PATCH 48/91] Add Experimental Lab // Staff Room (#6324) --- .../upcoming/experimental_lab_staff_room.txt | 20 +++++++++++++++++++ .../solitary_study_endless_corridor.txt | 17 ++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/experimental_lab_staff_room.txt create mode 100644 forge-gui/res/cardsfolder/upcoming/solitary_study_endless_corridor.txt diff --git a/forge-gui/res/cardsfolder/upcoming/experimental_lab_staff_room.txt b/forge-gui/res/cardsfolder/upcoming/experimental_lab_staff_room.txt new file mode 100644 index 00000000000..afad64ead2b --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/experimental_lab_staff_room.txt @@ -0,0 +1,20 @@ +Name:Experimental Lab +ManaCost:3 G +Types:Enchantment Room +T:Mode$ UnlockDoor | ValidPlayer$ You | ValidCard$ Card.Self | ThisDoor$ True | Execute$ TrigManifest | TriggerDescription$ When you unlock this door, manifest dread, then put two +1/+1 counters and a trample counter on that creature. +SVar:TrigManifest:DB$ ManifestDread | Amount$ 1 | RememberManifested$ True | SubAbility$ DBPutCounters +SVar:DBPutCounters:DB$ PutCounterAll | ValidCards$ Card.IsRemembered | CounterType$ P1P1 | CounterNum$ 2 | CounterType2$ Trample | CounterNum2$ 1 | SubAbility$ DBCleanup +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +AlternateMode:Split +Oracle:(You may cast either half. That door unlocks on the battlefield. As a sorcery, you may pay the mana cost of a locked door to unlock it.)\nWhen you unlock this door, manifest dread, then put two +1/+1 counters and a trample counter on that creature. + +ALTERNATE + +Name:Staff Room +ManaCost:2 G +Types:Enchantment Room +T:Mode$ DamageDone | ValidSource$ Creature.YouCtrl | ValidTgts$ Player | CombatDamage$ True | Execute$ TrigChoose | TriggerDescription$ Whenever a creature you control deals combat damage to a player, turn that creature face up or put a +1/+1 counter on it. +SVar:TrigChoose:DB$ GenericChoice | Choices$ DBPutCounter,DBTurnFaceUp +SVar:DBTurnFaceUp:DB$ SetState | Defined$ TriggeredSourceLKICopy | Mode$ TurnFaceUp | IsPresent$ Card.canBeTurnedFaceUp+faceDown | PresentDefined$ TriggeredSourceLKICopy | SpellDescription$ Turn it face up +SVar:DBPutCounter:DB$ PutCounter | Defined$ TriggeredSourceLKICopy | CounterType$ P1P1 | CounterNum$ 1 | IsPresent$ Card.canReceiveCounters P1P1 | PresentDefined$ TriggeredSourceLKICopy | SpellDescription$ Put a +1/+1 counter on it +Oracle:(You may cast either half. That door unlocks on the battlefield. As a sorcery, you may pay the mana cost of a locked door to unlock it.)\nWhenever a creature you control deals combat damage to a player, turn that creature face up or put a +1/+1 counter on it. diff --git a/forge-gui/res/cardsfolder/upcoming/solitary_study_endless_corridor.txt b/forge-gui/res/cardsfolder/upcoming/solitary_study_endless_corridor.txt new file mode 100644 index 00000000000..e84fb963a92 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/solitary_study_endless_corridor.txt @@ -0,0 +1,17 @@ +Name:Solitary Study +ManaCost:1 W +Types:Enchantment Room +AlternateMode:Split +S:Mode$ Continuous | Affected$ Creature.YouCtrl | AddPower$ 1 | Description$ Creatures you control get +1/+0. +Oracle:Creatures you control get +1/+0. + +ALTERNATE + +Name:Endless Corridor +ManaCost:1 W +Types:Enchantment Room +T:Mode$ UnlockDoor | ValidPlayer$ You | ValidCard$ Card.Self | Execute$ TrigConjure | TriggerDescription$ When you unlock this door, conjure a duplicate of this card into your hand. When you do, target creature you control gains first strike until end of turn. +SVar:TrigConjure:DB$ MakeCard | Conjure$ True | DefinedName$ TriggeredCard | Zone$ Hand | SubAbility$ DBImmediateTrigger +SVar:DBImmediateTrigger:DB$ ImmediateTrigger | Execute$ TrigFirstStrike | TriggerDescription$ When you do, target creature you control gains first strike until end of turn. +SVar:TrigFirstStrike:DB$ Pump | ValidTgts$ Creature.YouCtrl | KW$ First Strike | TgtPrompt$ Select target creature you control | SpellDescription$ Target creature you control gains first strike until end of turn. +Oracle:When you unlock this door, conjure a duplicate of this card into your hand. When you do, target creature you control gains first strike until end of turn. From da712a5e49c60f85477add01e321bac78ab3e188 Mon Sep 17 00:00:00 2001 From: Chris H Date: Mon, 14 Oct 2024 14:04:30 -0400 Subject: [PATCH 49/91] Add Winter Cynical Opportunist (#6325) --- .../ability/effects/ChangeZoneEffect.java | 22 ++++++++++++++++--- .../w/winter_cynical_opportunist.txt | 14 ++++++++++++ 2 files changed, 33 insertions(+), 3 deletions(-) create mode 100644 forge-gui/res/cardsfolder/w/winter_cynical_opportunist.txt diff --git a/forge-game/src/main/java/forge/game/ability/effects/ChangeZoneEffect.java b/forge-game/src/main/java/forge/game/ability/effects/ChangeZoneEffect.java index 13a3c0697f7..2896cb0ada7 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/ChangeZoneEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/ChangeZoneEffect.java @@ -4,7 +4,6 @@ import com.google.common.base.Predicates; import com.google.common.collect.Iterables; import com.google.common.collect.Lists; import com.google.common.collect.Maps; - import forge.card.CardStateName; import forge.card.CardType; import forge.game.*; @@ -27,7 +26,9 @@ import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.tuple.Pair; -import java.util.*; +import java.util.Arrays; +import java.util.List; +import java.util.Map; public class ChangeZoneEffect extends SpellAbilityEffect { @@ -1085,8 +1086,10 @@ public class ChangeZoneEffect extends SpellAbilityEffect { String selectPrompt = sa.hasParam("SelectPrompt") ? sa.getParam("SelectPrompt") : MessageUtil.formatMessage(Localizer.getInstance().getMessage("lblSelectCardFromPlayerZone", "{player's}", Lang.joinHomogenous(origin, ZoneType::getTranslatedName).toLowerCase()), decider, player); final String totalcmc = sa.getParam("WithTotalCMC"); final String totalpower = sa.getParam("WithTotalPower"); + final String totalCardTypes = sa.getParam("WithTotalCardTypes"); int totcmc = AbilityUtils.calculateAmount(source, totalcmc, sa); int totpower = AbilityUtils.calculateAmount(source, totalpower, sa); + int totCardTypes = AbilityUtils.calculateAmount(source, totalCardTypes, sa); CardCollection chosenCards = new CardCollection(); if (changeType.startsWith("EACH")) { @@ -1160,6 +1163,7 @@ public class ChangeZoneEffect extends SpellAbilityEffect { } } + // If we're choosing multiple cards, only need to show the reveal dialog the first time through. boolean shouldReveal = (i == 0); Card c = null; @@ -1170,6 +1174,10 @@ public class ChangeZoneEffect extends SpellAbilityEffect { c = Aggregates.random(fetchList); } else if (defined && !chooseFromDef) { c = Iterables.getFirst(fetchList, null); + } else if (totalCardTypes != null) { + String title = selectPrompt; + title += "\nCard types left: " + Math.max(totCardTypes, 0); + c = decider.getController().chooseSingleCardForZoneChange(destination, origin, sa, fetchList, shouldReveal ? delayedReveal : null, title, !mandatory, decider); } else { String title = selectPrompt; if (changeNum > 1) { //indicate progress if multiple cards being chosen @@ -1202,6 +1210,13 @@ public class ChangeZoneEffect extends SpellAbilityEffect { if (totalpower != null) { totpower -= c.getCurrentPower(); } + if (totalCardTypes != null) { + totCardTypes -= Iterables.size(c.getType().getCoreTypes()); + } + } + + if (totalCardTypes != null && totCardTypes > 0) { + chosenCards.clear(); } } @@ -1537,7 +1552,8 @@ public class ChangeZoneEffect extends SpellAbilityEffect { && !sa.hasParam("AtRandom") && (!sa.hasParam("Defined") || sa.hasParam("ChooseFromDefined")) && !sa.hasParam("WithTotalCMC") - && !sa.hasParam("WithTotalPower"); + && !sa.hasParam("WithTotalPower") + && !sa.hasParam("WithTotalCardTypes"); } /** diff --git a/forge-gui/res/cardsfolder/w/winter_cynical_opportunist.txt b/forge-gui/res/cardsfolder/w/winter_cynical_opportunist.txt new file mode 100644 index 00000000000..99abeaf440f --- /dev/null +++ b/forge-gui/res/cardsfolder/w/winter_cynical_opportunist.txt @@ -0,0 +1,14 @@ +Name:Winter, Cynical Opportunist +ManaCost:2 B G +Types:Legendary Creature Human Warlock +PT:2/5 +K:Deathtouch +T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigMill | TriggerDescription$ Whenever NICKNAME attacks, mill three cards. +SVar:TrigMill:DB$ Mill | NumCards$ 3 +T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | Delirium$ True | TriggerZones$ Battlefield | Execute$ TrigExileDelirium | TriggerDescription$ Delirium — At the beginning of your end step, you may exile any number of cards from your graveyard with four or more card types among them. If you do, put a permanent card from among them onto the battlefield with a finality counter on it. +SVar:TrigExileDelirium:DB$ ChangeZone | Origin$ Graveyard | Destination$ Exile | ChangeType$ Card.YouOwn | ChangeNum$ X | RememberChanged$ True | Hidden$ True | WithTotalCardTypes$ 4 | SubAbility$ DBReturn +SVar:DBReturn:DB$ ChangeZone | Origin$ Exile | Destination$ Battlefield | WithCountersType$ FINALITY | Hidden$ True | ChangeType$ Permanent.YouOwn+IsRemembered | ChangeNum$ 1 | SubAbility$ DBCleanup | Mandatory$ True +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +SVar:X:Count$ValidGraveyard Card.YouOwn +AI:RemoveDeck:All +Oracle:Deathtouch\nWhenever Winter attacks, mill three cards.\nDelirium — At the beginning of your end step, you may exile any number of cards from your graveyard with four or more card types among them. If you do, put a permanent card from among them onto the battlefield with a finality counter on it. From 932bfb9e3301b139c83ec406e90454bf5fd761d9 Mon Sep 17 00:00:00 2001 From: Chris H Date: Mon, 14 Oct 2024 14:16:13 -0400 Subject: [PATCH 50/91] Migrate DSK upcoming --- .../cardsfolder/{upcoming => a}/a_premonition_of_your_demise.txt | 0 .../res/cardsfolder/{upcoming => a}/abandoned_campground.txt | 0 forge-gui/res/cardsfolder/{upcoming => a}/abhorrent_oculus.txt | 0 .../res/cardsfolder/{upcoming => a}/acrobatic_cheerleader.txt | 0 .../res/cardsfolder/{upcoming => a}/altanak_the_thrice_called.txt | 0 .../res/cardsfolder/{upcoming => a}/aminatou_veil_piercer.txt | 0 forge-gui/res/cardsfolder/{upcoming => a}/ancient_cellarspawn.txt | 0 forge-gui/res/cardsfolder/{upcoming => a}/anthropede.txt | 0 forge-gui/res/cardsfolder/{upcoming => a}/appendage_amalgam.txt | 0 .../res/cardsfolder/{upcoming => a}/arabella_abandoned_doll.txt | 0 forge-gui/res/cardsfolder/{upcoming => a}/attack_in_the_box.txt | 0 forge-gui/res/cardsfolder/{upcoming => b}/balemurk_leech.txt | 0 forge-gui/res/cardsfolder/{upcoming => b}/balustrade_wurm.txt | 0 forge-gui/res/cardsfolder/{upcoming => b}/barbflare_gremlin.txt | 0 forge-gui/res/cardsfolder/{upcoming => b}/baseball_bat.txt | 0 forge-gui/res/cardsfolder/{upcoming => b}/bashful_beastie.txt | 0 forge-gui/res/cardsfolder/{upcoming => b}/bear_trap.txt | 0 forge-gui/res/cardsfolder/{upcoming => b}/beastie_beatdown.txt | 0 forge-gui/res/cardsfolder/{upcoming => b}/bedhead_beastie.txt | 0 forge-gui/res/cardsfolder/{upcoming => b}/betrayers_bargain.txt | 0 forge-gui/res/cardsfolder/{upcoming => b}/blazemire_verge.txt | 0 forge-gui/res/cardsfolder/{upcoming => b}/bleeding_woods.txt | 0 forge-gui/res/cardsfolder/{upcoming => b}/boilerbilges_ripper.txt | 0 .../cardsfolder/{upcoming => b}/bottomless_pool_locker_room.txt | 0 forge-gui/res/cardsfolder/{upcoming => b}/break_down_the_door.txt | 0 forge-gui/res/cardsfolder/{upcoming => b}/broodspinner.txt | 0 forge-gui/res/cardsfolder/{upcoming => c}/cackling_slasher.txt | 0 forge-gui/res/cardsfolder/{upcoming => c}/cathartic_parting.txt | 0 forge-gui/res/cardsfolder/{upcoming => c}/cautious_survivor.txt | 0 .../{upcoming => c}/central_elevator_promising_stairs.txt | 0 forge-gui/res/cardsfolder/{upcoming => c}/chainsaw.txt | 0 .../res/cardsfolder/{upcoming => c}/chaos_is_my_plaything.txt | 0 .../cardsfolder/{upcoming => c}/charred_foyer_warped_space.txt | 0 forge-gui/res/cardsfolder/{upcoming => c}/clammy_prowler.txt | 0 .../res/cardsfolder/{upcoming => c}/clockwork_percussionist.txt | 0 forge-gui/res/cardsfolder/{upcoming => c}/come_back_wrong.txt | 0 forge-gui/res/cardsfolder/{upcoming => c}/commune_with_evil.txt | 0 forge-gui/res/cardsfolder/{upcoming => c}/conductive_machete.txt | 0 forge-gui/res/cardsfolder/{upcoming => c}/convert_to_slime.txt | 0 .../res/cardsfolder/{upcoming => c}/coordinated_clobbering.txt | 0 forge-gui/res/cardsfolder/{upcoming => c}/cracked_skull.txt | 0 .../res/cardsfolder/{upcoming => c}/cramped_vents_access_room.txt | 0 forge-gui/res/cardsfolder/{upcoming => c}/creeping_peeper.txt | 0 forge-gui/res/cardsfolder/{upcoming => c}/cryptid_inspector.txt | 0 forge-gui/res/cardsfolder/{upcoming => c}/cult_healer.txt | 0 forge-gui/res/cardsfolder/{upcoming => c}/curator_beastie.txt | 0 forge-gui/res/cardsfolder/{upcoming => c}/cursed_recording.txt | 0 forge-gui/res/cardsfolder/{upcoming => c}/cursed_windbreaker.txt | 0 forge-gui/res/cardsfolder/{upcoming => c}/cynical_loner.txt | 0 forge-gui/res/cardsfolder/{upcoming => d}/daggermaw_megalodon.txt | 0 .../{upcoming => d}/dark_wings_bring_your_downfall.txt | 0 forge-gui/res/cardsfolder/{upcoming => d}/dashing_bloodsucker.txt | 0 .../cardsfolder/{upcoming => d}/dazzling_theater_prop_room.txt | 0 forge-gui/res/cardsfolder/{upcoming => d}/defiant_survivor.txt | 0 .../res/cardsfolder/{upcoming => d}/defiled_crypt_cadaver_lab.txt | 0 forge-gui/res/cardsfolder/{upcoming => d}/deluge_of_doom.txt | 0 forge-gui/res/cardsfolder/{upcoming => d}/demolisher_spawn.txt | 0 forge-gui/res/cardsfolder/{upcoming => d}/demonic_counsel.txt | 0 forge-gui/res/cardsfolder/{upcoming => d}/demonic_covenant.txt | 0 .../cardsfolder/{upcoming => d}/derelict_attic_widows_walk.txt | 0 forge-gui/res/cardsfolder/{upcoming => d}/disorienting_choice.txt | 0 forge-gui/res/cardsfolder/{upcoming => d}/dissection_tools.txt | 0 forge-gui/res/cardsfolder/{upcoming => d}/disturbing_mirth.txt | 0 .../res/cardsfolder/{upcoming => d}/diversion_specialist.txt | 0 .../{upcoming => d}/dollmakers_shop_porcelain_gallery.txt | 0 forge-gui/res/cardsfolder/{upcoming => d}/dont_make_a_sound.txt | 0 .../res/cardsfolder/{upcoming => d}/doomsday_excruciator.txt | 0 forge-gui/res/cardsfolder/{upcoming => d}/drag_to_the_roots.txt | 0 .../res/cardsfolder/{upcoming => d}/duskmourns_domination.txt | 0 .../res/cardsfolder/{upcoming => e}/emerge_from_the_cocoon.txt | 0 forge-gui/res/cardsfolder/{upcoming => e}/enduring_courage.txt | 0 forge-gui/res/cardsfolder/{upcoming => e}/enduring_curiosity.txt | 0 forge-gui/res/cardsfolder/{upcoming => e}/enduring_innocence.txt | 0 forge-gui/res/cardsfolder/{upcoming => e}/enduring_tenacity.txt | 0 forge-gui/res/cardsfolder/{upcoming => e}/enduring_vitality.txt | 0 forge-gui/res/cardsfolder/{upcoming => e}/enter_the_enigma.txt | 0 forge-gui/res/cardsfolder/{upcoming => e}/entity_tracker.txt | 0 forge-gui/res/cardsfolder/{upcoming => e}/erratic_apparition.txt | 0 forge-gui/res/cardsfolder/{upcoming => e}/etched_cornfield.txt | 0 forge-gui/res/cardsfolder/{upcoming => e}/exorcise.txt | 0 .../cardsfolder/{upcoming => e}/experimental_lab_staff_room.txt | 0 .../res/cardsfolder/{upcoming => f}/fanatic_of_the_harrowing.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/fear_my_authority.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/fear_of_abduction.txt | 0 .../res/cardsfolder/{upcoming => f}/fear_of_being_hunted.txt | 0 .../res/cardsfolder/{upcoming => f}/fear_of_burning_alive.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/fear_of_exposure.txt | 0 .../res/cardsfolder/{upcoming => f}/fear_of_failed_tests.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/fear_of_falling.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/fear_of_immobility.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/fear_of_impostors.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/fear_of_infinity.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/fear_of_isolation.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/fear_of_lost_teeth.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/fear_of_missing_out.txt | 0 .../res/cardsfolder/{upcoming => f}/fear_of_sleep_paralysis.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/fear_of_surveilance.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/fear_of_the_dark.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/felidar_savior.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/final_vengeance.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/flesh_burrower.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/floodfarm_verge.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/floodpits_drowner.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/formless_genesis.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/found_footage.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/frantic_strength.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/friendly_ghost.txt | 0 forge-gui/res/cardsfolder/{upcoming => f}/friendly_teddy.txt | 0 .../cardsfolder/{upcoming => f}/funeral_room_awakening_hall.txt | 0 forge-gui/res/cardsfolder/{upcoming => g}/get_out.txt | 0 forge-gui/res/cardsfolder/{upcoming => g}/ghost_vacuum.txt | 0 forge-gui/res/cardsfolder/{upcoming => g}/ghostly_dancers.txt | 0 forge-gui/res/cardsfolder/{upcoming => g}/ghostly_keybearer.txt | 0 .../res/cardsfolder/{upcoming => g}/giggling_skitterspike.txt | 0 forge-gui/res/cardsfolder/{upcoming => g}/give_in_to_violence.txt | 0 .../res/cardsfolder/{upcoming => g}/glassworks_shattered_yard.txt | 0 forge-gui/res/cardsfolder/{upcoming => g}/gleeful_arsonist.txt | 0 forge-gui/res/cardsfolder/{upcoming => g}/glimmer_seeker.txt | 0 forge-gui/res/cardsfolder/{upcoming => g}/glimmerburst.txt | 0 forge-gui/res/cardsfolder/{upcoming => g}/glimmerlight.txt | 0 forge-gui/res/cardsfolder/{upcoming => g}/glitch_interpreter.txt | 0 forge-gui/res/cardsfolder/{upcoming => g}/gloomlake_verge.txt | 0 forge-gui/res/cardsfolder/{upcoming => g}/grab_the_prize.txt | 0 .../{upcoming => g}/grand_entryway_elegant_rotunda.txt | 0 forge-gui/res/cardsfolder/{upcoming => g}/grasping_longneck.txt | 0 .../res/cardsfolder/{upcoming => g}/greenhouse_rickety_gazebo.txt | 0 forge-gui/res/cardsfolder/{upcoming => g}/gremlin_tamer.txt | 0 forge-gui/res/cardsfolder/{upcoming => g}/grievous_wound.txt | 0 forge-gui/res/cardsfolder/{upcoming => g}/growing_dread.txt | 0 forge-gui/res/cardsfolder/{upcoming => h}/hand_that_feeds.txt | 0 forge-gui/res/cardsfolder/{upcoming => h}/hardened_escort.txt | 0 forge-gui/res/cardsfolder/{upcoming => h}/haunted_screen.txt | 0 forge-gui/res/cardsfolder/{upcoming => h}/hauntwoods_shrieker.txt | 0 forge-gui/res/cardsfolder/{upcoming => h}/hedge_shredder.txt | 0 forge-gui/res/cardsfolder/{upcoming => h}/helpful_hunter.txt | 0 forge-gui/res/cardsfolder/{upcoming => h}/horrid_vigor.txt | 0 forge-gui/res/cardsfolder/{upcoming => h}/house_cartographer.txt | 0 forge-gui/res/cardsfolder/{upcoming => h}/hushwood_verge.txt | 0 forge-gui/res/cardsfolder/{upcoming => i}/i_am_duskmourn.txt | 0 forge-gui/res/cardsfolder/{upcoming => i}/i_am_never_alone.txt | 0 forge-gui/res/cardsfolder/{upcoming => i}/i_am_untouchable.txt | 0 .../res/cardsfolder/{upcoming => i}/i_call_for_slaughter.txt | 0 .../res/cardsfolder/{upcoming => i}/i_will_savor_your_agony.txt | 0 forge-gui/res/cardsfolder/{upcoming => i}/impossible_inferno.txt | 0 forge-gui/res/cardsfolder/{upcoming => i}/infernal_phantom.txt | 0 forge-gui/res/cardsfolder/{upcoming => i}/innocuous_rat.txt | 0 forge-gui/res/cardsfolder/{upcoming => i}/inquisitive_glimmer.txt | 0 forge-gui/res/cardsfolder/{upcoming => i}/insidious_fungus.txt | 0 forge-gui/res/cardsfolder/{upcoming => i}/into_the_pit.txt | 0 forge-gui/res/cardsfolder/{upcoming => i}/intruding_soulrager.txt | 0 forge-gui/res/cardsfolder/{upcoming => i}/irreverent_gremlin.txt | 0 forge-gui/res/cardsfolder/{upcoming => j}/jump_scare.txt | 0 .../res/cardsfolder/{upcoming => k}/kaito_bane_of_nightmares.txt | 0 forge-gui/res/cardsfolder/{upcoming => k}/keys_to_the_house.txt | 0 .../res/cardsfolder/{upcoming => k}/kianne_corrupted_memory.txt | 0 forge-gui/res/cardsfolder/{upcoming => k}/killers_mask.txt | 0 .../res/cardsfolder/{upcoming => k}/kneel_before_my_legions.txt | 0 forge-gui/res/cardsfolder/{upcoming => k}/kona_rescue_beastie.txt | 0 forge-gui/res/cardsfolder/{upcoming => l}/lakeside_shack.txt | 0 forge-gui/res/cardsfolder/{upcoming => l}/lets_play_a_game.txt | 0 forge-gui/res/cardsfolder/{upcoming => l}/leyline_of_hope.txt | 0 forge-gui/res/cardsfolder/{upcoming => l}/leyline_of_mutation.txt | 0 .../res/cardsfolder/{upcoming => l}/leyline_of_resonance.txt | 0 .../res/cardsfolder/{upcoming => l}/leyline_of_transformation.txt | 0 forge-gui/res/cardsfolder/{upcoming => l}/lionheart_glimmer.txt | 0 forge-gui/res/cardsfolder/{upcoming => l}/live_or_die.txt | 0 forge-gui/res/cardsfolder/{upcoming => l}/living_phone.txt | 0 .../res/cardsfolder/{upcoming => m}/malevolent_chandelier.txt | 0 forge-gui/res/cardsfolder/{upcoming => m}/manifest_dread.txt | 0 forge-gui/res/cardsfolder/{upcoming => m}/marina_vendrell.txt | 0 .../res/cardsfolder/{upcoming => m}/marina_vendrells_grimoire.txt | 0 .../res/cardsfolder/{upcoming => m}/marvin_murderous_mimic.txt | 0 .../res/cardsfolder/{upcoming => m}/meat_locker_drowned_diner.txt | 0 .../res/cardsfolder/{upcoming => m}/meathook_massacre_ii.txt | 0 .../res/cardsfolder/{upcoming => m}/metamorphosis_fanatic.txt | 0 forge-gui/res/cardsfolder/{upcoming => m}/miasma_demon.txt | 0 forge-gui/res/cardsfolder/{upcoming => m}/midnight_mayhem.txt | 0 .../res/cardsfolder/{upcoming => m}/mine_is_the_only_truth.txt | 0 .../cardsfolder/{upcoming => m}/mirror_room_fractured_realm.txt | 0 .../res/cardsfolder/{upcoming => m}/moldering_gym_weight_room.txt | 0 forge-gui/res/cardsfolder/{upcoming => m}/monstrous_emergence.txt | 0 .../res/cardsfolder/{upcoming => m}/most_valuable_slayer.txt | 0 forge-gui/res/cardsfolder/{upcoming => m}/murky_sewer.txt | 0 .../cardsfolder/{upcoming => m}/my_champion_stands_supreme.txt | 0 forge-gui/res/cardsfolder/{upcoming => m}/my_followers_ascend.txt | 0 .../res/cardsfolder/{upcoming => m}/my_tendrils_run_deep.txt | 0 .../res/cardsfolder/{upcoming => m}/my_wealth_will_bury_you.txt | 0 .../res/cardsfolder/{upcoming => m}/my_will_is_irresistible.txt | 0 forge-gui/res/cardsfolder/{upcoming => m}/my_wings_enfold_all.txt | 0 .../cardsfolder/{upcoming => n}/nashi_searcher_in_the_dark.txt | 0 forge-gui/res/cardsfolder/{upcoming => n}/neglected_manor.txt | 0 forge-gui/res/cardsfolder/{upcoming => n}/niko_light_of_hope.txt | 0 forge-gui/res/cardsfolder/{upcoming => n}/nine_lives_familiar.txt | 0 .../cardsfolder/{upcoming => n}/no_secret_is_hidden_from_me.txt | 0 .../res/cardsfolder/{upcoming => n}/norin_swift_survivalist.txt | 0 forge-gui/res/cardsfolder/{upcoming => n}/nowhere_to_run.txt | 0 forge-gui/res/cardsfolder/{upcoming => o}/oblivious_bookworm.txt | 0 forge-gui/res/cardsfolder/{upcoming => o}/omnivorous_flytrap.txt | 0 .../res/cardsfolder/{upcoming => o}/only_i_know_what_awaits.txt | 0 .../res/cardsfolder/{upcoming => o}/optimistic_scavenger.txt | 0 .../res/cardsfolder/{upcoming => o}/orphans_of_the_wheat.txt | 0 .../res/cardsfolder/{upcoming => o}/osseous_sticktwister.txt | 0 forge-gui/res/cardsfolder/{upcoming => o}/overgrown_zealot.txt | 0 .../res/cardsfolder/{upcoming => o}/overlord_of_the_balemurk.txt | 0 .../cardsfolder/{upcoming => o}/overlord_of_the_boilerbilges.txt | 0 .../res/cardsfolder/{upcoming => o}/overlord_of_the_floodpits.txt | 0 .../cardsfolder/{upcoming => o}/overlord_of_the_hauntwoods.txt | 0 .../res/cardsfolder/{upcoming => o}/overlord_of_the_mistmoors.txt | 0 .../{upcoming => p}/painters_studio_defaced_gallery.txt | 0 forge-gui/res/cardsfolder/{upcoming => p}/paranormal_analyst.txt | 0 forge-gui/res/cardsfolder/{upcoming => p}/patched_plaything.txt | 0 forge-gui/res/cardsfolder/{upcoming => p}/patchwork_beastie.txt | 0 forge-gui/res/cardsfolder/{upcoming => p}/peculiar_lighthouse.txt | 0 forge-gui/res/cardsfolder/{upcoming => p}/peer_past_the_veil.txt | 0 .../res/cardsfolder/{upcoming => p}/persistent_constrictor.txt | 0 .../res/cardsfolder/{upcoming => p}/phenomenon_investigators.txt | 0 forge-gui/res/cardsfolder/{upcoming => p}/piggy_bank.txt | 0 forge-gui/res/cardsfolder/{upcoming => p}/piranha_fly.txt | 0 .../{upcoming => p}/polluted_cistern_dim_oubliette.txt | 0 forge-gui/res/cardsfolder/{upcoming => p}/popular_egotist.txt | 0 forge-gui/res/cardsfolder/{upcoming => p}/possessed_goat.txt | 0 forge-gui/res/cardsfolder/{upcoming => p}/prideful_parent.txt | 0 forge-gui/res/cardsfolder/{upcoming => r}/ragged_playmate.txt | 0 forge-gui/res/cardsfolder/{upcoming => r}/rampaging_soulrager.txt | 0 forge-gui/res/cardsfolder/{upcoming => r}/raucous_carnival.txt | 0 .../res/cardsfolder/{upcoming => r}/razorkin_hordecaller.txt | 0 forge-gui/res/cardsfolder/{upcoming => r}/razorkin_needlehead.txt | 0 forge-gui/res/cardsfolder/{upcoming => r}/razortrap_gorge.txt | 0 .../cardsfolder/{upcoming => r}/reality_is_mine_to_control.txt | 0 forge-gui/res/cardsfolder/{upcoming => r}/redress_fate.txt | 0 .../res/cardsfolder/{upcoming => r}/reluctant_role_model.txt | 0 .../res/cardsfolder/{upcoming => r}/rendmaw_creaking_nest.txt | 0 .../{upcoming => r}/restricted_office_lecture_hall.txt | 0 forge-gui/res/cardsfolder/{upcoming => r}/resurrected_cultist.txt | 0 forge-gui/res/cardsfolder/{upcoming => r}/rip_spawn_hunter.txt | 0 forge-gui/res/cardsfolder/{upcoming => r}/ripchain_razorkin.txt | 0 forge-gui/res/cardsfolder/{upcoming => r}/rite_of_the_moth.txt | 0 .../{upcoming => r}/roaring_furnace_steaming_sauna.txt | 0 forge-gui/res/cardsfolder/{upcoming => r}/rootwise_survivor.txt | 0 .../res/cardsfolder/{upcoming => r}/rot_like_the_scum_you_are.txt | 0 forge-gui/res/cardsfolder/{upcoming => r}/running_is_useless.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/sadistic_shell_game.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/savior_of_the_small.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/saw.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/sawblade_skinripper.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/say_its_name.txt | 0 .../res/cardsfolder/{upcoming => s}/scrabbling_skullcrab.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/screaming_nemesis.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/seance_board.txt | 0 .../cardsfolder/{upcoming => s}/secret_arcade_dusty_parlor.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/seized_from_slumber.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/shardmages_rescue.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/sheltered_by_ghosts.txt | 0 .../shepherding spirits.txt => s/shepherding_spirits.txt} | 0 forge-gui/res/cardsfolder/{upcoming => s}/shrewd_storyteller.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/shriekwood_devourer.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/shroudstomper.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/silent_hallcreeper.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/skullsnap_nuisance.txt | 0 .../res/cardsfolder/{upcoming => s}/slavering_branchsnapper.txt | 0 .../res/cardsfolder/{upcoming => s}/smoky_lounge_misty_salon.txt | 0 .../res/cardsfolder/{upcoming => s}/soaring_lightbringer.txt | 0 .../{upcoming => s}/solitary_study_endless_corridor.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/spectral_snatcher.txt | 0 .../cardsfolder/{upcoming => s}/spiked_corridor_torture_pit.txt | 0 .../res/cardsfolder/{upcoming => s}/spineseeker_centipede.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/split_up.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/splitskin_doll.txt | 0 .../res/cardsfolder/{upcoming => s}/sporogenic_infection.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/stalked_researcher.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/star_athlete.txt | 0 .../res/cardsfolder/{upcoming => s}/stay_hidden_stay_silent.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/strangled_cemetery.txt | 0 .../cardsfolder/{upcoming => s}/surgical_suite_hospital_room.txt | 0 forge-gui/res/cardsfolder/{upcoming => s}/suspended_sentence.txt | 0 .../res/cardsfolder/{upcoming => t}/the_jolly_balloon_man.txt | 0 forge-gui/res/cardsfolder/{upcoming => t}/the_lord_of_pain.txt | 0 forge-gui/res/cardsfolder/{upcoming => t}/the_master_of_keys.txt | 0 forge-gui/res/cardsfolder/{upcoming => t}/the_mindskinner.txt | 0 .../res/cardsfolder/{upcoming => t}/the_rollercrusher_ride.txt | 0 forge-gui/res/cardsfolder/{upcoming => t}/the_swarmweaver.txt | 0 forge-gui/res/cardsfolder/{upcoming => t}/the_tale_of_tamiyo.txt | 0 .../res/cardsfolder/{upcoming => t}/the_wandering_rescuer.txt | 0 .../res/cardsfolder/{upcoming => t}/they_came_from_the_pipes.txt | 0 forge-gui/res/cardsfolder/{upcoming => t}/thornspire_verge.txt | 0 .../cardsfolder/{upcoming => t}/threats_around_every_corner.txt | 0 .../cardsfolder/{upcoming => t}/ticket_booth_tunnel_of_hate.txt | 0 .../res/cardsfolder/{upcoming => t}/time_bends_to_my_will.txt | 0 .../res/cardsfolder/{upcoming => t}/toby_beastie_befriender.txt | 0 .../res/cardsfolder/{upcoming => t}/trapped_in_the_screen.txt | 0 forge-gui/res/cardsfolder/{upcoming => t}/trial_of_agony.txt | 0 forge-gui/res/cardsfolder/{upcoming => t}/tunnel_surveyor.txt | 0 forge-gui/res/cardsfolder/{upcoming => t}/turn_inside_out.txt | 0 forge-gui/res/cardsfolder/{upcoming => t}/twist_reality.txt | 0 forge-gui/res/cardsfolder/{upcoming => t}/twitching_doll.txt | 0 forge-gui/res/cardsfolder/{upcoming => t}/tyvar_the_pummeler.txt | 0 forge-gui/res/cardsfolder/{upcoming => u}/unable_to_scream.txt | 0 forge-gui/res/cardsfolder/{upcoming => u}/undead_sprinter.txt | 0 forge-gui/res/cardsfolder/{upcoming => u}/under_the_skin.txt | 0 .../{upcoming => u}/underwater_tunnel_slimy_aquarium.txt | 0 .../cardsfolder/{upcoming => u}/unholy_annex_ritual_chamber.txt | 0 .../res/cardsfolder/{upcoming => u}/unidentified_hovership.txt | 0 forge-gui/res/cardsfolder/{upcoming => u}/unnerving_grasp.txt | 0 forge-gui/res/cardsfolder/{upcoming => u}/unsettling_twins.txt | 0 forge-gui/res/cardsfolder/{upcoming => u}/unstoppable_slasher.txt | 0 .../res/cardsfolder/{upcoming => u}/untimely_malfunction.txt | 0 forge-gui/res/cardsfolder/{upcoming => u}/unwanted_remake.txt | 0 forge-gui/res/cardsfolder/{upcoming => u}/unwilling_vessel.txt | 0 forge-gui/res/cardsfolder/{upcoming => u}/ursine_monstrosity.txt | 0 .../cardsfolder/{upcoming => v}/valgavoth_harrower_of_souls.txt | 0 .../res/cardsfolder/{upcoming => v}/valgavoth_terror_eater.txt | 0 forge-gui/res/cardsfolder/{upcoming => v}/valgavoths_faithful.txt | 0 forge-gui/res/cardsfolder/{upcoming => v}/valgavoths_lair.txt | 0 .../res/cardsfolder/{upcoming => v}/valgavoths_onslaught.txt | 0 forge-gui/res/cardsfolder/{upcoming => v}/vanish_from_sight.txt | 0 forge-gui/res/cardsfolder/{upcoming => v}/vengeful_bloodwitch.txt | 0 forge-gui/res/cardsfolder/{upcoming => v}/vengeful_possession.txt | 0 forge-gui/res/cardsfolder/{upcoming => v}/veteran_survivor.txt | 0 forge-gui/res/cardsfolder/{upcoming => v}/vicious_clown.txt | 0 .../cardsfolder/{upcoming => v}/victor_valgavoths_seneschal.txt | 0 forge-gui/res/cardsfolder/{upcoming => v}/vile_mutilator.txt | 0 forge-gui/res/cardsfolder/{upcoming => v}/violent_urge.txt | 0 .../{upcoming => w}/walk_in_closet_forgotten_cellar.txt | 0 forge-gui/res/cardsfolder/{upcoming => w}/waltz_of_rage.txt | 0 forge-gui/res/cardsfolder/{upcoming => w}/wary_watchdog.txt | 0 forge-gui/res/cardsfolder/{upcoming => w}/wickerfolk_thresher.txt | 0 forge-gui/res/cardsfolder/{upcoming => w}/wildfire_wickerfolk.txt | 0 .../res/cardsfolder/{upcoming => w}/winter_misanthropic_guide.txt | 0 .../res/cardsfolder/{upcoming => w}/winters_intervention.txt | 0 forge-gui/res/cardsfolder/{upcoming => w}/withering_torment.txt | 0 .../res/cardsfolder/{upcoming => y}/you_are_unworthy_of_mercy.txt | 0 .../res/cardsfolder/{upcoming => y}/you_cannot_hide_from_me.txt | 0 .../res/cardsfolder/{upcoming => y}/you_exist_only_to_amuse.txt | 0 .../{upcoming => y}/you_live_only_because_i_will_it.txt | 0 .../cardsfolder/{upcoming => y}/you_will_know_true_suffering.txt | 0 .../cardsfolder/{upcoming => y}/your_mistake_is_my_triumph.txt | 0 .../cardsfolder/{upcoming => y}/your_nightmares_are_delicious.txt | 0 .../res/cardsfolder/{upcoming => y}/your_own_face_mocks_you.txt | 0 .../res/cardsfolder/{upcoming => y}/your_plans_mean_nothing.txt | 0 .../res/cardsfolder/{upcoming => z}/zimone_all_questioning.txt | 0 .../res/cardsfolder/{upcoming => z}/zimone_mystery_unraveler.txt | 0 forge-gui/res/cardsfolder/{upcoming => z}/zimones_hypothesis.txt | 0 342 files changed, 0 insertions(+), 0 deletions(-) rename forge-gui/res/cardsfolder/{upcoming => a}/a_premonition_of_your_demise.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => a}/abandoned_campground.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => a}/abhorrent_oculus.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => a}/acrobatic_cheerleader.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => a}/altanak_the_thrice_called.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => a}/aminatou_veil_piercer.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => a}/ancient_cellarspawn.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => a}/anthropede.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => a}/appendage_amalgam.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => a}/arabella_abandoned_doll.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => a}/attack_in_the_box.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => b}/balemurk_leech.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => b}/balustrade_wurm.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => b}/barbflare_gremlin.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => b}/baseball_bat.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => b}/bashful_beastie.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => b}/bear_trap.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => b}/beastie_beatdown.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => b}/bedhead_beastie.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => b}/betrayers_bargain.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => b}/blazemire_verge.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => b}/bleeding_woods.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => b}/boilerbilges_ripper.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => b}/bottomless_pool_locker_room.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => b}/break_down_the_door.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => b}/broodspinner.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/cackling_slasher.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/cathartic_parting.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/cautious_survivor.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/central_elevator_promising_stairs.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/chainsaw.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/chaos_is_my_plaything.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/charred_foyer_warped_space.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/clammy_prowler.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/clockwork_percussionist.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/come_back_wrong.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/commune_with_evil.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/conductive_machete.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/convert_to_slime.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/coordinated_clobbering.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/cracked_skull.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/cramped_vents_access_room.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/creeping_peeper.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/cryptid_inspector.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/cult_healer.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/curator_beastie.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/cursed_recording.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/cursed_windbreaker.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => c}/cynical_loner.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/daggermaw_megalodon.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/dark_wings_bring_your_downfall.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/dashing_bloodsucker.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/dazzling_theater_prop_room.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/defiant_survivor.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/defiled_crypt_cadaver_lab.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/deluge_of_doom.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/demolisher_spawn.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/demonic_counsel.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/demonic_covenant.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/derelict_attic_widows_walk.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/disorienting_choice.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/dissection_tools.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/disturbing_mirth.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/diversion_specialist.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/dollmakers_shop_porcelain_gallery.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/dont_make_a_sound.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/doomsday_excruciator.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/drag_to_the_roots.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => d}/duskmourns_domination.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => e}/emerge_from_the_cocoon.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => e}/enduring_courage.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => e}/enduring_curiosity.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => e}/enduring_innocence.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => e}/enduring_tenacity.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => e}/enduring_vitality.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => e}/enter_the_enigma.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => e}/entity_tracker.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => e}/erratic_apparition.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => e}/etched_cornfield.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => e}/exorcise.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => e}/experimental_lab_staff_room.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/fanatic_of_the_harrowing.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/fear_my_authority.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/fear_of_abduction.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/fear_of_being_hunted.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/fear_of_burning_alive.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/fear_of_exposure.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/fear_of_failed_tests.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/fear_of_falling.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/fear_of_immobility.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/fear_of_impostors.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/fear_of_infinity.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/fear_of_isolation.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/fear_of_lost_teeth.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/fear_of_missing_out.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/fear_of_sleep_paralysis.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/fear_of_surveilance.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/fear_of_the_dark.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/felidar_savior.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/final_vengeance.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/flesh_burrower.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/floodfarm_verge.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/floodpits_drowner.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/formless_genesis.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/found_footage.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/frantic_strength.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/friendly_ghost.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/friendly_teddy.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => f}/funeral_room_awakening_hall.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/get_out.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/ghost_vacuum.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/ghostly_dancers.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/ghostly_keybearer.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/giggling_skitterspike.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/give_in_to_violence.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/glassworks_shattered_yard.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/gleeful_arsonist.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/glimmer_seeker.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/glimmerburst.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/glimmerlight.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/glitch_interpreter.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/gloomlake_verge.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/grab_the_prize.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/grand_entryway_elegant_rotunda.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/grasping_longneck.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/greenhouse_rickety_gazebo.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/gremlin_tamer.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/grievous_wound.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => g}/growing_dread.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => h}/hand_that_feeds.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => h}/hardened_escort.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => h}/haunted_screen.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => h}/hauntwoods_shrieker.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => h}/hedge_shredder.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => h}/helpful_hunter.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => h}/horrid_vigor.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => h}/house_cartographer.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => h}/hushwood_verge.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => i}/i_am_duskmourn.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => i}/i_am_never_alone.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => i}/i_am_untouchable.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => i}/i_call_for_slaughter.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => i}/i_will_savor_your_agony.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => i}/impossible_inferno.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => i}/infernal_phantom.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => i}/innocuous_rat.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => i}/inquisitive_glimmer.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => i}/insidious_fungus.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => i}/into_the_pit.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => i}/intruding_soulrager.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => i}/irreverent_gremlin.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => j}/jump_scare.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => k}/kaito_bane_of_nightmares.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => k}/keys_to_the_house.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => k}/kianne_corrupted_memory.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => k}/killers_mask.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => k}/kneel_before_my_legions.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => k}/kona_rescue_beastie.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => l}/lakeside_shack.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => l}/lets_play_a_game.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => l}/leyline_of_hope.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => l}/leyline_of_mutation.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => l}/leyline_of_resonance.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => l}/leyline_of_transformation.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => l}/lionheart_glimmer.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => l}/live_or_die.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => l}/living_phone.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/malevolent_chandelier.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/manifest_dread.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/marina_vendrell.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/marina_vendrells_grimoire.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/marvin_murderous_mimic.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/meat_locker_drowned_diner.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/meathook_massacre_ii.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/metamorphosis_fanatic.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/miasma_demon.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/midnight_mayhem.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/mine_is_the_only_truth.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/mirror_room_fractured_realm.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/moldering_gym_weight_room.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/monstrous_emergence.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/most_valuable_slayer.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/murky_sewer.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/my_champion_stands_supreme.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/my_followers_ascend.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/my_tendrils_run_deep.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/my_wealth_will_bury_you.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/my_will_is_irresistible.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => m}/my_wings_enfold_all.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => n}/nashi_searcher_in_the_dark.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => n}/neglected_manor.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => n}/niko_light_of_hope.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => n}/nine_lives_familiar.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => n}/no_secret_is_hidden_from_me.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => n}/norin_swift_survivalist.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => n}/nowhere_to_run.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => o}/oblivious_bookworm.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => o}/omnivorous_flytrap.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => o}/only_i_know_what_awaits.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => o}/optimistic_scavenger.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => o}/orphans_of_the_wheat.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => o}/osseous_sticktwister.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => o}/overgrown_zealot.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => o}/overlord_of_the_balemurk.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => o}/overlord_of_the_boilerbilges.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => o}/overlord_of_the_floodpits.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => o}/overlord_of_the_hauntwoods.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => o}/overlord_of_the_mistmoors.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => p}/painters_studio_defaced_gallery.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => p}/paranormal_analyst.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => p}/patched_plaything.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => p}/patchwork_beastie.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => p}/peculiar_lighthouse.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => p}/peer_past_the_veil.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => p}/persistent_constrictor.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => p}/phenomenon_investigators.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => p}/piggy_bank.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => p}/piranha_fly.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => p}/polluted_cistern_dim_oubliette.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => p}/popular_egotist.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => p}/possessed_goat.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => p}/prideful_parent.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => r}/ragged_playmate.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => r}/rampaging_soulrager.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => r}/raucous_carnival.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => r}/razorkin_hordecaller.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => r}/razorkin_needlehead.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => r}/razortrap_gorge.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => r}/reality_is_mine_to_control.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => r}/redress_fate.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => r}/reluctant_role_model.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => r}/rendmaw_creaking_nest.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => r}/restricted_office_lecture_hall.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => r}/resurrected_cultist.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => r}/rip_spawn_hunter.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => r}/ripchain_razorkin.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => r}/rite_of_the_moth.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => r}/roaring_furnace_steaming_sauna.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => r}/rootwise_survivor.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => r}/rot_like_the_scum_you_are.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => r}/running_is_useless.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/sadistic_shell_game.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/savior_of_the_small.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/saw.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/sawblade_skinripper.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/say_its_name.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/scrabbling_skullcrab.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/screaming_nemesis.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/seance_board.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/secret_arcade_dusty_parlor.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/seized_from_slumber.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/shardmages_rescue.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/sheltered_by_ghosts.txt (100%) rename forge-gui/res/cardsfolder/{upcoming/shepherding spirits.txt => s/shepherding_spirits.txt} (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/shrewd_storyteller.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/shriekwood_devourer.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/shroudstomper.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/silent_hallcreeper.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/skullsnap_nuisance.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/slavering_branchsnapper.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/smoky_lounge_misty_salon.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/soaring_lightbringer.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/solitary_study_endless_corridor.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/spectral_snatcher.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/spiked_corridor_torture_pit.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/spineseeker_centipede.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/split_up.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/splitskin_doll.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/sporogenic_infection.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/stalked_researcher.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/star_athlete.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/stay_hidden_stay_silent.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/strangled_cemetery.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/surgical_suite_hospital_room.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => s}/suspended_sentence.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/the_jolly_balloon_man.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/the_lord_of_pain.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/the_master_of_keys.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/the_mindskinner.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/the_rollercrusher_ride.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/the_swarmweaver.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/the_tale_of_tamiyo.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/the_wandering_rescuer.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/they_came_from_the_pipes.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/thornspire_verge.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/threats_around_every_corner.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/ticket_booth_tunnel_of_hate.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/time_bends_to_my_will.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/toby_beastie_befriender.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/trapped_in_the_screen.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/trial_of_agony.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/tunnel_surveyor.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/turn_inside_out.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/twist_reality.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/twitching_doll.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => t}/tyvar_the_pummeler.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => u}/unable_to_scream.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => u}/undead_sprinter.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => u}/under_the_skin.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => u}/underwater_tunnel_slimy_aquarium.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => u}/unholy_annex_ritual_chamber.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => u}/unidentified_hovership.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => u}/unnerving_grasp.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => u}/unsettling_twins.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => u}/unstoppable_slasher.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => u}/untimely_malfunction.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => u}/unwanted_remake.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => u}/unwilling_vessel.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => u}/ursine_monstrosity.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => v}/valgavoth_harrower_of_souls.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => v}/valgavoth_terror_eater.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => v}/valgavoths_faithful.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => v}/valgavoths_lair.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => v}/valgavoths_onslaught.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => v}/vanish_from_sight.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => v}/vengeful_bloodwitch.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => v}/vengeful_possession.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => v}/veteran_survivor.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => v}/vicious_clown.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => v}/victor_valgavoths_seneschal.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => v}/vile_mutilator.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => v}/violent_urge.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => w}/walk_in_closet_forgotten_cellar.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => w}/waltz_of_rage.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => w}/wary_watchdog.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => w}/wickerfolk_thresher.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => w}/wildfire_wickerfolk.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => w}/winter_misanthropic_guide.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => w}/winters_intervention.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => w}/withering_torment.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => y}/you_are_unworthy_of_mercy.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => y}/you_cannot_hide_from_me.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => y}/you_exist_only_to_amuse.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => y}/you_live_only_because_i_will_it.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => y}/you_will_know_true_suffering.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => y}/your_mistake_is_my_triumph.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => y}/your_nightmares_are_delicious.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => y}/your_own_face_mocks_you.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => y}/your_plans_mean_nothing.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => z}/zimone_all_questioning.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => z}/zimone_mystery_unraveler.txt (100%) rename forge-gui/res/cardsfolder/{upcoming => z}/zimones_hypothesis.txt (100%) diff --git a/forge-gui/res/cardsfolder/upcoming/a_premonition_of_your_demise.txt b/forge-gui/res/cardsfolder/a/a_premonition_of_your_demise.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/a_premonition_of_your_demise.txt rename to forge-gui/res/cardsfolder/a/a_premonition_of_your_demise.txt diff --git a/forge-gui/res/cardsfolder/upcoming/abandoned_campground.txt b/forge-gui/res/cardsfolder/a/abandoned_campground.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/abandoned_campground.txt rename to forge-gui/res/cardsfolder/a/abandoned_campground.txt diff --git a/forge-gui/res/cardsfolder/upcoming/abhorrent_oculus.txt b/forge-gui/res/cardsfolder/a/abhorrent_oculus.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/abhorrent_oculus.txt rename to forge-gui/res/cardsfolder/a/abhorrent_oculus.txt diff --git a/forge-gui/res/cardsfolder/upcoming/acrobatic_cheerleader.txt b/forge-gui/res/cardsfolder/a/acrobatic_cheerleader.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/acrobatic_cheerleader.txt rename to forge-gui/res/cardsfolder/a/acrobatic_cheerleader.txt diff --git a/forge-gui/res/cardsfolder/upcoming/altanak_the_thrice_called.txt b/forge-gui/res/cardsfolder/a/altanak_the_thrice_called.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/altanak_the_thrice_called.txt rename to forge-gui/res/cardsfolder/a/altanak_the_thrice_called.txt diff --git a/forge-gui/res/cardsfolder/upcoming/aminatou_veil_piercer.txt b/forge-gui/res/cardsfolder/a/aminatou_veil_piercer.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/aminatou_veil_piercer.txt rename to forge-gui/res/cardsfolder/a/aminatou_veil_piercer.txt diff --git a/forge-gui/res/cardsfolder/upcoming/ancient_cellarspawn.txt b/forge-gui/res/cardsfolder/a/ancient_cellarspawn.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/ancient_cellarspawn.txt rename to forge-gui/res/cardsfolder/a/ancient_cellarspawn.txt diff --git a/forge-gui/res/cardsfolder/upcoming/anthropede.txt b/forge-gui/res/cardsfolder/a/anthropede.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/anthropede.txt rename to forge-gui/res/cardsfolder/a/anthropede.txt diff --git a/forge-gui/res/cardsfolder/upcoming/appendage_amalgam.txt b/forge-gui/res/cardsfolder/a/appendage_amalgam.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/appendage_amalgam.txt rename to forge-gui/res/cardsfolder/a/appendage_amalgam.txt diff --git a/forge-gui/res/cardsfolder/upcoming/arabella_abandoned_doll.txt b/forge-gui/res/cardsfolder/a/arabella_abandoned_doll.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/arabella_abandoned_doll.txt rename to forge-gui/res/cardsfolder/a/arabella_abandoned_doll.txt diff --git a/forge-gui/res/cardsfolder/upcoming/attack_in_the_box.txt b/forge-gui/res/cardsfolder/a/attack_in_the_box.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/attack_in_the_box.txt rename to forge-gui/res/cardsfolder/a/attack_in_the_box.txt diff --git a/forge-gui/res/cardsfolder/upcoming/balemurk_leech.txt b/forge-gui/res/cardsfolder/b/balemurk_leech.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/balemurk_leech.txt rename to forge-gui/res/cardsfolder/b/balemurk_leech.txt diff --git a/forge-gui/res/cardsfolder/upcoming/balustrade_wurm.txt b/forge-gui/res/cardsfolder/b/balustrade_wurm.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/balustrade_wurm.txt rename to forge-gui/res/cardsfolder/b/balustrade_wurm.txt diff --git a/forge-gui/res/cardsfolder/upcoming/barbflare_gremlin.txt b/forge-gui/res/cardsfolder/b/barbflare_gremlin.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/barbflare_gremlin.txt rename to forge-gui/res/cardsfolder/b/barbflare_gremlin.txt diff --git a/forge-gui/res/cardsfolder/upcoming/baseball_bat.txt b/forge-gui/res/cardsfolder/b/baseball_bat.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/baseball_bat.txt rename to forge-gui/res/cardsfolder/b/baseball_bat.txt diff --git a/forge-gui/res/cardsfolder/upcoming/bashful_beastie.txt b/forge-gui/res/cardsfolder/b/bashful_beastie.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/bashful_beastie.txt rename to forge-gui/res/cardsfolder/b/bashful_beastie.txt diff --git a/forge-gui/res/cardsfolder/upcoming/bear_trap.txt b/forge-gui/res/cardsfolder/b/bear_trap.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/bear_trap.txt rename to forge-gui/res/cardsfolder/b/bear_trap.txt diff --git a/forge-gui/res/cardsfolder/upcoming/beastie_beatdown.txt b/forge-gui/res/cardsfolder/b/beastie_beatdown.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/beastie_beatdown.txt rename to forge-gui/res/cardsfolder/b/beastie_beatdown.txt diff --git a/forge-gui/res/cardsfolder/upcoming/bedhead_beastie.txt b/forge-gui/res/cardsfolder/b/bedhead_beastie.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/bedhead_beastie.txt rename to forge-gui/res/cardsfolder/b/bedhead_beastie.txt diff --git a/forge-gui/res/cardsfolder/upcoming/betrayers_bargain.txt b/forge-gui/res/cardsfolder/b/betrayers_bargain.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/betrayers_bargain.txt rename to forge-gui/res/cardsfolder/b/betrayers_bargain.txt diff --git a/forge-gui/res/cardsfolder/upcoming/blazemire_verge.txt b/forge-gui/res/cardsfolder/b/blazemire_verge.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/blazemire_verge.txt rename to forge-gui/res/cardsfolder/b/blazemire_verge.txt diff --git a/forge-gui/res/cardsfolder/upcoming/bleeding_woods.txt b/forge-gui/res/cardsfolder/b/bleeding_woods.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/bleeding_woods.txt rename to forge-gui/res/cardsfolder/b/bleeding_woods.txt diff --git a/forge-gui/res/cardsfolder/upcoming/boilerbilges_ripper.txt b/forge-gui/res/cardsfolder/b/boilerbilges_ripper.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/boilerbilges_ripper.txt rename to forge-gui/res/cardsfolder/b/boilerbilges_ripper.txt diff --git a/forge-gui/res/cardsfolder/upcoming/bottomless_pool_locker_room.txt b/forge-gui/res/cardsfolder/b/bottomless_pool_locker_room.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/bottomless_pool_locker_room.txt rename to forge-gui/res/cardsfolder/b/bottomless_pool_locker_room.txt diff --git a/forge-gui/res/cardsfolder/upcoming/break_down_the_door.txt b/forge-gui/res/cardsfolder/b/break_down_the_door.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/break_down_the_door.txt rename to forge-gui/res/cardsfolder/b/break_down_the_door.txt diff --git a/forge-gui/res/cardsfolder/upcoming/broodspinner.txt b/forge-gui/res/cardsfolder/b/broodspinner.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/broodspinner.txt rename to forge-gui/res/cardsfolder/b/broodspinner.txt diff --git a/forge-gui/res/cardsfolder/upcoming/cackling_slasher.txt b/forge-gui/res/cardsfolder/c/cackling_slasher.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/cackling_slasher.txt rename to forge-gui/res/cardsfolder/c/cackling_slasher.txt diff --git a/forge-gui/res/cardsfolder/upcoming/cathartic_parting.txt b/forge-gui/res/cardsfolder/c/cathartic_parting.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/cathartic_parting.txt rename to forge-gui/res/cardsfolder/c/cathartic_parting.txt diff --git a/forge-gui/res/cardsfolder/upcoming/cautious_survivor.txt b/forge-gui/res/cardsfolder/c/cautious_survivor.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/cautious_survivor.txt rename to forge-gui/res/cardsfolder/c/cautious_survivor.txt diff --git a/forge-gui/res/cardsfolder/upcoming/central_elevator_promising_stairs.txt b/forge-gui/res/cardsfolder/c/central_elevator_promising_stairs.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/central_elevator_promising_stairs.txt rename to forge-gui/res/cardsfolder/c/central_elevator_promising_stairs.txt diff --git a/forge-gui/res/cardsfolder/upcoming/chainsaw.txt b/forge-gui/res/cardsfolder/c/chainsaw.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/chainsaw.txt rename to forge-gui/res/cardsfolder/c/chainsaw.txt diff --git a/forge-gui/res/cardsfolder/upcoming/chaos_is_my_plaything.txt b/forge-gui/res/cardsfolder/c/chaos_is_my_plaything.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/chaos_is_my_plaything.txt rename to forge-gui/res/cardsfolder/c/chaos_is_my_plaything.txt diff --git a/forge-gui/res/cardsfolder/upcoming/charred_foyer_warped_space.txt b/forge-gui/res/cardsfolder/c/charred_foyer_warped_space.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/charred_foyer_warped_space.txt rename to forge-gui/res/cardsfolder/c/charred_foyer_warped_space.txt diff --git a/forge-gui/res/cardsfolder/upcoming/clammy_prowler.txt b/forge-gui/res/cardsfolder/c/clammy_prowler.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/clammy_prowler.txt rename to forge-gui/res/cardsfolder/c/clammy_prowler.txt diff --git a/forge-gui/res/cardsfolder/upcoming/clockwork_percussionist.txt b/forge-gui/res/cardsfolder/c/clockwork_percussionist.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/clockwork_percussionist.txt rename to forge-gui/res/cardsfolder/c/clockwork_percussionist.txt diff --git a/forge-gui/res/cardsfolder/upcoming/come_back_wrong.txt b/forge-gui/res/cardsfolder/c/come_back_wrong.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/come_back_wrong.txt rename to forge-gui/res/cardsfolder/c/come_back_wrong.txt diff --git a/forge-gui/res/cardsfolder/upcoming/commune_with_evil.txt b/forge-gui/res/cardsfolder/c/commune_with_evil.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/commune_with_evil.txt rename to forge-gui/res/cardsfolder/c/commune_with_evil.txt diff --git a/forge-gui/res/cardsfolder/upcoming/conductive_machete.txt b/forge-gui/res/cardsfolder/c/conductive_machete.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/conductive_machete.txt rename to forge-gui/res/cardsfolder/c/conductive_machete.txt diff --git a/forge-gui/res/cardsfolder/upcoming/convert_to_slime.txt b/forge-gui/res/cardsfolder/c/convert_to_slime.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/convert_to_slime.txt rename to forge-gui/res/cardsfolder/c/convert_to_slime.txt diff --git a/forge-gui/res/cardsfolder/upcoming/coordinated_clobbering.txt b/forge-gui/res/cardsfolder/c/coordinated_clobbering.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/coordinated_clobbering.txt rename to forge-gui/res/cardsfolder/c/coordinated_clobbering.txt diff --git a/forge-gui/res/cardsfolder/upcoming/cracked_skull.txt b/forge-gui/res/cardsfolder/c/cracked_skull.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/cracked_skull.txt rename to forge-gui/res/cardsfolder/c/cracked_skull.txt diff --git a/forge-gui/res/cardsfolder/upcoming/cramped_vents_access_room.txt b/forge-gui/res/cardsfolder/c/cramped_vents_access_room.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/cramped_vents_access_room.txt rename to forge-gui/res/cardsfolder/c/cramped_vents_access_room.txt diff --git a/forge-gui/res/cardsfolder/upcoming/creeping_peeper.txt b/forge-gui/res/cardsfolder/c/creeping_peeper.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/creeping_peeper.txt rename to forge-gui/res/cardsfolder/c/creeping_peeper.txt diff --git a/forge-gui/res/cardsfolder/upcoming/cryptid_inspector.txt b/forge-gui/res/cardsfolder/c/cryptid_inspector.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/cryptid_inspector.txt rename to forge-gui/res/cardsfolder/c/cryptid_inspector.txt diff --git a/forge-gui/res/cardsfolder/upcoming/cult_healer.txt b/forge-gui/res/cardsfolder/c/cult_healer.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/cult_healer.txt rename to forge-gui/res/cardsfolder/c/cult_healer.txt diff --git a/forge-gui/res/cardsfolder/upcoming/curator_beastie.txt b/forge-gui/res/cardsfolder/c/curator_beastie.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/curator_beastie.txt rename to forge-gui/res/cardsfolder/c/curator_beastie.txt diff --git a/forge-gui/res/cardsfolder/upcoming/cursed_recording.txt b/forge-gui/res/cardsfolder/c/cursed_recording.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/cursed_recording.txt rename to forge-gui/res/cardsfolder/c/cursed_recording.txt diff --git a/forge-gui/res/cardsfolder/upcoming/cursed_windbreaker.txt b/forge-gui/res/cardsfolder/c/cursed_windbreaker.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/cursed_windbreaker.txt rename to forge-gui/res/cardsfolder/c/cursed_windbreaker.txt diff --git a/forge-gui/res/cardsfolder/upcoming/cynical_loner.txt b/forge-gui/res/cardsfolder/c/cynical_loner.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/cynical_loner.txt rename to forge-gui/res/cardsfolder/c/cynical_loner.txt diff --git a/forge-gui/res/cardsfolder/upcoming/daggermaw_megalodon.txt b/forge-gui/res/cardsfolder/d/daggermaw_megalodon.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/daggermaw_megalodon.txt rename to forge-gui/res/cardsfolder/d/daggermaw_megalodon.txt diff --git a/forge-gui/res/cardsfolder/upcoming/dark_wings_bring_your_downfall.txt b/forge-gui/res/cardsfolder/d/dark_wings_bring_your_downfall.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/dark_wings_bring_your_downfall.txt rename to forge-gui/res/cardsfolder/d/dark_wings_bring_your_downfall.txt diff --git a/forge-gui/res/cardsfolder/upcoming/dashing_bloodsucker.txt b/forge-gui/res/cardsfolder/d/dashing_bloodsucker.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/dashing_bloodsucker.txt rename to forge-gui/res/cardsfolder/d/dashing_bloodsucker.txt diff --git a/forge-gui/res/cardsfolder/upcoming/dazzling_theater_prop_room.txt b/forge-gui/res/cardsfolder/d/dazzling_theater_prop_room.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/dazzling_theater_prop_room.txt rename to forge-gui/res/cardsfolder/d/dazzling_theater_prop_room.txt diff --git a/forge-gui/res/cardsfolder/upcoming/defiant_survivor.txt b/forge-gui/res/cardsfolder/d/defiant_survivor.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/defiant_survivor.txt rename to forge-gui/res/cardsfolder/d/defiant_survivor.txt diff --git a/forge-gui/res/cardsfolder/upcoming/defiled_crypt_cadaver_lab.txt b/forge-gui/res/cardsfolder/d/defiled_crypt_cadaver_lab.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/defiled_crypt_cadaver_lab.txt rename to forge-gui/res/cardsfolder/d/defiled_crypt_cadaver_lab.txt diff --git a/forge-gui/res/cardsfolder/upcoming/deluge_of_doom.txt b/forge-gui/res/cardsfolder/d/deluge_of_doom.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/deluge_of_doom.txt rename to forge-gui/res/cardsfolder/d/deluge_of_doom.txt diff --git a/forge-gui/res/cardsfolder/upcoming/demolisher_spawn.txt b/forge-gui/res/cardsfolder/d/demolisher_spawn.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/demolisher_spawn.txt rename to forge-gui/res/cardsfolder/d/demolisher_spawn.txt diff --git a/forge-gui/res/cardsfolder/upcoming/demonic_counsel.txt b/forge-gui/res/cardsfolder/d/demonic_counsel.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/demonic_counsel.txt rename to forge-gui/res/cardsfolder/d/demonic_counsel.txt diff --git a/forge-gui/res/cardsfolder/upcoming/demonic_covenant.txt b/forge-gui/res/cardsfolder/d/demonic_covenant.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/demonic_covenant.txt rename to forge-gui/res/cardsfolder/d/demonic_covenant.txt diff --git a/forge-gui/res/cardsfolder/upcoming/derelict_attic_widows_walk.txt b/forge-gui/res/cardsfolder/d/derelict_attic_widows_walk.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/derelict_attic_widows_walk.txt rename to forge-gui/res/cardsfolder/d/derelict_attic_widows_walk.txt diff --git a/forge-gui/res/cardsfolder/upcoming/disorienting_choice.txt b/forge-gui/res/cardsfolder/d/disorienting_choice.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/disorienting_choice.txt rename to forge-gui/res/cardsfolder/d/disorienting_choice.txt diff --git a/forge-gui/res/cardsfolder/upcoming/dissection_tools.txt b/forge-gui/res/cardsfolder/d/dissection_tools.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/dissection_tools.txt rename to forge-gui/res/cardsfolder/d/dissection_tools.txt diff --git a/forge-gui/res/cardsfolder/upcoming/disturbing_mirth.txt b/forge-gui/res/cardsfolder/d/disturbing_mirth.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/disturbing_mirth.txt rename to forge-gui/res/cardsfolder/d/disturbing_mirth.txt diff --git a/forge-gui/res/cardsfolder/upcoming/diversion_specialist.txt b/forge-gui/res/cardsfolder/d/diversion_specialist.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/diversion_specialist.txt rename to forge-gui/res/cardsfolder/d/diversion_specialist.txt diff --git a/forge-gui/res/cardsfolder/upcoming/dollmakers_shop_porcelain_gallery.txt b/forge-gui/res/cardsfolder/d/dollmakers_shop_porcelain_gallery.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/dollmakers_shop_porcelain_gallery.txt rename to forge-gui/res/cardsfolder/d/dollmakers_shop_porcelain_gallery.txt diff --git a/forge-gui/res/cardsfolder/upcoming/dont_make_a_sound.txt b/forge-gui/res/cardsfolder/d/dont_make_a_sound.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/dont_make_a_sound.txt rename to forge-gui/res/cardsfolder/d/dont_make_a_sound.txt diff --git a/forge-gui/res/cardsfolder/upcoming/doomsday_excruciator.txt b/forge-gui/res/cardsfolder/d/doomsday_excruciator.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/doomsday_excruciator.txt rename to forge-gui/res/cardsfolder/d/doomsday_excruciator.txt diff --git a/forge-gui/res/cardsfolder/upcoming/drag_to_the_roots.txt b/forge-gui/res/cardsfolder/d/drag_to_the_roots.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/drag_to_the_roots.txt rename to forge-gui/res/cardsfolder/d/drag_to_the_roots.txt diff --git a/forge-gui/res/cardsfolder/upcoming/duskmourns_domination.txt b/forge-gui/res/cardsfolder/d/duskmourns_domination.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/duskmourns_domination.txt rename to forge-gui/res/cardsfolder/d/duskmourns_domination.txt diff --git a/forge-gui/res/cardsfolder/upcoming/emerge_from_the_cocoon.txt b/forge-gui/res/cardsfolder/e/emerge_from_the_cocoon.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/emerge_from_the_cocoon.txt rename to forge-gui/res/cardsfolder/e/emerge_from_the_cocoon.txt diff --git a/forge-gui/res/cardsfolder/upcoming/enduring_courage.txt b/forge-gui/res/cardsfolder/e/enduring_courage.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/enduring_courage.txt rename to forge-gui/res/cardsfolder/e/enduring_courage.txt diff --git a/forge-gui/res/cardsfolder/upcoming/enduring_curiosity.txt b/forge-gui/res/cardsfolder/e/enduring_curiosity.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/enduring_curiosity.txt rename to forge-gui/res/cardsfolder/e/enduring_curiosity.txt diff --git a/forge-gui/res/cardsfolder/upcoming/enduring_innocence.txt b/forge-gui/res/cardsfolder/e/enduring_innocence.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/enduring_innocence.txt rename to forge-gui/res/cardsfolder/e/enduring_innocence.txt diff --git a/forge-gui/res/cardsfolder/upcoming/enduring_tenacity.txt b/forge-gui/res/cardsfolder/e/enduring_tenacity.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/enduring_tenacity.txt rename to forge-gui/res/cardsfolder/e/enduring_tenacity.txt diff --git a/forge-gui/res/cardsfolder/upcoming/enduring_vitality.txt b/forge-gui/res/cardsfolder/e/enduring_vitality.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/enduring_vitality.txt rename to forge-gui/res/cardsfolder/e/enduring_vitality.txt diff --git a/forge-gui/res/cardsfolder/upcoming/enter_the_enigma.txt b/forge-gui/res/cardsfolder/e/enter_the_enigma.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/enter_the_enigma.txt rename to forge-gui/res/cardsfolder/e/enter_the_enigma.txt diff --git a/forge-gui/res/cardsfolder/upcoming/entity_tracker.txt b/forge-gui/res/cardsfolder/e/entity_tracker.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/entity_tracker.txt rename to forge-gui/res/cardsfolder/e/entity_tracker.txt diff --git a/forge-gui/res/cardsfolder/upcoming/erratic_apparition.txt b/forge-gui/res/cardsfolder/e/erratic_apparition.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/erratic_apparition.txt rename to forge-gui/res/cardsfolder/e/erratic_apparition.txt diff --git a/forge-gui/res/cardsfolder/upcoming/etched_cornfield.txt b/forge-gui/res/cardsfolder/e/etched_cornfield.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/etched_cornfield.txt rename to forge-gui/res/cardsfolder/e/etched_cornfield.txt diff --git a/forge-gui/res/cardsfolder/upcoming/exorcise.txt b/forge-gui/res/cardsfolder/e/exorcise.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/exorcise.txt rename to forge-gui/res/cardsfolder/e/exorcise.txt diff --git a/forge-gui/res/cardsfolder/upcoming/experimental_lab_staff_room.txt b/forge-gui/res/cardsfolder/e/experimental_lab_staff_room.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/experimental_lab_staff_room.txt rename to forge-gui/res/cardsfolder/e/experimental_lab_staff_room.txt diff --git a/forge-gui/res/cardsfolder/upcoming/fanatic_of_the_harrowing.txt b/forge-gui/res/cardsfolder/f/fanatic_of_the_harrowing.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/fanatic_of_the_harrowing.txt rename to forge-gui/res/cardsfolder/f/fanatic_of_the_harrowing.txt diff --git a/forge-gui/res/cardsfolder/upcoming/fear_my_authority.txt b/forge-gui/res/cardsfolder/f/fear_my_authority.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/fear_my_authority.txt rename to forge-gui/res/cardsfolder/f/fear_my_authority.txt diff --git a/forge-gui/res/cardsfolder/upcoming/fear_of_abduction.txt b/forge-gui/res/cardsfolder/f/fear_of_abduction.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/fear_of_abduction.txt rename to forge-gui/res/cardsfolder/f/fear_of_abduction.txt diff --git a/forge-gui/res/cardsfolder/upcoming/fear_of_being_hunted.txt b/forge-gui/res/cardsfolder/f/fear_of_being_hunted.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/fear_of_being_hunted.txt rename to forge-gui/res/cardsfolder/f/fear_of_being_hunted.txt diff --git a/forge-gui/res/cardsfolder/upcoming/fear_of_burning_alive.txt b/forge-gui/res/cardsfolder/f/fear_of_burning_alive.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/fear_of_burning_alive.txt rename to forge-gui/res/cardsfolder/f/fear_of_burning_alive.txt diff --git a/forge-gui/res/cardsfolder/upcoming/fear_of_exposure.txt b/forge-gui/res/cardsfolder/f/fear_of_exposure.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/fear_of_exposure.txt rename to forge-gui/res/cardsfolder/f/fear_of_exposure.txt diff --git a/forge-gui/res/cardsfolder/upcoming/fear_of_failed_tests.txt b/forge-gui/res/cardsfolder/f/fear_of_failed_tests.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/fear_of_failed_tests.txt rename to forge-gui/res/cardsfolder/f/fear_of_failed_tests.txt diff --git a/forge-gui/res/cardsfolder/upcoming/fear_of_falling.txt b/forge-gui/res/cardsfolder/f/fear_of_falling.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/fear_of_falling.txt rename to forge-gui/res/cardsfolder/f/fear_of_falling.txt diff --git a/forge-gui/res/cardsfolder/upcoming/fear_of_immobility.txt b/forge-gui/res/cardsfolder/f/fear_of_immobility.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/fear_of_immobility.txt rename to forge-gui/res/cardsfolder/f/fear_of_immobility.txt diff --git a/forge-gui/res/cardsfolder/upcoming/fear_of_impostors.txt b/forge-gui/res/cardsfolder/f/fear_of_impostors.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/fear_of_impostors.txt rename to forge-gui/res/cardsfolder/f/fear_of_impostors.txt diff --git a/forge-gui/res/cardsfolder/upcoming/fear_of_infinity.txt b/forge-gui/res/cardsfolder/f/fear_of_infinity.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/fear_of_infinity.txt rename to forge-gui/res/cardsfolder/f/fear_of_infinity.txt diff --git a/forge-gui/res/cardsfolder/upcoming/fear_of_isolation.txt b/forge-gui/res/cardsfolder/f/fear_of_isolation.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/fear_of_isolation.txt rename to forge-gui/res/cardsfolder/f/fear_of_isolation.txt diff --git a/forge-gui/res/cardsfolder/upcoming/fear_of_lost_teeth.txt b/forge-gui/res/cardsfolder/f/fear_of_lost_teeth.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/fear_of_lost_teeth.txt rename to forge-gui/res/cardsfolder/f/fear_of_lost_teeth.txt diff --git a/forge-gui/res/cardsfolder/upcoming/fear_of_missing_out.txt b/forge-gui/res/cardsfolder/f/fear_of_missing_out.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/fear_of_missing_out.txt rename to forge-gui/res/cardsfolder/f/fear_of_missing_out.txt diff --git a/forge-gui/res/cardsfolder/upcoming/fear_of_sleep_paralysis.txt b/forge-gui/res/cardsfolder/f/fear_of_sleep_paralysis.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/fear_of_sleep_paralysis.txt rename to forge-gui/res/cardsfolder/f/fear_of_sleep_paralysis.txt diff --git a/forge-gui/res/cardsfolder/upcoming/fear_of_surveilance.txt b/forge-gui/res/cardsfolder/f/fear_of_surveilance.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/fear_of_surveilance.txt rename to forge-gui/res/cardsfolder/f/fear_of_surveilance.txt diff --git a/forge-gui/res/cardsfolder/upcoming/fear_of_the_dark.txt b/forge-gui/res/cardsfolder/f/fear_of_the_dark.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/fear_of_the_dark.txt rename to forge-gui/res/cardsfolder/f/fear_of_the_dark.txt diff --git a/forge-gui/res/cardsfolder/upcoming/felidar_savior.txt b/forge-gui/res/cardsfolder/f/felidar_savior.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/felidar_savior.txt rename to forge-gui/res/cardsfolder/f/felidar_savior.txt diff --git a/forge-gui/res/cardsfolder/upcoming/final_vengeance.txt b/forge-gui/res/cardsfolder/f/final_vengeance.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/final_vengeance.txt rename to forge-gui/res/cardsfolder/f/final_vengeance.txt diff --git a/forge-gui/res/cardsfolder/upcoming/flesh_burrower.txt b/forge-gui/res/cardsfolder/f/flesh_burrower.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/flesh_burrower.txt rename to forge-gui/res/cardsfolder/f/flesh_burrower.txt diff --git a/forge-gui/res/cardsfolder/upcoming/floodfarm_verge.txt b/forge-gui/res/cardsfolder/f/floodfarm_verge.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/floodfarm_verge.txt rename to forge-gui/res/cardsfolder/f/floodfarm_verge.txt diff --git a/forge-gui/res/cardsfolder/upcoming/floodpits_drowner.txt b/forge-gui/res/cardsfolder/f/floodpits_drowner.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/floodpits_drowner.txt rename to forge-gui/res/cardsfolder/f/floodpits_drowner.txt diff --git a/forge-gui/res/cardsfolder/upcoming/formless_genesis.txt b/forge-gui/res/cardsfolder/f/formless_genesis.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/formless_genesis.txt rename to forge-gui/res/cardsfolder/f/formless_genesis.txt diff --git a/forge-gui/res/cardsfolder/upcoming/found_footage.txt b/forge-gui/res/cardsfolder/f/found_footage.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/found_footage.txt rename to forge-gui/res/cardsfolder/f/found_footage.txt diff --git a/forge-gui/res/cardsfolder/upcoming/frantic_strength.txt b/forge-gui/res/cardsfolder/f/frantic_strength.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/frantic_strength.txt rename to forge-gui/res/cardsfolder/f/frantic_strength.txt diff --git a/forge-gui/res/cardsfolder/upcoming/friendly_ghost.txt b/forge-gui/res/cardsfolder/f/friendly_ghost.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/friendly_ghost.txt rename to forge-gui/res/cardsfolder/f/friendly_ghost.txt diff --git a/forge-gui/res/cardsfolder/upcoming/friendly_teddy.txt b/forge-gui/res/cardsfolder/f/friendly_teddy.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/friendly_teddy.txt rename to forge-gui/res/cardsfolder/f/friendly_teddy.txt diff --git a/forge-gui/res/cardsfolder/upcoming/funeral_room_awakening_hall.txt b/forge-gui/res/cardsfolder/f/funeral_room_awakening_hall.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/funeral_room_awakening_hall.txt rename to forge-gui/res/cardsfolder/f/funeral_room_awakening_hall.txt diff --git a/forge-gui/res/cardsfolder/upcoming/get_out.txt b/forge-gui/res/cardsfolder/g/get_out.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/get_out.txt rename to forge-gui/res/cardsfolder/g/get_out.txt diff --git a/forge-gui/res/cardsfolder/upcoming/ghost_vacuum.txt b/forge-gui/res/cardsfolder/g/ghost_vacuum.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/ghost_vacuum.txt rename to forge-gui/res/cardsfolder/g/ghost_vacuum.txt diff --git a/forge-gui/res/cardsfolder/upcoming/ghostly_dancers.txt b/forge-gui/res/cardsfolder/g/ghostly_dancers.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/ghostly_dancers.txt rename to forge-gui/res/cardsfolder/g/ghostly_dancers.txt diff --git a/forge-gui/res/cardsfolder/upcoming/ghostly_keybearer.txt b/forge-gui/res/cardsfolder/g/ghostly_keybearer.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/ghostly_keybearer.txt rename to forge-gui/res/cardsfolder/g/ghostly_keybearer.txt diff --git a/forge-gui/res/cardsfolder/upcoming/giggling_skitterspike.txt b/forge-gui/res/cardsfolder/g/giggling_skitterspike.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/giggling_skitterspike.txt rename to forge-gui/res/cardsfolder/g/giggling_skitterspike.txt diff --git a/forge-gui/res/cardsfolder/upcoming/give_in_to_violence.txt b/forge-gui/res/cardsfolder/g/give_in_to_violence.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/give_in_to_violence.txt rename to forge-gui/res/cardsfolder/g/give_in_to_violence.txt diff --git a/forge-gui/res/cardsfolder/upcoming/glassworks_shattered_yard.txt b/forge-gui/res/cardsfolder/g/glassworks_shattered_yard.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/glassworks_shattered_yard.txt rename to forge-gui/res/cardsfolder/g/glassworks_shattered_yard.txt diff --git a/forge-gui/res/cardsfolder/upcoming/gleeful_arsonist.txt b/forge-gui/res/cardsfolder/g/gleeful_arsonist.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/gleeful_arsonist.txt rename to forge-gui/res/cardsfolder/g/gleeful_arsonist.txt diff --git a/forge-gui/res/cardsfolder/upcoming/glimmer_seeker.txt b/forge-gui/res/cardsfolder/g/glimmer_seeker.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/glimmer_seeker.txt rename to forge-gui/res/cardsfolder/g/glimmer_seeker.txt diff --git a/forge-gui/res/cardsfolder/upcoming/glimmerburst.txt b/forge-gui/res/cardsfolder/g/glimmerburst.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/glimmerburst.txt rename to forge-gui/res/cardsfolder/g/glimmerburst.txt diff --git a/forge-gui/res/cardsfolder/upcoming/glimmerlight.txt b/forge-gui/res/cardsfolder/g/glimmerlight.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/glimmerlight.txt rename to forge-gui/res/cardsfolder/g/glimmerlight.txt diff --git a/forge-gui/res/cardsfolder/upcoming/glitch_interpreter.txt b/forge-gui/res/cardsfolder/g/glitch_interpreter.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/glitch_interpreter.txt rename to forge-gui/res/cardsfolder/g/glitch_interpreter.txt diff --git a/forge-gui/res/cardsfolder/upcoming/gloomlake_verge.txt b/forge-gui/res/cardsfolder/g/gloomlake_verge.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/gloomlake_verge.txt rename to forge-gui/res/cardsfolder/g/gloomlake_verge.txt diff --git a/forge-gui/res/cardsfolder/upcoming/grab_the_prize.txt b/forge-gui/res/cardsfolder/g/grab_the_prize.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/grab_the_prize.txt rename to forge-gui/res/cardsfolder/g/grab_the_prize.txt diff --git a/forge-gui/res/cardsfolder/upcoming/grand_entryway_elegant_rotunda.txt b/forge-gui/res/cardsfolder/g/grand_entryway_elegant_rotunda.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/grand_entryway_elegant_rotunda.txt rename to forge-gui/res/cardsfolder/g/grand_entryway_elegant_rotunda.txt diff --git a/forge-gui/res/cardsfolder/upcoming/grasping_longneck.txt b/forge-gui/res/cardsfolder/g/grasping_longneck.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/grasping_longneck.txt rename to forge-gui/res/cardsfolder/g/grasping_longneck.txt diff --git a/forge-gui/res/cardsfolder/upcoming/greenhouse_rickety_gazebo.txt b/forge-gui/res/cardsfolder/g/greenhouse_rickety_gazebo.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/greenhouse_rickety_gazebo.txt rename to forge-gui/res/cardsfolder/g/greenhouse_rickety_gazebo.txt diff --git a/forge-gui/res/cardsfolder/upcoming/gremlin_tamer.txt b/forge-gui/res/cardsfolder/g/gremlin_tamer.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/gremlin_tamer.txt rename to forge-gui/res/cardsfolder/g/gremlin_tamer.txt diff --git a/forge-gui/res/cardsfolder/upcoming/grievous_wound.txt b/forge-gui/res/cardsfolder/g/grievous_wound.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/grievous_wound.txt rename to forge-gui/res/cardsfolder/g/grievous_wound.txt diff --git a/forge-gui/res/cardsfolder/upcoming/growing_dread.txt b/forge-gui/res/cardsfolder/g/growing_dread.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/growing_dread.txt rename to forge-gui/res/cardsfolder/g/growing_dread.txt diff --git a/forge-gui/res/cardsfolder/upcoming/hand_that_feeds.txt b/forge-gui/res/cardsfolder/h/hand_that_feeds.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/hand_that_feeds.txt rename to forge-gui/res/cardsfolder/h/hand_that_feeds.txt diff --git a/forge-gui/res/cardsfolder/upcoming/hardened_escort.txt b/forge-gui/res/cardsfolder/h/hardened_escort.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/hardened_escort.txt rename to forge-gui/res/cardsfolder/h/hardened_escort.txt diff --git a/forge-gui/res/cardsfolder/upcoming/haunted_screen.txt b/forge-gui/res/cardsfolder/h/haunted_screen.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/haunted_screen.txt rename to forge-gui/res/cardsfolder/h/haunted_screen.txt diff --git a/forge-gui/res/cardsfolder/upcoming/hauntwoods_shrieker.txt b/forge-gui/res/cardsfolder/h/hauntwoods_shrieker.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/hauntwoods_shrieker.txt rename to forge-gui/res/cardsfolder/h/hauntwoods_shrieker.txt diff --git a/forge-gui/res/cardsfolder/upcoming/hedge_shredder.txt b/forge-gui/res/cardsfolder/h/hedge_shredder.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/hedge_shredder.txt rename to forge-gui/res/cardsfolder/h/hedge_shredder.txt diff --git a/forge-gui/res/cardsfolder/upcoming/helpful_hunter.txt b/forge-gui/res/cardsfolder/h/helpful_hunter.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/helpful_hunter.txt rename to forge-gui/res/cardsfolder/h/helpful_hunter.txt diff --git a/forge-gui/res/cardsfolder/upcoming/horrid_vigor.txt b/forge-gui/res/cardsfolder/h/horrid_vigor.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/horrid_vigor.txt rename to forge-gui/res/cardsfolder/h/horrid_vigor.txt diff --git a/forge-gui/res/cardsfolder/upcoming/house_cartographer.txt b/forge-gui/res/cardsfolder/h/house_cartographer.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/house_cartographer.txt rename to forge-gui/res/cardsfolder/h/house_cartographer.txt diff --git a/forge-gui/res/cardsfolder/upcoming/hushwood_verge.txt b/forge-gui/res/cardsfolder/h/hushwood_verge.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/hushwood_verge.txt rename to forge-gui/res/cardsfolder/h/hushwood_verge.txt diff --git a/forge-gui/res/cardsfolder/upcoming/i_am_duskmourn.txt b/forge-gui/res/cardsfolder/i/i_am_duskmourn.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/i_am_duskmourn.txt rename to forge-gui/res/cardsfolder/i/i_am_duskmourn.txt diff --git a/forge-gui/res/cardsfolder/upcoming/i_am_never_alone.txt b/forge-gui/res/cardsfolder/i/i_am_never_alone.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/i_am_never_alone.txt rename to forge-gui/res/cardsfolder/i/i_am_never_alone.txt diff --git a/forge-gui/res/cardsfolder/upcoming/i_am_untouchable.txt b/forge-gui/res/cardsfolder/i/i_am_untouchable.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/i_am_untouchable.txt rename to forge-gui/res/cardsfolder/i/i_am_untouchable.txt diff --git a/forge-gui/res/cardsfolder/upcoming/i_call_for_slaughter.txt b/forge-gui/res/cardsfolder/i/i_call_for_slaughter.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/i_call_for_slaughter.txt rename to forge-gui/res/cardsfolder/i/i_call_for_slaughter.txt diff --git a/forge-gui/res/cardsfolder/upcoming/i_will_savor_your_agony.txt b/forge-gui/res/cardsfolder/i/i_will_savor_your_agony.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/i_will_savor_your_agony.txt rename to forge-gui/res/cardsfolder/i/i_will_savor_your_agony.txt diff --git a/forge-gui/res/cardsfolder/upcoming/impossible_inferno.txt b/forge-gui/res/cardsfolder/i/impossible_inferno.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/impossible_inferno.txt rename to forge-gui/res/cardsfolder/i/impossible_inferno.txt diff --git a/forge-gui/res/cardsfolder/upcoming/infernal_phantom.txt b/forge-gui/res/cardsfolder/i/infernal_phantom.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/infernal_phantom.txt rename to forge-gui/res/cardsfolder/i/infernal_phantom.txt diff --git a/forge-gui/res/cardsfolder/upcoming/innocuous_rat.txt b/forge-gui/res/cardsfolder/i/innocuous_rat.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/innocuous_rat.txt rename to forge-gui/res/cardsfolder/i/innocuous_rat.txt diff --git a/forge-gui/res/cardsfolder/upcoming/inquisitive_glimmer.txt b/forge-gui/res/cardsfolder/i/inquisitive_glimmer.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/inquisitive_glimmer.txt rename to forge-gui/res/cardsfolder/i/inquisitive_glimmer.txt diff --git a/forge-gui/res/cardsfolder/upcoming/insidious_fungus.txt b/forge-gui/res/cardsfolder/i/insidious_fungus.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/insidious_fungus.txt rename to forge-gui/res/cardsfolder/i/insidious_fungus.txt diff --git a/forge-gui/res/cardsfolder/upcoming/into_the_pit.txt b/forge-gui/res/cardsfolder/i/into_the_pit.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/into_the_pit.txt rename to forge-gui/res/cardsfolder/i/into_the_pit.txt diff --git a/forge-gui/res/cardsfolder/upcoming/intruding_soulrager.txt b/forge-gui/res/cardsfolder/i/intruding_soulrager.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/intruding_soulrager.txt rename to forge-gui/res/cardsfolder/i/intruding_soulrager.txt diff --git a/forge-gui/res/cardsfolder/upcoming/irreverent_gremlin.txt b/forge-gui/res/cardsfolder/i/irreverent_gremlin.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/irreverent_gremlin.txt rename to forge-gui/res/cardsfolder/i/irreverent_gremlin.txt diff --git a/forge-gui/res/cardsfolder/upcoming/jump_scare.txt b/forge-gui/res/cardsfolder/j/jump_scare.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/jump_scare.txt rename to forge-gui/res/cardsfolder/j/jump_scare.txt diff --git a/forge-gui/res/cardsfolder/upcoming/kaito_bane_of_nightmares.txt b/forge-gui/res/cardsfolder/k/kaito_bane_of_nightmares.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/kaito_bane_of_nightmares.txt rename to forge-gui/res/cardsfolder/k/kaito_bane_of_nightmares.txt diff --git a/forge-gui/res/cardsfolder/upcoming/keys_to_the_house.txt b/forge-gui/res/cardsfolder/k/keys_to_the_house.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/keys_to_the_house.txt rename to forge-gui/res/cardsfolder/k/keys_to_the_house.txt diff --git a/forge-gui/res/cardsfolder/upcoming/kianne_corrupted_memory.txt b/forge-gui/res/cardsfolder/k/kianne_corrupted_memory.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/kianne_corrupted_memory.txt rename to forge-gui/res/cardsfolder/k/kianne_corrupted_memory.txt diff --git a/forge-gui/res/cardsfolder/upcoming/killers_mask.txt b/forge-gui/res/cardsfolder/k/killers_mask.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/killers_mask.txt rename to forge-gui/res/cardsfolder/k/killers_mask.txt diff --git a/forge-gui/res/cardsfolder/upcoming/kneel_before_my_legions.txt b/forge-gui/res/cardsfolder/k/kneel_before_my_legions.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/kneel_before_my_legions.txt rename to forge-gui/res/cardsfolder/k/kneel_before_my_legions.txt diff --git a/forge-gui/res/cardsfolder/upcoming/kona_rescue_beastie.txt b/forge-gui/res/cardsfolder/k/kona_rescue_beastie.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/kona_rescue_beastie.txt rename to forge-gui/res/cardsfolder/k/kona_rescue_beastie.txt diff --git a/forge-gui/res/cardsfolder/upcoming/lakeside_shack.txt b/forge-gui/res/cardsfolder/l/lakeside_shack.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/lakeside_shack.txt rename to forge-gui/res/cardsfolder/l/lakeside_shack.txt diff --git a/forge-gui/res/cardsfolder/upcoming/lets_play_a_game.txt b/forge-gui/res/cardsfolder/l/lets_play_a_game.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/lets_play_a_game.txt rename to forge-gui/res/cardsfolder/l/lets_play_a_game.txt diff --git a/forge-gui/res/cardsfolder/upcoming/leyline_of_hope.txt b/forge-gui/res/cardsfolder/l/leyline_of_hope.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/leyline_of_hope.txt rename to forge-gui/res/cardsfolder/l/leyline_of_hope.txt diff --git a/forge-gui/res/cardsfolder/upcoming/leyline_of_mutation.txt b/forge-gui/res/cardsfolder/l/leyline_of_mutation.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/leyline_of_mutation.txt rename to forge-gui/res/cardsfolder/l/leyline_of_mutation.txt diff --git a/forge-gui/res/cardsfolder/upcoming/leyline_of_resonance.txt b/forge-gui/res/cardsfolder/l/leyline_of_resonance.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/leyline_of_resonance.txt rename to forge-gui/res/cardsfolder/l/leyline_of_resonance.txt diff --git a/forge-gui/res/cardsfolder/upcoming/leyline_of_transformation.txt b/forge-gui/res/cardsfolder/l/leyline_of_transformation.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/leyline_of_transformation.txt rename to forge-gui/res/cardsfolder/l/leyline_of_transformation.txt diff --git a/forge-gui/res/cardsfolder/upcoming/lionheart_glimmer.txt b/forge-gui/res/cardsfolder/l/lionheart_glimmer.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/lionheart_glimmer.txt rename to forge-gui/res/cardsfolder/l/lionheart_glimmer.txt diff --git a/forge-gui/res/cardsfolder/upcoming/live_or_die.txt b/forge-gui/res/cardsfolder/l/live_or_die.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/live_or_die.txt rename to forge-gui/res/cardsfolder/l/live_or_die.txt diff --git a/forge-gui/res/cardsfolder/upcoming/living_phone.txt b/forge-gui/res/cardsfolder/l/living_phone.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/living_phone.txt rename to forge-gui/res/cardsfolder/l/living_phone.txt diff --git a/forge-gui/res/cardsfolder/upcoming/malevolent_chandelier.txt b/forge-gui/res/cardsfolder/m/malevolent_chandelier.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/malevolent_chandelier.txt rename to forge-gui/res/cardsfolder/m/malevolent_chandelier.txt diff --git a/forge-gui/res/cardsfolder/upcoming/manifest_dread.txt b/forge-gui/res/cardsfolder/m/manifest_dread.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/manifest_dread.txt rename to forge-gui/res/cardsfolder/m/manifest_dread.txt diff --git a/forge-gui/res/cardsfolder/upcoming/marina_vendrell.txt b/forge-gui/res/cardsfolder/m/marina_vendrell.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/marina_vendrell.txt rename to forge-gui/res/cardsfolder/m/marina_vendrell.txt diff --git a/forge-gui/res/cardsfolder/upcoming/marina_vendrells_grimoire.txt b/forge-gui/res/cardsfolder/m/marina_vendrells_grimoire.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/marina_vendrells_grimoire.txt rename to forge-gui/res/cardsfolder/m/marina_vendrells_grimoire.txt diff --git a/forge-gui/res/cardsfolder/upcoming/marvin_murderous_mimic.txt b/forge-gui/res/cardsfolder/m/marvin_murderous_mimic.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/marvin_murderous_mimic.txt rename to forge-gui/res/cardsfolder/m/marvin_murderous_mimic.txt diff --git a/forge-gui/res/cardsfolder/upcoming/meat_locker_drowned_diner.txt b/forge-gui/res/cardsfolder/m/meat_locker_drowned_diner.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/meat_locker_drowned_diner.txt rename to forge-gui/res/cardsfolder/m/meat_locker_drowned_diner.txt diff --git a/forge-gui/res/cardsfolder/upcoming/meathook_massacre_ii.txt b/forge-gui/res/cardsfolder/m/meathook_massacre_ii.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/meathook_massacre_ii.txt rename to forge-gui/res/cardsfolder/m/meathook_massacre_ii.txt diff --git a/forge-gui/res/cardsfolder/upcoming/metamorphosis_fanatic.txt b/forge-gui/res/cardsfolder/m/metamorphosis_fanatic.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/metamorphosis_fanatic.txt rename to forge-gui/res/cardsfolder/m/metamorphosis_fanatic.txt diff --git a/forge-gui/res/cardsfolder/upcoming/miasma_demon.txt b/forge-gui/res/cardsfolder/m/miasma_demon.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/miasma_demon.txt rename to forge-gui/res/cardsfolder/m/miasma_demon.txt diff --git a/forge-gui/res/cardsfolder/upcoming/midnight_mayhem.txt b/forge-gui/res/cardsfolder/m/midnight_mayhem.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/midnight_mayhem.txt rename to forge-gui/res/cardsfolder/m/midnight_mayhem.txt diff --git a/forge-gui/res/cardsfolder/upcoming/mine_is_the_only_truth.txt b/forge-gui/res/cardsfolder/m/mine_is_the_only_truth.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/mine_is_the_only_truth.txt rename to forge-gui/res/cardsfolder/m/mine_is_the_only_truth.txt diff --git a/forge-gui/res/cardsfolder/upcoming/mirror_room_fractured_realm.txt b/forge-gui/res/cardsfolder/m/mirror_room_fractured_realm.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/mirror_room_fractured_realm.txt rename to forge-gui/res/cardsfolder/m/mirror_room_fractured_realm.txt diff --git a/forge-gui/res/cardsfolder/upcoming/moldering_gym_weight_room.txt b/forge-gui/res/cardsfolder/m/moldering_gym_weight_room.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/moldering_gym_weight_room.txt rename to forge-gui/res/cardsfolder/m/moldering_gym_weight_room.txt diff --git a/forge-gui/res/cardsfolder/upcoming/monstrous_emergence.txt b/forge-gui/res/cardsfolder/m/monstrous_emergence.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/monstrous_emergence.txt rename to forge-gui/res/cardsfolder/m/monstrous_emergence.txt diff --git a/forge-gui/res/cardsfolder/upcoming/most_valuable_slayer.txt b/forge-gui/res/cardsfolder/m/most_valuable_slayer.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/most_valuable_slayer.txt rename to forge-gui/res/cardsfolder/m/most_valuable_slayer.txt diff --git a/forge-gui/res/cardsfolder/upcoming/murky_sewer.txt b/forge-gui/res/cardsfolder/m/murky_sewer.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/murky_sewer.txt rename to forge-gui/res/cardsfolder/m/murky_sewer.txt diff --git a/forge-gui/res/cardsfolder/upcoming/my_champion_stands_supreme.txt b/forge-gui/res/cardsfolder/m/my_champion_stands_supreme.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/my_champion_stands_supreme.txt rename to forge-gui/res/cardsfolder/m/my_champion_stands_supreme.txt diff --git a/forge-gui/res/cardsfolder/upcoming/my_followers_ascend.txt b/forge-gui/res/cardsfolder/m/my_followers_ascend.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/my_followers_ascend.txt rename to forge-gui/res/cardsfolder/m/my_followers_ascend.txt diff --git a/forge-gui/res/cardsfolder/upcoming/my_tendrils_run_deep.txt b/forge-gui/res/cardsfolder/m/my_tendrils_run_deep.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/my_tendrils_run_deep.txt rename to forge-gui/res/cardsfolder/m/my_tendrils_run_deep.txt diff --git a/forge-gui/res/cardsfolder/upcoming/my_wealth_will_bury_you.txt b/forge-gui/res/cardsfolder/m/my_wealth_will_bury_you.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/my_wealth_will_bury_you.txt rename to forge-gui/res/cardsfolder/m/my_wealth_will_bury_you.txt diff --git a/forge-gui/res/cardsfolder/upcoming/my_will_is_irresistible.txt b/forge-gui/res/cardsfolder/m/my_will_is_irresistible.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/my_will_is_irresistible.txt rename to forge-gui/res/cardsfolder/m/my_will_is_irresistible.txt diff --git a/forge-gui/res/cardsfolder/upcoming/my_wings_enfold_all.txt b/forge-gui/res/cardsfolder/m/my_wings_enfold_all.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/my_wings_enfold_all.txt rename to forge-gui/res/cardsfolder/m/my_wings_enfold_all.txt diff --git a/forge-gui/res/cardsfolder/upcoming/nashi_searcher_in_the_dark.txt b/forge-gui/res/cardsfolder/n/nashi_searcher_in_the_dark.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/nashi_searcher_in_the_dark.txt rename to forge-gui/res/cardsfolder/n/nashi_searcher_in_the_dark.txt diff --git a/forge-gui/res/cardsfolder/upcoming/neglected_manor.txt b/forge-gui/res/cardsfolder/n/neglected_manor.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/neglected_manor.txt rename to forge-gui/res/cardsfolder/n/neglected_manor.txt diff --git a/forge-gui/res/cardsfolder/upcoming/niko_light_of_hope.txt b/forge-gui/res/cardsfolder/n/niko_light_of_hope.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/niko_light_of_hope.txt rename to forge-gui/res/cardsfolder/n/niko_light_of_hope.txt diff --git a/forge-gui/res/cardsfolder/upcoming/nine_lives_familiar.txt b/forge-gui/res/cardsfolder/n/nine_lives_familiar.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/nine_lives_familiar.txt rename to forge-gui/res/cardsfolder/n/nine_lives_familiar.txt diff --git a/forge-gui/res/cardsfolder/upcoming/no_secret_is_hidden_from_me.txt b/forge-gui/res/cardsfolder/n/no_secret_is_hidden_from_me.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/no_secret_is_hidden_from_me.txt rename to forge-gui/res/cardsfolder/n/no_secret_is_hidden_from_me.txt diff --git a/forge-gui/res/cardsfolder/upcoming/norin_swift_survivalist.txt b/forge-gui/res/cardsfolder/n/norin_swift_survivalist.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/norin_swift_survivalist.txt rename to forge-gui/res/cardsfolder/n/norin_swift_survivalist.txt diff --git a/forge-gui/res/cardsfolder/upcoming/nowhere_to_run.txt b/forge-gui/res/cardsfolder/n/nowhere_to_run.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/nowhere_to_run.txt rename to forge-gui/res/cardsfolder/n/nowhere_to_run.txt diff --git a/forge-gui/res/cardsfolder/upcoming/oblivious_bookworm.txt b/forge-gui/res/cardsfolder/o/oblivious_bookworm.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/oblivious_bookworm.txt rename to forge-gui/res/cardsfolder/o/oblivious_bookworm.txt diff --git a/forge-gui/res/cardsfolder/upcoming/omnivorous_flytrap.txt b/forge-gui/res/cardsfolder/o/omnivorous_flytrap.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/omnivorous_flytrap.txt rename to forge-gui/res/cardsfolder/o/omnivorous_flytrap.txt diff --git a/forge-gui/res/cardsfolder/upcoming/only_i_know_what_awaits.txt b/forge-gui/res/cardsfolder/o/only_i_know_what_awaits.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/only_i_know_what_awaits.txt rename to forge-gui/res/cardsfolder/o/only_i_know_what_awaits.txt diff --git a/forge-gui/res/cardsfolder/upcoming/optimistic_scavenger.txt b/forge-gui/res/cardsfolder/o/optimistic_scavenger.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/optimistic_scavenger.txt rename to forge-gui/res/cardsfolder/o/optimistic_scavenger.txt diff --git a/forge-gui/res/cardsfolder/upcoming/orphans_of_the_wheat.txt b/forge-gui/res/cardsfolder/o/orphans_of_the_wheat.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/orphans_of_the_wheat.txt rename to forge-gui/res/cardsfolder/o/orphans_of_the_wheat.txt diff --git a/forge-gui/res/cardsfolder/upcoming/osseous_sticktwister.txt b/forge-gui/res/cardsfolder/o/osseous_sticktwister.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/osseous_sticktwister.txt rename to forge-gui/res/cardsfolder/o/osseous_sticktwister.txt diff --git a/forge-gui/res/cardsfolder/upcoming/overgrown_zealot.txt b/forge-gui/res/cardsfolder/o/overgrown_zealot.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/overgrown_zealot.txt rename to forge-gui/res/cardsfolder/o/overgrown_zealot.txt diff --git a/forge-gui/res/cardsfolder/upcoming/overlord_of_the_balemurk.txt b/forge-gui/res/cardsfolder/o/overlord_of_the_balemurk.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/overlord_of_the_balemurk.txt rename to forge-gui/res/cardsfolder/o/overlord_of_the_balemurk.txt diff --git a/forge-gui/res/cardsfolder/upcoming/overlord_of_the_boilerbilges.txt b/forge-gui/res/cardsfolder/o/overlord_of_the_boilerbilges.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/overlord_of_the_boilerbilges.txt rename to forge-gui/res/cardsfolder/o/overlord_of_the_boilerbilges.txt diff --git a/forge-gui/res/cardsfolder/upcoming/overlord_of_the_floodpits.txt b/forge-gui/res/cardsfolder/o/overlord_of_the_floodpits.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/overlord_of_the_floodpits.txt rename to forge-gui/res/cardsfolder/o/overlord_of_the_floodpits.txt diff --git a/forge-gui/res/cardsfolder/upcoming/overlord_of_the_hauntwoods.txt b/forge-gui/res/cardsfolder/o/overlord_of_the_hauntwoods.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/overlord_of_the_hauntwoods.txt rename to forge-gui/res/cardsfolder/o/overlord_of_the_hauntwoods.txt diff --git a/forge-gui/res/cardsfolder/upcoming/overlord_of_the_mistmoors.txt b/forge-gui/res/cardsfolder/o/overlord_of_the_mistmoors.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/overlord_of_the_mistmoors.txt rename to forge-gui/res/cardsfolder/o/overlord_of_the_mistmoors.txt diff --git a/forge-gui/res/cardsfolder/upcoming/painters_studio_defaced_gallery.txt b/forge-gui/res/cardsfolder/p/painters_studio_defaced_gallery.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/painters_studio_defaced_gallery.txt rename to forge-gui/res/cardsfolder/p/painters_studio_defaced_gallery.txt diff --git a/forge-gui/res/cardsfolder/upcoming/paranormal_analyst.txt b/forge-gui/res/cardsfolder/p/paranormal_analyst.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/paranormal_analyst.txt rename to forge-gui/res/cardsfolder/p/paranormal_analyst.txt diff --git a/forge-gui/res/cardsfolder/upcoming/patched_plaything.txt b/forge-gui/res/cardsfolder/p/patched_plaything.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/patched_plaything.txt rename to forge-gui/res/cardsfolder/p/patched_plaything.txt diff --git a/forge-gui/res/cardsfolder/upcoming/patchwork_beastie.txt b/forge-gui/res/cardsfolder/p/patchwork_beastie.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/patchwork_beastie.txt rename to forge-gui/res/cardsfolder/p/patchwork_beastie.txt diff --git a/forge-gui/res/cardsfolder/upcoming/peculiar_lighthouse.txt b/forge-gui/res/cardsfolder/p/peculiar_lighthouse.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/peculiar_lighthouse.txt rename to forge-gui/res/cardsfolder/p/peculiar_lighthouse.txt diff --git a/forge-gui/res/cardsfolder/upcoming/peer_past_the_veil.txt b/forge-gui/res/cardsfolder/p/peer_past_the_veil.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/peer_past_the_veil.txt rename to forge-gui/res/cardsfolder/p/peer_past_the_veil.txt diff --git a/forge-gui/res/cardsfolder/upcoming/persistent_constrictor.txt b/forge-gui/res/cardsfolder/p/persistent_constrictor.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/persistent_constrictor.txt rename to forge-gui/res/cardsfolder/p/persistent_constrictor.txt diff --git a/forge-gui/res/cardsfolder/upcoming/phenomenon_investigators.txt b/forge-gui/res/cardsfolder/p/phenomenon_investigators.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/phenomenon_investigators.txt rename to forge-gui/res/cardsfolder/p/phenomenon_investigators.txt diff --git a/forge-gui/res/cardsfolder/upcoming/piggy_bank.txt b/forge-gui/res/cardsfolder/p/piggy_bank.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/piggy_bank.txt rename to forge-gui/res/cardsfolder/p/piggy_bank.txt diff --git a/forge-gui/res/cardsfolder/upcoming/piranha_fly.txt b/forge-gui/res/cardsfolder/p/piranha_fly.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/piranha_fly.txt rename to forge-gui/res/cardsfolder/p/piranha_fly.txt diff --git a/forge-gui/res/cardsfolder/upcoming/polluted_cistern_dim_oubliette.txt b/forge-gui/res/cardsfolder/p/polluted_cistern_dim_oubliette.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/polluted_cistern_dim_oubliette.txt rename to forge-gui/res/cardsfolder/p/polluted_cistern_dim_oubliette.txt diff --git a/forge-gui/res/cardsfolder/upcoming/popular_egotist.txt b/forge-gui/res/cardsfolder/p/popular_egotist.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/popular_egotist.txt rename to forge-gui/res/cardsfolder/p/popular_egotist.txt diff --git a/forge-gui/res/cardsfolder/upcoming/possessed_goat.txt b/forge-gui/res/cardsfolder/p/possessed_goat.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/possessed_goat.txt rename to forge-gui/res/cardsfolder/p/possessed_goat.txt diff --git a/forge-gui/res/cardsfolder/upcoming/prideful_parent.txt b/forge-gui/res/cardsfolder/p/prideful_parent.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/prideful_parent.txt rename to forge-gui/res/cardsfolder/p/prideful_parent.txt diff --git a/forge-gui/res/cardsfolder/upcoming/ragged_playmate.txt b/forge-gui/res/cardsfolder/r/ragged_playmate.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/ragged_playmate.txt rename to forge-gui/res/cardsfolder/r/ragged_playmate.txt diff --git a/forge-gui/res/cardsfolder/upcoming/rampaging_soulrager.txt b/forge-gui/res/cardsfolder/r/rampaging_soulrager.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/rampaging_soulrager.txt rename to forge-gui/res/cardsfolder/r/rampaging_soulrager.txt diff --git a/forge-gui/res/cardsfolder/upcoming/raucous_carnival.txt b/forge-gui/res/cardsfolder/r/raucous_carnival.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/raucous_carnival.txt rename to forge-gui/res/cardsfolder/r/raucous_carnival.txt diff --git a/forge-gui/res/cardsfolder/upcoming/razorkin_hordecaller.txt b/forge-gui/res/cardsfolder/r/razorkin_hordecaller.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/razorkin_hordecaller.txt rename to forge-gui/res/cardsfolder/r/razorkin_hordecaller.txt diff --git a/forge-gui/res/cardsfolder/upcoming/razorkin_needlehead.txt b/forge-gui/res/cardsfolder/r/razorkin_needlehead.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/razorkin_needlehead.txt rename to forge-gui/res/cardsfolder/r/razorkin_needlehead.txt diff --git a/forge-gui/res/cardsfolder/upcoming/razortrap_gorge.txt b/forge-gui/res/cardsfolder/r/razortrap_gorge.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/razortrap_gorge.txt rename to forge-gui/res/cardsfolder/r/razortrap_gorge.txt diff --git a/forge-gui/res/cardsfolder/upcoming/reality_is_mine_to_control.txt b/forge-gui/res/cardsfolder/r/reality_is_mine_to_control.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/reality_is_mine_to_control.txt rename to forge-gui/res/cardsfolder/r/reality_is_mine_to_control.txt diff --git a/forge-gui/res/cardsfolder/upcoming/redress_fate.txt b/forge-gui/res/cardsfolder/r/redress_fate.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/redress_fate.txt rename to forge-gui/res/cardsfolder/r/redress_fate.txt diff --git a/forge-gui/res/cardsfolder/upcoming/reluctant_role_model.txt b/forge-gui/res/cardsfolder/r/reluctant_role_model.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/reluctant_role_model.txt rename to forge-gui/res/cardsfolder/r/reluctant_role_model.txt diff --git a/forge-gui/res/cardsfolder/upcoming/rendmaw_creaking_nest.txt b/forge-gui/res/cardsfolder/r/rendmaw_creaking_nest.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/rendmaw_creaking_nest.txt rename to forge-gui/res/cardsfolder/r/rendmaw_creaking_nest.txt diff --git a/forge-gui/res/cardsfolder/upcoming/restricted_office_lecture_hall.txt b/forge-gui/res/cardsfolder/r/restricted_office_lecture_hall.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/restricted_office_lecture_hall.txt rename to forge-gui/res/cardsfolder/r/restricted_office_lecture_hall.txt diff --git a/forge-gui/res/cardsfolder/upcoming/resurrected_cultist.txt b/forge-gui/res/cardsfolder/r/resurrected_cultist.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/resurrected_cultist.txt rename to forge-gui/res/cardsfolder/r/resurrected_cultist.txt diff --git a/forge-gui/res/cardsfolder/upcoming/rip_spawn_hunter.txt b/forge-gui/res/cardsfolder/r/rip_spawn_hunter.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/rip_spawn_hunter.txt rename to forge-gui/res/cardsfolder/r/rip_spawn_hunter.txt diff --git a/forge-gui/res/cardsfolder/upcoming/ripchain_razorkin.txt b/forge-gui/res/cardsfolder/r/ripchain_razorkin.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/ripchain_razorkin.txt rename to forge-gui/res/cardsfolder/r/ripchain_razorkin.txt diff --git a/forge-gui/res/cardsfolder/upcoming/rite_of_the_moth.txt b/forge-gui/res/cardsfolder/r/rite_of_the_moth.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/rite_of_the_moth.txt rename to forge-gui/res/cardsfolder/r/rite_of_the_moth.txt diff --git a/forge-gui/res/cardsfolder/upcoming/roaring_furnace_steaming_sauna.txt b/forge-gui/res/cardsfolder/r/roaring_furnace_steaming_sauna.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/roaring_furnace_steaming_sauna.txt rename to forge-gui/res/cardsfolder/r/roaring_furnace_steaming_sauna.txt diff --git a/forge-gui/res/cardsfolder/upcoming/rootwise_survivor.txt b/forge-gui/res/cardsfolder/r/rootwise_survivor.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/rootwise_survivor.txt rename to forge-gui/res/cardsfolder/r/rootwise_survivor.txt diff --git a/forge-gui/res/cardsfolder/upcoming/rot_like_the_scum_you_are.txt b/forge-gui/res/cardsfolder/r/rot_like_the_scum_you_are.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/rot_like_the_scum_you_are.txt rename to forge-gui/res/cardsfolder/r/rot_like_the_scum_you_are.txt diff --git a/forge-gui/res/cardsfolder/upcoming/running_is_useless.txt b/forge-gui/res/cardsfolder/r/running_is_useless.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/running_is_useless.txt rename to forge-gui/res/cardsfolder/r/running_is_useless.txt diff --git a/forge-gui/res/cardsfolder/upcoming/sadistic_shell_game.txt b/forge-gui/res/cardsfolder/s/sadistic_shell_game.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/sadistic_shell_game.txt rename to forge-gui/res/cardsfolder/s/sadistic_shell_game.txt diff --git a/forge-gui/res/cardsfolder/upcoming/savior_of_the_small.txt b/forge-gui/res/cardsfolder/s/savior_of_the_small.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/savior_of_the_small.txt rename to forge-gui/res/cardsfolder/s/savior_of_the_small.txt diff --git a/forge-gui/res/cardsfolder/upcoming/saw.txt b/forge-gui/res/cardsfolder/s/saw.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/saw.txt rename to forge-gui/res/cardsfolder/s/saw.txt diff --git a/forge-gui/res/cardsfolder/upcoming/sawblade_skinripper.txt b/forge-gui/res/cardsfolder/s/sawblade_skinripper.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/sawblade_skinripper.txt rename to forge-gui/res/cardsfolder/s/sawblade_skinripper.txt diff --git a/forge-gui/res/cardsfolder/upcoming/say_its_name.txt b/forge-gui/res/cardsfolder/s/say_its_name.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/say_its_name.txt rename to forge-gui/res/cardsfolder/s/say_its_name.txt diff --git a/forge-gui/res/cardsfolder/upcoming/scrabbling_skullcrab.txt b/forge-gui/res/cardsfolder/s/scrabbling_skullcrab.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/scrabbling_skullcrab.txt rename to forge-gui/res/cardsfolder/s/scrabbling_skullcrab.txt diff --git a/forge-gui/res/cardsfolder/upcoming/screaming_nemesis.txt b/forge-gui/res/cardsfolder/s/screaming_nemesis.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/screaming_nemesis.txt rename to forge-gui/res/cardsfolder/s/screaming_nemesis.txt diff --git a/forge-gui/res/cardsfolder/upcoming/seance_board.txt b/forge-gui/res/cardsfolder/s/seance_board.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/seance_board.txt rename to forge-gui/res/cardsfolder/s/seance_board.txt diff --git a/forge-gui/res/cardsfolder/upcoming/secret_arcade_dusty_parlor.txt b/forge-gui/res/cardsfolder/s/secret_arcade_dusty_parlor.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/secret_arcade_dusty_parlor.txt rename to forge-gui/res/cardsfolder/s/secret_arcade_dusty_parlor.txt diff --git a/forge-gui/res/cardsfolder/upcoming/seized_from_slumber.txt b/forge-gui/res/cardsfolder/s/seized_from_slumber.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/seized_from_slumber.txt rename to forge-gui/res/cardsfolder/s/seized_from_slumber.txt diff --git a/forge-gui/res/cardsfolder/upcoming/shardmages_rescue.txt b/forge-gui/res/cardsfolder/s/shardmages_rescue.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/shardmages_rescue.txt rename to forge-gui/res/cardsfolder/s/shardmages_rescue.txt diff --git a/forge-gui/res/cardsfolder/upcoming/sheltered_by_ghosts.txt b/forge-gui/res/cardsfolder/s/sheltered_by_ghosts.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/sheltered_by_ghosts.txt rename to forge-gui/res/cardsfolder/s/sheltered_by_ghosts.txt diff --git a/forge-gui/res/cardsfolder/upcoming/shepherding spirits.txt b/forge-gui/res/cardsfolder/s/shepherding_spirits.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/shepherding spirits.txt rename to forge-gui/res/cardsfolder/s/shepherding_spirits.txt diff --git a/forge-gui/res/cardsfolder/upcoming/shrewd_storyteller.txt b/forge-gui/res/cardsfolder/s/shrewd_storyteller.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/shrewd_storyteller.txt rename to forge-gui/res/cardsfolder/s/shrewd_storyteller.txt diff --git a/forge-gui/res/cardsfolder/upcoming/shriekwood_devourer.txt b/forge-gui/res/cardsfolder/s/shriekwood_devourer.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/shriekwood_devourer.txt rename to forge-gui/res/cardsfolder/s/shriekwood_devourer.txt diff --git a/forge-gui/res/cardsfolder/upcoming/shroudstomper.txt b/forge-gui/res/cardsfolder/s/shroudstomper.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/shroudstomper.txt rename to forge-gui/res/cardsfolder/s/shroudstomper.txt diff --git a/forge-gui/res/cardsfolder/upcoming/silent_hallcreeper.txt b/forge-gui/res/cardsfolder/s/silent_hallcreeper.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/silent_hallcreeper.txt rename to forge-gui/res/cardsfolder/s/silent_hallcreeper.txt diff --git a/forge-gui/res/cardsfolder/upcoming/skullsnap_nuisance.txt b/forge-gui/res/cardsfolder/s/skullsnap_nuisance.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/skullsnap_nuisance.txt rename to forge-gui/res/cardsfolder/s/skullsnap_nuisance.txt diff --git a/forge-gui/res/cardsfolder/upcoming/slavering_branchsnapper.txt b/forge-gui/res/cardsfolder/s/slavering_branchsnapper.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/slavering_branchsnapper.txt rename to forge-gui/res/cardsfolder/s/slavering_branchsnapper.txt diff --git a/forge-gui/res/cardsfolder/upcoming/smoky_lounge_misty_salon.txt b/forge-gui/res/cardsfolder/s/smoky_lounge_misty_salon.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/smoky_lounge_misty_salon.txt rename to forge-gui/res/cardsfolder/s/smoky_lounge_misty_salon.txt diff --git a/forge-gui/res/cardsfolder/upcoming/soaring_lightbringer.txt b/forge-gui/res/cardsfolder/s/soaring_lightbringer.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/soaring_lightbringer.txt rename to forge-gui/res/cardsfolder/s/soaring_lightbringer.txt diff --git a/forge-gui/res/cardsfolder/upcoming/solitary_study_endless_corridor.txt b/forge-gui/res/cardsfolder/s/solitary_study_endless_corridor.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/solitary_study_endless_corridor.txt rename to forge-gui/res/cardsfolder/s/solitary_study_endless_corridor.txt diff --git a/forge-gui/res/cardsfolder/upcoming/spectral_snatcher.txt b/forge-gui/res/cardsfolder/s/spectral_snatcher.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/spectral_snatcher.txt rename to forge-gui/res/cardsfolder/s/spectral_snatcher.txt diff --git a/forge-gui/res/cardsfolder/upcoming/spiked_corridor_torture_pit.txt b/forge-gui/res/cardsfolder/s/spiked_corridor_torture_pit.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/spiked_corridor_torture_pit.txt rename to forge-gui/res/cardsfolder/s/spiked_corridor_torture_pit.txt diff --git a/forge-gui/res/cardsfolder/upcoming/spineseeker_centipede.txt b/forge-gui/res/cardsfolder/s/spineseeker_centipede.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/spineseeker_centipede.txt rename to forge-gui/res/cardsfolder/s/spineseeker_centipede.txt diff --git a/forge-gui/res/cardsfolder/upcoming/split_up.txt b/forge-gui/res/cardsfolder/s/split_up.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/split_up.txt rename to forge-gui/res/cardsfolder/s/split_up.txt diff --git a/forge-gui/res/cardsfolder/upcoming/splitskin_doll.txt b/forge-gui/res/cardsfolder/s/splitskin_doll.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/splitskin_doll.txt rename to forge-gui/res/cardsfolder/s/splitskin_doll.txt diff --git a/forge-gui/res/cardsfolder/upcoming/sporogenic_infection.txt b/forge-gui/res/cardsfolder/s/sporogenic_infection.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/sporogenic_infection.txt rename to forge-gui/res/cardsfolder/s/sporogenic_infection.txt diff --git a/forge-gui/res/cardsfolder/upcoming/stalked_researcher.txt b/forge-gui/res/cardsfolder/s/stalked_researcher.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/stalked_researcher.txt rename to forge-gui/res/cardsfolder/s/stalked_researcher.txt diff --git a/forge-gui/res/cardsfolder/upcoming/star_athlete.txt b/forge-gui/res/cardsfolder/s/star_athlete.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/star_athlete.txt rename to forge-gui/res/cardsfolder/s/star_athlete.txt diff --git a/forge-gui/res/cardsfolder/upcoming/stay_hidden_stay_silent.txt b/forge-gui/res/cardsfolder/s/stay_hidden_stay_silent.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/stay_hidden_stay_silent.txt rename to forge-gui/res/cardsfolder/s/stay_hidden_stay_silent.txt diff --git a/forge-gui/res/cardsfolder/upcoming/strangled_cemetery.txt b/forge-gui/res/cardsfolder/s/strangled_cemetery.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/strangled_cemetery.txt rename to forge-gui/res/cardsfolder/s/strangled_cemetery.txt diff --git a/forge-gui/res/cardsfolder/upcoming/surgical_suite_hospital_room.txt b/forge-gui/res/cardsfolder/s/surgical_suite_hospital_room.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/surgical_suite_hospital_room.txt rename to forge-gui/res/cardsfolder/s/surgical_suite_hospital_room.txt diff --git a/forge-gui/res/cardsfolder/upcoming/suspended_sentence.txt b/forge-gui/res/cardsfolder/s/suspended_sentence.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/suspended_sentence.txt rename to forge-gui/res/cardsfolder/s/suspended_sentence.txt diff --git a/forge-gui/res/cardsfolder/upcoming/the_jolly_balloon_man.txt b/forge-gui/res/cardsfolder/t/the_jolly_balloon_man.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/the_jolly_balloon_man.txt rename to forge-gui/res/cardsfolder/t/the_jolly_balloon_man.txt diff --git a/forge-gui/res/cardsfolder/upcoming/the_lord_of_pain.txt b/forge-gui/res/cardsfolder/t/the_lord_of_pain.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/the_lord_of_pain.txt rename to forge-gui/res/cardsfolder/t/the_lord_of_pain.txt diff --git a/forge-gui/res/cardsfolder/upcoming/the_master_of_keys.txt b/forge-gui/res/cardsfolder/t/the_master_of_keys.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/the_master_of_keys.txt rename to forge-gui/res/cardsfolder/t/the_master_of_keys.txt diff --git a/forge-gui/res/cardsfolder/upcoming/the_mindskinner.txt b/forge-gui/res/cardsfolder/t/the_mindskinner.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/the_mindskinner.txt rename to forge-gui/res/cardsfolder/t/the_mindskinner.txt diff --git a/forge-gui/res/cardsfolder/upcoming/the_rollercrusher_ride.txt b/forge-gui/res/cardsfolder/t/the_rollercrusher_ride.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/the_rollercrusher_ride.txt rename to forge-gui/res/cardsfolder/t/the_rollercrusher_ride.txt diff --git a/forge-gui/res/cardsfolder/upcoming/the_swarmweaver.txt b/forge-gui/res/cardsfolder/t/the_swarmweaver.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/the_swarmweaver.txt rename to forge-gui/res/cardsfolder/t/the_swarmweaver.txt diff --git a/forge-gui/res/cardsfolder/upcoming/the_tale_of_tamiyo.txt b/forge-gui/res/cardsfolder/t/the_tale_of_tamiyo.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/the_tale_of_tamiyo.txt rename to forge-gui/res/cardsfolder/t/the_tale_of_tamiyo.txt diff --git a/forge-gui/res/cardsfolder/upcoming/the_wandering_rescuer.txt b/forge-gui/res/cardsfolder/t/the_wandering_rescuer.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/the_wandering_rescuer.txt rename to forge-gui/res/cardsfolder/t/the_wandering_rescuer.txt diff --git a/forge-gui/res/cardsfolder/upcoming/they_came_from_the_pipes.txt b/forge-gui/res/cardsfolder/t/they_came_from_the_pipes.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/they_came_from_the_pipes.txt rename to forge-gui/res/cardsfolder/t/they_came_from_the_pipes.txt diff --git a/forge-gui/res/cardsfolder/upcoming/thornspire_verge.txt b/forge-gui/res/cardsfolder/t/thornspire_verge.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/thornspire_verge.txt rename to forge-gui/res/cardsfolder/t/thornspire_verge.txt diff --git a/forge-gui/res/cardsfolder/upcoming/threats_around_every_corner.txt b/forge-gui/res/cardsfolder/t/threats_around_every_corner.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/threats_around_every_corner.txt rename to forge-gui/res/cardsfolder/t/threats_around_every_corner.txt diff --git a/forge-gui/res/cardsfolder/upcoming/ticket_booth_tunnel_of_hate.txt b/forge-gui/res/cardsfolder/t/ticket_booth_tunnel_of_hate.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/ticket_booth_tunnel_of_hate.txt rename to forge-gui/res/cardsfolder/t/ticket_booth_tunnel_of_hate.txt diff --git a/forge-gui/res/cardsfolder/upcoming/time_bends_to_my_will.txt b/forge-gui/res/cardsfolder/t/time_bends_to_my_will.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/time_bends_to_my_will.txt rename to forge-gui/res/cardsfolder/t/time_bends_to_my_will.txt diff --git a/forge-gui/res/cardsfolder/upcoming/toby_beastie_befriender.txt b/forge-gui/res/cardsfolder/t/toby_beastie_befriender.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/toby_beastie_befriender.txt rename to forge-gui/res/cardsfolder/t/toby_beastie_befriender.txt diff --git a/forge-gui/res/cardsfolder/upcoming/trapped_in_the_screen.txt b/forge-gui/res/cardsfolder/t/trapped_in_the_screen.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/trapped_in_the_screen.txt rename to forge-gui/res/cardsfolder/t/trapped_in_the_screen.txt diff --git a/forge-gui/res/cardsfolder/upcoming/trial_of_agony.txt b/forge-gui/res/cardsfolder/t/trial_of_agony.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/trial_of_agony.txt rename to forge-gui/res/cardsfolder/t/trial_of_agony.txt diff --git a/forge-gui/res/cardsfolder/upcoming/tunnel_surveyor.txt b/forge-gui/res/cardsfolder/t/tunnel_surveyor.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/tunnel_surveyor.txt rename to forge-gui/res/cardsfolder/t/tunnel_surveyor.txt diff --git a/forge-gui/res/cardsfolder/upcoming/turn_inside_out.txt b/forge-gui/res/cardsfolder/t/turn_inside_out.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/turn_inside_out.txt rename to forge-gui/res/cardsfolder/t/turn_inside_out.txt diff --git a/forge-gui/res/cardsfolder/upcoming/twist_reality.txt b/forge-gui/res/cardsfolder/t/twist_reality.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/twist_reality.txt rename to forge-gui/res/cardsfolder/t/twist_reality.txt diff --git a/forge-gui/res/cardsfolder/upcoming/twitching_doll.txt b/forge-gui/res/cardsfolder/t/twitching_doll.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/twitching_doll.txt rename to forge-gui/res/cardsfolder/t/twitching_doll.txt diff --git a/forge-gui/res/cardsfolder/upcoming/tyvar_the_pummeler.txt b/forge-gui/res/cardsfolder/t/tyvar_the_pummeler.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/tyvar_the_pummeler.txt rename to forge-gui/res/cardsfolder/t/tyvar_the_pummeler.txt diff --git a/forge-gui/res/cardsfolder/upcoming/unable_to_scream.txt b/forge-gui/res/cardsfolder/u/unable_to_scream.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/unable_to_scream.txt rename to forge-gui/res/cardsfolder/u/unable_to_scream.txt diff --git a/forge-gui/res/cardsfolder/upcoming/undead_sprinter.txt b/forge-gui/res/cardsfolder/u/undead_sprinter.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/undead_sprinter.txt rename to forge-gui/res/cardsfolder/u/undead_sprinter.txt diff --git a/forge-gui/res/cardsfolder/upcoming/under_the_skin.txt b/forge-gui/res/cardsfolder/u/under_the_skin.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/under_the_skin.txt rename to forge-gui/res/cardsfolder/u/under_the_skin.txt diff --git a/forge-gui/res/cardsfolder/upcoming/underwater_tunnel_slimy_aquarium.txt b/forge-gui/res/cardsfolder/u/underwater_tunnel_slimy_aquarium.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/underwater_tunnel_slimy_aquarium.txt rename to forge-gui/res/cardsfolder/u/underwater_tunnel_slimy_aquarium.txt diff --git a/forge-gui/res/cardsfolder/upcoming/unholy_annex_ritual_chamber.txt b/forge-gui/res/cardsfolder/u/unholy_annex_ritual_chamber.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/unholy_annex_ritual_chamber.txt rename to forge-gui/res/cardsfolder/u/unholy_annex_ritual_chamber.txt diff --git a/forge-gui/res/cardsfolder/upcoming/unidentified_hovership.txt b/forge-gui/res/cardsfolder/u/unidentified_hovership.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/unidentified_hovership.txt rename to forge-gui/res/cardsfolder/u/unidentified_hovership.txt diff --git a/forge-gui/res/cardsfolder/upcoming/unnerving_grasp.txt b/forge-gui/res/cardsfolder/u/unnerving_grasp.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/unnerving_grasp.txt rename to forge-gui/res/cardsfolder/u/unnerving_grasp.txt diff --git a/forge-gui/res/cardsfolder/upcoming/unsettling_twins.txt b/forge-gui/res/cardsfolder/u/unsettling_twins.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/unsettling_twins.txt rename to forge-gui/res/cardsfolder/u/unsettling_twins.txt diff --git a/forge-gui/res/cardsfolder/upcoming/unstoppable_slasher.txt b/forge-gui/res/cardsfolder/u/unstoppable_slasher.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/unstoppable_slasher.txt rename to forge-gui/res/cardsfolder/u/unstoppable_slasher.txt diff --git a/forge-gui/res/cardsfolder/upcoming/untimely_malfunction.txt b/forge-gui/res/cardsfolder/u/untimely_malfunction.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/untimely_malfunction.txt rename to forge-gui/res/cardsfolder/u/untimely_malfunction.txt diff --git a/forge-gui/res/cardsfolder/upcoming/unwanted_remake.txt b/forge-gui/res/cardsfolder/u/unwanted_remake.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/unwanted_remake.txt rename to forge-gui/res/cardsfolder/u/unwanted_remake.txt diff --git a/forge-gui/res/cardsfolder/upcoming/unwilling_vessel.txt b/forge-gui/res/cardsfolder/u/unwilling_vessel.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/unwilling_vessel.txt rename to forge-gui/res/cardsfolder/u/unwilling_vessel.txt diff --git a/forge-gui/res/cardsfolder/upcoming/ursine_monstrosity.txt b/forge-gui/res/cardsfolder/u/ursine_monstrosity.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/ursine_monstrosity.txt rename to forge-gui/res/cardsfolder/u/ursine_monstrosity.txt diff --git a/forge-gui/res/cardsfolder/upcoming/valgavoth_harrower_of_souls.txt b/forge-gui/res/cardsfolder/v/valgavoth_harrower_of_souls.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/valgavoth_harrower_of_souls.txt rename to forge-gui/res/cardsfolder/v/valgavoth_harrower_of_souls.txt diff --git a/forge-gui/res/cardsfolder/upcoming/valgavoth_terror_eater.txt b/forge-gui/res/cardsfolder/v/valgavoth_terror_eater.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/valgavoth_terror_eater.txt rename to forge-gui/res/cardsfolder/v/valgavoth_terror_eater.txt diff --git a/forge-gui/res/cardsfolder/upcoming/valgavoths_faithful.txt b/forge-gui/res/cardsfolder/v/valgavoths_faithful.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/valgavoths_faithful.txt rename to forge-gui/res/cardsfolder/v/valgavoths_faithful.txt diff --git a/forge-gui/res/cardsfolder/upcoming/valgavoths_lair.txt b/forge-gui/res/cardsfolder/v/valgavoths_lair.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/valgavoths_lair.txt rename to forge-gui/res/cardsfolder/v/valgavoths_lair.txt diff --git a/forge-gui/res/cardsfolder/upcoming/valgavoths_onslaught.txt b/forge-gui/res/cardsfolder/v/valgavoths_onslaught.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/valgavoths_onslaught.txt rename to forge-gui/res/cardsfolder/v/valgavoths_onslaught.txt diff --git a/forge-gui/res/cardsfolder/upcoming/vanish_from_sight.txt b/forge-gui/res/cardsfolder/v/vanish_from_sight.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/vanish_from_sight.txt rename to forge-gui/res/cardsfolder/v/vanish_from_sight.txt diff --git a/forge-gui/res/cardsfolder/upcoming/vengeful_bloodwitch.txt b/forge-gui/res/cardsfolder/v/vengeful_bloodwitch.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/vengeful_bloodwitch.txt rename to forge-gui/res/cardsfolder/v/vengeful_bloodwitch.txt diff --git a/forge-gui/res/cardsfolder/upcoming/vengeful_possession.txt b/forge-gui/res/cardsfolder/v/vengeful_possession.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/vengeful_possession.txt rename to forge-gui/res/cardsfolder/v/vengeful_possession.txt diff --git a/forge-gui/res/cardsfolder/upcoming/veteran_survivor.txt b/forge-gui/res/cardsfolder/v/veteran_survivor.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/veteran_survivor.txt rename to forge-gui/res/cardsfolder/v/veteran_survivor.txt diff --git a/forge-gui/res/cardsfolder/upcoming/vicious_clown.txt b/forge-gui/res/cardsfolder/v/vicious_clown.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/vicious_clown.txt rename to forge-gui/res/cardsfolder/v/vicious_clown.txt diff --git a/forge-gui/res/cardsfolder/upcoming/victor_valgavoths_seneschal.txt b/forge-gui/res/cardsfolder/v/victor_valgavoths_seneschal.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/victor_valgavoths_seneschal.txt rename to forge-gui/res/cardsfolder/v/victor_valgavoths_seneschal.txt diff --git a/forge-gui/res/cardsfolder/upcoming/vile_mutilator.txt b/forge-gui/res/cardsfolder/v/vile_mutilator.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/vile_mutilator.txt rename to forge-gui/res/cardsfolder/v/vile_mutilator.txt diff --git a/forge-gui/res/cardsfolder/upcoming/violent_urge.txt b/forge-gui/res/cardsfolder/v/violent_urge.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/violent_urge.txt rename to forge-gui/res/cardsfolder/v/violent_urge.txt diff --git a/forge-gui/res/cardsfolder/upcoming/walk_in_closet_forgotten_cellar.txt b/forge-gui/res/cardsfolder/w/walk_in_closet_forgotten_cellar.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/walk_in_closet_forgotten_cellar.txt rename to forge-gui/res/cardsfolder/w/walk_in_closet_forgotten_cellar.txt diff --git a/forge-gui/res/cardsfolder/upcoming/waltz_of_rage.txt b/forge-gui/res/cardsfolder/w/waltz_of_rage.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/waltz_of_rage.txt rename to forge-gui/res/cardsfolder/w/waltz_of_rage.txt diff --git a/forge-gui/res/cardsfolder/upcoming/wary_watchdog.txt b/forge-gui/res/cardsfolder/w/wary_watchdog.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/wary_watchdog.txt rename to forge-gui/res/cardsfolder/w/wary_watchdog.txt diff --git a/forge-gui/res/cardsfolder/upcoming/wickerfolk_thresher.txt b/forge-gui/res/cardsfolder/w/wickerfolk_thresher.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/wickerfolk_thresher.txt rename to forge-gui/res/cardsfolder/w/wickerfolk_thresher.txt diff --git a/forge-gui/res/cardsfolder/upcoming/wildfire_wickerfolk.txt b/forge-gui/res/cardsfolder/w/wildfire_wickerfolk.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/wildfire_wickerfolk.txt rename to forge-gui/res/cardsfolder/w/wildfire_wickerfolk.txt diff --git a/forge-gui/res/cardsfolder/upcoming/winter_misanthropic_guide.txt b/forge-gui/res/cardsfolder/w/winter_misanthropic_guide.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/winter_misanthropic_guide.txt rename to forge-gui/res/cardsfolder/w/winter_misanthropic_guide.txt diff --git a/forge-gui/res/cardsfolder/upcoming/winters_intervention.txt b/forge-gui/res/cardsfolder/w/winters_intervention.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/winters_intervention.txt rename to forge-gui/res/cardsfolder/w/winters_intervention.txt diff --git a/forge-gui/res/cardsfolder/upcoming/withering_torment.txt b/forge-gui/res/cardsfolder/w/withering_torment.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/withering_torment.txt rename to forge-gui/res/cardsfolder/w/withering_torment.txt diff --git a/forge-gui/res/cardsfolder/upcoming/you_are_unworthy_of_mercy.txt b/forge-gui/res/cardsfolder/y/you_are_unworthy_of_mercy.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/you_are_unworthy_of_mercy.txt rename to forge-gui/res/cardsfolder/y/you_are_unworthy_of_mercy.txt diff --git a/forge-gui/res/cardsfolder/upcoming/you_cannot_hide_from_me.txt b/forge-gui/res/cardsfolder/y/you_cannot_hide_from_me.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/you_cannot_hide_from_me.txt rename to forge-gui/res/cardsfolder/y/you_cannot_hide_from_me.txt diff --git a/forge-gui/res/cardsfolder/upcoming/you_exist_only_to_amuse.txt b/forge-gui/res/cardsfolder/y/you_exist_only_to_amuse.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/you_exist_only_to_amuse.txt rename to forge-gui/res/cardsfolder/y/you_exist_only_to_amuse.txt diff --git a/forge-gui/res/cardsfolder/upcoming/you_live_only_because_i_will_it.txt b/forge-gui/res/cardsfolder/y/you_live_only_because_i_will_it.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/you_live_only_because_i_will_it.txt rename to forge-gui/res/cardsfolder/y/you_live_only_because_i_will_it.txt diff --git a/forge-gui/res/cardsfolder/upcoming/you_will_know_true_suffering.txt b/forge-gui/res/cardsfolder/y/you_will_know_true_suffering.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/you_will_know_true_suffering.txt rename to forge-gui/res/cardsfolder/y/you_will_know_true_suffering.txt diff --git a/forge-gui/res/cardsfolder/upcoming/your_mistake_is_my_triumph.txt b/forge-gui/res/cardsfolder/y/your_mistake_is_my_triumph.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/your_mistake_is_my_triumph.txt rename to forge-gui/res/cardsfolder/y/your_mistake_is_my_triumph.txt diff --git a/forge-gui/res/cardsfolder/upcoming/your_nightmares_are_delicious.txt b/forge-gui/res/cardsfolder/y/your_nightmares_are_delicious.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/your_nightmares_are_delicious.txt rename to forge-gui/res/cardsfolder/y/your_nightmares_are_delicious.txt diff --git a/forge-gui/res/cardsfolder/upcoming/your_own_face_mocks_you.txt b/forge-gui/res/cardsfolder/y/your_own_face_mocks_you.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/your_own_face_mocks_you.txt rename to forge-gui/res/cardsfolder/y/your_own_face_mocks_you.txt diff --git a/forge-gui/res/cardsfolder/upcoming/your_plans_mean_nothing.txt b/forge-gui/res/cardsfolder/y/your_plans_mean_nothing.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/your_plans_mean_nothing.txt rename to forge-gui/res/cardsfolder/y/your_plans_mean_nothing.txt diff --git a/forge-gui/res/cardsfolder/upcoming/zimone_all_questioning.txt b/forge-gui/res/cardsfolder/z/zimone_all_questioning.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/zimone_all_questioning.txt rename to forge-gui/res/cardsfolder/z/zimone_all_questioning.txt diff --git a/forge-gui/res/cardsfolder/upcoming/zimone_mystery_unraveler.txt b/forge-gui/res/cardsfolder/z/zimone_mystery_unraveler.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/zimone_mystery_unraveler.txt rename to forge-gui/res/cardsfolder/z/zimone_mystery_unraveler.txt diff --git a/forge-gui/res/cardsfolder/upcoming/zimones_hypothesis.txt b/forge-gui/res/cardsfolder/z/zimones_hypothesis.txt similarity index 100% rename from forge-gui/res/cardsfolder/upcoming/zimones_hypothesis.txt rename to forge-gui/res/cardsfolder/z/zimones_hypothesis.txt From 3db4db0d07cb218949ee2d517194d26eb40a52b2 Mon Sep 17 00:00:00 2001 From: Fulgur14 <54345051+Fulgur14@users.noreply.github.com> Date: Mon, 14 Oct 2024 22:06:13 +0200 Subject: [PATCH 51/91] Add files via upload --- .../Death Toll [DSC] [2024].dck | 97 +++++++++++++++++ .../Endless Punishment [DSC] [2024].dck | 95 +++++++++++++++++ .../Jump Scare! [DSC] [2024].dck | 93 ++++++++++++++++ .../Miracle Worker [DSC] [2024].dck | 100 ++++++++++++++++++ 4 files changed, 385 insertions(+) create mode 100644 forge-gui/res/quest/commanderprecons/Death Toll [DSC] [2024].dck create mode 100644 forge-gui/res/quest/commanderprecons/Endless Punishment [DSC] [2024].dck create mode 100644 forge-gui/res/quest/commanderprecons/Jump Scare! [DSC] [2024].dck create mode 100644 forge-gui/res/quest/commanderprecons/Miracle Worker [DSC] [2024].dck diff --git a/forge-gui/res/quest/commanderprecons/Death Toll [DSC] [2024].dck b/forge-gui/res/quest/commanderprecons/Death Toll [DSC] [2024].dck new file mode 100644 index 00000000000..8d4369649a1 --- /dev/null +++ b/forge-gui/res/quest/commanderprecons/Death Toll [DSC] [2024].dck @@ -0,0 +1,97 @@ +[metadata] +Name=Death Toll [DSC] [2024] +[Commander] +1 Winter, Cynical Opportunist|DSC|1 +[Main] +1 Grist, the Hunger Tide|DSC|1 +1 Ob Nixilis Reignited|DSC|1 +1 Professor Onyx|DSC|1 +1 Wrenn and Seven|DSC|1 +1 Burnished Hart|DSC|1 +1 Carrion Grub|DSC|1 +1 Deathcap Cultivator|DSC|1 +1 Demolisher Spawn|DSC|1 +1 Giant Adephage|DSC|1 +1 Gnarlwood Dryad|DSC|1 +1 Grim Flayer|DSC|1 +1 Haywire Mite|DSC|1 +1 Hornet Queen|DSC|1 +1 Ishkanah, Grafwidow|DSC|1 +1 Moldgraf Millipede|DSC|1 +1 Moldgraf Monstrosity|DSC|1 +1 Noxious Gearhulk|DSC|1 +1 Nyx Weaver|DSC|1 +1 Obsessive Skinner|DSC|1 +1 Old Stickfingers|DSC|1 +1 Rendmaw, Creaking Nest|DSC|1 +1 Sakura-Tribe Elder|DSC|1 +1 Scavenging Ooze|DSC|1 +1 Skola Grovedancer|DSC|1 +1 Solemn Simulacrum|DSC|1 +1 Stitcher's Supplier|DSC|1 +1 Suspicious Bookcase|DSC|1 +1 Titania, Nature's Force|DSC|1 +1 Ursine Monstrosity|DSC|1 +1 Vile Mutilator|DSK|1 +1 Arachnogenesis|DSC|1 +1 Grapple with the Past|DSC|1 +1 Grisly Salvage|DSC|1 +1 Harrow|DSC|1 +1 Inscription of Abundance|DSC|1 +1 Putrefy|DSC|1 +1 Convert to Slime|DSC|1 +1 Culling Ritual|DSC|1 +1 Deluge of Doom|DSC|1 +1 Formless Genesis|DSC|1 +1 Harmonize|DSC|1 +1 Mulch|DSC|1 +1 Night's Whisper|DSC|1 +1 Rampant Growth|DSC|1 +1 Reanimate|DSC|1 +1 Binding the Old Gods|DSC|1 +1 Cemetery Tampering|DSC|1 +1 Crawling Sensation|DSC|1 +1 Deadbridge Chant|DSC|1 +1 Deathreap Ritual|DSC|1 +1 Demonic Covenant|DSC|1 +1 Into the Pit|DSC|1 +1 Polluted Cistern // Dim Oubliette|DSC|1 +1 Arcane Signet|DSC|1 +1 Commander's Sphere|DSC|1 +1 Golgari Signet|DSC|1 +1 Mind Stone|DSC|1 +1 Sol Ring|DSC|1 +1 Talisman of Resilience|DSC|1 +1 Whip of Erebos|DSC|1 +1 Whispersilk Cloak|DSC|1 +1 Ash Barrens|DSC|1 +1 Barren Moor|DSC|1 +1 Bojuka Bog|DSC|1 +1 Command Tower|DSC|1 +1 Darkmoss Bridge|DSC|1 +1 Dryad Arbor|DSC|1 +1 Evolving Wilds|DSC|1 +1 Exotic Orchard|DSC|1 +3 Forest|DSK|1 +2 Forest|DSK|2 +2 Forest|DSK|3 +1 Golgari Rot Farm|DSC|1 +1 Grim Backwoods|DSC|1 +1 Jungle Hollow|DSC|1 +1 Llanowar Wastes|DSC|1 +1 Necroblossom Snarl|DSC|1 +1 Reliquary Tower|DSC|1 +3 Swamp|DSK|1 +2 Swamp|DSK|2 +2 Swamp|DSK|3 +1 Tainted Wood|DSC|1 +1 Temple of Malady|DSC|1 +1 Temple of the False God|DSC|1 +1 Terramorphic Expanse|DSK|1 +1 Tranquil Thicket|DSC|1 +1 Tree of Tales|DSC|1 +1 Twilight Mire|DSC|1 +1 Vault of Whispers|DSC|1 +1 Viridescent Bog|DSC|1 +1 Woodland Cemetery|DSC|1 +[Sideboard] \ No newline at end of file diff --git a/forge-gui/res/quest/commanderprecons/Endless Punishment [DSC] [2024].dck b/forge-gui/res/quest/commanderprecons/Endless Punishment [DSC] [2024].dck new file mode 100644 index 00000000000..b16d12cca66 --- /dev/null +++ b/forge-gui/res/quest/commanderprecons/Endless Punishment [DSC] [2024].dck @@ -0,0 +1,95 @@ +[metadata] +Name=Endless Punishment [DSC] [2024] +[Commander] +1 Valgavoth, Harrower of Souls|DSC|1 +[Main] +1 Barbflare Gremlin|DSC|1 +1 Blood Artist|DSC|1 +1 Blood Seeker|DSC|1 +1 Braids, Arisen Nightmare|DSC|1 +1 Brash Taunter|DSC|1 +1 Combustible Gearhulk|DSC|1 +1 Falkenrath Noble|DSC|1 +1 Fate Unraveler|DSC|1 +1 Fear of Burning Alive|DSK|1 +1 Florian, Voldaren Scion|DSC|1 +1 Gleeful Arsonist|DSC|1 +1 Gray Merchant of Asphodel|DSC|1 +1 Harsh Mentor|DSC|1 +1 Kaervek the Merciless|DSC|1 +1 Kardur, Doomscourge|DSC|1 +1 Kederekt Parasite|DSC|1 +1 The Lord of Pain|DSC|1 +1 Massacre Girl|DSC|1 +1 Massacre Wurm|DSC|1 +1 Mayhem Devil|DSC|1 +1 Mogis, God of Slaughter|DSC|1 +1 Morbid Opportunist|DSC|1 +1 Nightshade Harvester|DSC|1 +1 Persistent Constrictor|DSC|1 +1 Rakdos, Lord of Riots|DSC|1 +1 Rampaging Ferocidon|DSC|1 +1 Solemn Simulacrum|DSC|1 +1 Star Athlete|DSC|1 +1 Stormfist Crusader|DSC|1 +1 Syr Konrad, the Grim|DSC|1 +1 Tectonic Giant|DSC|1 +1 Vial Smasher the Fierce|DSC|1 +1 Bedevil|DSC|1 +1 Blood Pact|DSC|1 +1 Chaos Warp|DSC|1 +1 Infernal Grasp|DSC|1 +1 Rakdos Charm|DSC|1 +1 Suspended Sentence|DSC|1 +1 Blasphemous Act|DSC|1 +1 Decree of Pain|DSC|1 +1 Feed the Swarm|DSC|1 +1 Grab the Prize|DSK|1 +1 Light Up the Stage|DSC|1 +1 Sadistic Shell Game|DSC|1 +1 Sign in Blood|DSC|1 +1 Bastion of Remembrance|DSC|1 +1 Enchanter's Bane|DSC|1 +1 Spiked Corridor // Torture Pit|DSC|1 +1 Spiteful Visions|DSC|1 +1 Theater of Horrors|DSC|1 +1 Arcane Signet|DSC|1 +1 Basilisk Collar|DSC|1 +1 Fellwar Stone|DSC|1 +1 Lightning Greaves|DSC|1 +1 Mask of Griselbrand|DSC|1 +1 Mind Stone|DSC|1 +1 Rakdos Signet|DSC|1 +1 Séance Board|DSC|1 +1 Sol Ring|DSC|1 +1 Talisman of Indulgence|DSC|1 +1 Thought Vessel|DSC|1 +1 Ash Barrens|DSC|1 +1 Blackcleave Cliffs|DSC|1 +1 Bloodfell Caves|DSC|1 +1 Canyon Slough|DSC|1 +1 Command Tower|DSC|1 +1 Dragonskull Summit|DSC|1 +1 Evolving Wilds|DSC|1 +1 Exotic Orchard|DSC|1 +1 Foreboding Ruins|DSC|1 +1 Geothermal Bog|DSC|1 +1 Graven Cairns|DSC|1 +1 Leechridden Swamp|DSC|1 +3 Mountain|DSK|1 +3 Mountain|DSK|2 +2 Mountain|DSK|3 +1 Shadowblood Ridge|DSC|1 +1 Shivan Gorge|DSC|1 +1 Smoldering Marsh|DSC|1 +1 Spinerock Knoll|DSC|1 +1 Sulfurous Springs|DSC|1 +3 Swamp|DSK|1 +3 Swamp|DSK|2 +2 Swamp|DSK|3 +1 Tainted Peak|DSC|1 +1 Temple of Malice|DSC|1 +1 Temple of the False God|DSC|1 +1 Terramorphic Expanse|DSK|1 +1 Witch's Clinic|DSC|1 +[Sideboard] \ No newline at end of file diff --git a/forge-gui/res/quest/commanderprecons/Jump Scare! [DSC] [2024].dck b/forge-gui/res/quest/commanderprecons/Jump Scare! [DSC] [2024].dck new file mode 100644 index 00000000000..8c4f84a6967 --- /dev/null +++ b/forge-gui/res/quest/commanderprecons/Jump Scare! [DSC] [2024].dck @@ -0,0 +1,93 @@ +[metadata] +Name=Jump Scare! [DSC] [2024] +[Commander] +1 Zimone, Mystery Unraveler|DSC|1 +[Main] +1 Aesi, Tyrant of Gyre Strait|DSC|1 +1 Arixmethes, Slumbering Isle|DSC|1 +1 Ashaya, Soul of the Wild|DSC|1 +1 Augur of Autumn|DSC|1 +1 Beanstalk Giant|DSC|1 +1 Body of Knowledge|DSC|1 +1 Citanul Hierophants|DSC|1 +1 Curator Beastie|DSC|1 +1 Deathmist Raptor|DSC|1 +1 Giggling Skitterspike|DSC|1 +1 Glitch Interpreter|DSC|1 +1 Greater Tanuki|DSC|1 +1 Hydra Omnivore|DSC|1 +1 Kefnet the Mindful|DSC|1 +1 Kheru Spellsnatcher|DSC|1 +1 Kianne, Corrupted Memory|DSC|1 +1 Multani, Yavimaya's Avatar|DSC|1 +1 Overgrown Zealot|DSK|1 +1 Rashmi, Eternities Crafter|DSC|1 +1 Sakura-Tribe Elder|DSC|1 +1 Scute Swarm|DSC|1 +1 Shigeki, Jukai Visionary|DSC|1 +1 Shriekwood Devourer|DSC|1 +1 Skaab Ruinator|DSC|1 +1 Tatyova, Benthic Druid|DSC|1 +1 Temur War Shaman|DSC|1 +1 Thunderfoot Baloth|DSC|1 +1 Trygon Predator|DSC|1 +1 Whisperwood Elemental|DSC|1 +1 Worldspine Wurm|DSC|1 +1 Yavimaya Elder|DSC|1 +1 Yedora, Grave Gardener|DSC|1 +1 Beast Within|DSC|1 +1 Biomass Mutation|DSC|1 +1 Cackling Counterpart|DSC|1 +1 Counterspell|DSC|1 +1 Dig Through Time|DSC|1 +1 Eureka Moment|DSC|1 +1 Growth Spiral|DSC|1 +1 Reality Shift|DSC|1 +1 Zimone's Hypothesis|DSC|1 +1 Aether Gale|DSC|1 +1 Cultivate|DSC|1 +1 Disorienting Choice|DSC|1 +1 Explosive Vegetation|DSC|1 +1 Ezuri's Predation|DSC|1 +1 Oversimplify|DSC|1 +1 Overwhelming Stampede|DSC|1 +1 Rampant Growth|DSC|1 +1 Experimental Lab // Staff Room|DSC|1 +1 Growing Dread|DSK|1 +1 Primordial Mist|DSC|1 +1 Retreat to Coralhelm|DSC|1 +1 Sandwurm Convergence|DSC|1 +1 They Came From the Pipes|DSC|1 +1 Trail of Mystery|DSC|1 +1 Wilderness Reclamation|DSC|1 +1 Arcane Signet|DSC|1 +1 Scroll of Fate|DSC|1 +1 Simic Signet|DSC|1 +1 Sol Ring|DSC|1 +1 Ash Barrens|DSC|1 +1 Castle Vantress|DSC|1 +1 Command Tower|DSC|1 +1 Drownyard Temple|DSC|1 +1 Evolving Wilds|DSC|1 +1 Flooded Grove|DSC|1 +3 Forest|DSK|1 +3 Forest|DSK|2 +3 Forest|DSK|3 +1 Hinterland Harbor|DSC|1 +3 Island|DSK|1 +3 Island|DSK|2 +3 Island|DSK|3 +1 Mosswort Bridge|DSC|1 +1 Myriad Landscape|DSC|1 +1 Overflowing Basin|DSC|1 +1 Quandrix Campus|DSC|1 +1 Reliquary Tower|DSC|1 +1 Simic Growth Chamber|DSC|1 +1 Tangled Islet|DSC|1 +1 Temple of Mystery|DSC|1 +1 Temple of the False God|DSC|1 +1 Terramorphic Expanse|DSK|1 +1 Thornwood Falls|DSC|1 +1 Vineglimmer Snarl|DSC|1 +1 Yavimaya Coast|DSC|1 +[Sideboard] \ No newline at end of file diff --git a/forge-gui/res/quest/commanderprecons/Miracle Worker [DSC] [2024].dck b/forge-gui/res/quest/commanderprecons/Miracle Worker [DSC] [2024].dck new file mode 100644 index 00000000000..046c14fe10b --- /dev/null +++ b/forge-gui/res/quest/commanderprecons/Miracle Worker [DSC] [2024].dck @@ -0,0 +1,100 @@ +[metadata] +Name=Miracle Worker [DSC] [2024] +[Commander] +1 Aminatou, Veil Piercer|DSC|1 +[Main] +1 Ancient Cellarspawn|DSC|1 +1 Archetype of Imagination|DSC|1 +1 Arvinox, the Mind Flail|DSC|1 +1 Athreos, Shroud-Veiled|DSC|1 +1 Auramancer|DSC|1 +1 Burnished Hart|DSC|1 +1 Demon of Fate's Design|DSC|1 +1 Doomwake Giant|DSC|1 +1 Dream Eater|DSC|1 +1 Fear of Sleep Paralysis|DSC|1 +1 Mesa Enchantress|DSC|1 +1 Metamorphosis Fanatic|DSC|1 +1 Moon-Blessed Cleric|DSC|1 +1 Nightmare Shepherd|DSC|1 +1 Ondu Spiritdancer|DSC|1 +1 Phenomenon Investigators|DSC|1 +1 Prognostic Sphinx|DSC|1 +1 Soaring Lightbringer|DSC|1 +1 Solemn Simulacrum|DSC|1 +1 Starfield Mystic|DSC|1 +1 The Master of Keys|DSC|1 +1 Verge Rangers|DSC|1 +1 Arcane Denial|DSC|1 +1 Brainstorm|DSC|1 +1 Inkshield|DSC|1 +1 Otherworldly Gaze|DSC|1 +1 Return to Dust|DSC|1 +1 Swords to Plowshares|DSC|1 +1 Telling Time|DSC|1 +1 Thirst for Meaning|DSC|1 +1 Utter End|DSC|1 +1 Aminatou's Augury|DSC|1 +1 Diabolic Vision|DSC|1 +1 Entreat the Angels|DSC|1 +1 Ponder|DSC|1 +1 Portent|DSC|1 +1 Read the Bones|DSC|1 +1 Redress Fate|DSC|1 +1 Terminus|DSC|1 +1 Time Wipe|DSC|1 +1 Bottomless Pool // Locker Room|DSK|1 +1 Cast Out|DSC|1 +1 Cramped Vents // Access Maze|DSC|1 +1 Extravagant Replication|DSC|1 +1 Life Insurance|DSC|1 +1 Mirrormade|DSC|1 +1 Monologue Tax|DSC|1 +1 One with the Multiverse|DSC|1 +1 Secret Arcade // Dusty Parlor|DSC|1 +1 Shark Typhoon|DSC|1 +1 Sigil of the Empty Throne|DSC|1 +1 Sphere of Safety|DSC|1 +1 Spirit-Sister's Call|DSC|1 +1 The Eldest Reborn|DSC|1 +1 Timely Ward|DSC|1 +1 Arcane Signet|DSC|1 +1 Azorius Signet|DSC|1 +1 Brainstone|DSC|1 +1 Commander's Sphere|DSC|1 +1 Mind Stone|DSC|1 +1 Orzhov Signet|DSC|1 +1 Sol Ring|DSC|1 +1 Adarkar Wastes|DSC|1 +1 Arcane Sanctum|DSC|1 +1 Ash Barrens|DSC|1 +1 Azorius Chancery|DSC|1 +1 Bojuka Bog|DSC|1 +1 Caves of Koilos|DSC|1 +1 Command Tower|DSC|1 +1 Dimir Aqueduct|DSC|1 +1 Evolving Wilds|DSC|1 +1 Halimar Depths|DSC|1 +1 Hall of Heliod's Generosity|DSC|1 +1 Obscura Storefront|DSC|1 +1 Orzhov Basilica|DSC|1 +1 Tainted Field|DSC|1 +1 Tainted Isle|DSC|1 +1 Temple of Deceit|DSC|1 +1 Temple of Enlightenment|DSC|1 +1 Temple of Silence|DSC|1 +1 Terramorphic Expanse|DSK|1 +1 Thriving Heath|DSC|1 +1 Thriving Isle|DSC|1 +1 Thriving Moor|DSC|1 +1 Underground River|DSC|1 +2 Island|DSK|1 +1 Island|DSK|2 +1 Island|DSK|3 +2 Plains|DSK|1 +2 Plains|DSK|2 +1 Plains|DSK|3 +2 Swamp|DSK|1 +2 Swamp|DSK|2 +1 Swamp|DSK|3 +[Sideboard] \ No newline at end of file From fa538bd5c90dc5d5bece28767990fbd0a451e38b Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 15 Oct 2024 01:07:52 +0000 Subject: [PATCH 52/91] [maven-release-plugin] prepare release forge-1.6.65 --- forge-adventure/pom.xml | 2 +- forge-ai/pom.xml | 2 +- forge-core/pom.xml | 2 +- forge-game/pom.xml | 2 +- forge-gui-android/pom.xml | 2 +- forge-gui-desktop/pom.xml | 2 +- forge-gui-ios/pom.xml | 2 +- forge-gui-mobile-dev/pom.xml | 2 +- forge-gui-mobile/pom.xml | 2 +- forge-gui/pom.xml | 2 +- forge-lda/pom.xml | 2 +- pom.xml | 4 ++-- 12 files changed, 13 insertions(+), 13 deletions(-) diff --git a/forge-adventure/pom.xml b/forge-adventure/pom.xml index 50623a0175c..e38d56a3f8c 100644 --- a/forge-adventure/pom.xml +++ b/forge-adventure/pom.xml @@ -3,7 +3,7 @@ forge forge - 1.6.65-SNAPSHOT + 1.6.65 4.0.0 diff --git a/forge-ai/pom.xml b/forge-ai/pom.xml index 9cae8944433..7a31fa43016 100644 --- a/forge-ai/pom.xml +++ b/forge-ai/pom.xml @@ -6,7 +6,7 @@ forge forge - 1.6.65-SNAPSHOT + 1.6.65 forge-ai diff --git a/forge-core/pom.xml b/forge-core/pom.xml index 7499150ba81..ab569e83cd3 100644 --- a/forge-core/pom.xml +++ b/forge-core/pom.xml @@ -6,7 +6,7 @@ forge forge - 1.6.65-SNAPSHOT + 1.6.65 forge-core diff --git a/forge-game/pom.xml b/forge-game/pom.xml index 653a151451c..ab87591e91a 100644 --- a/forge-game/pom.xml +++ b/forge-game/pom.xml @@ -6,7 +6,7 @@ forge forge - 1.6.65-SNAPSHOT + 1.6.65 forge-game diff --git a/forge-gui-android/pom.xml b/forge-gui-android/pom.xml index 30453ab40ca..34a0f0ed809 100644 --- a/forge-gui-android/pom.xml +++ b/forge-gui-android/pom.xml @@ -20,7 +20,7 @@ forge forge - 1.6.65-SNAPSHOT + 1.6.65 forge-gui-android diff --git a/forge-gui-desktop/pom.xml b/forge-gui-desktop/pom.xml index a4d1522a3e7..9ff1765ae33 100644 --- a/forge-gui-desktop/pom.xml +++ b/forge-gui-desktop/pom.xml @@ -4,7 +4,7 @@ forge forge - 1.6.65-SNAPSHOT + 1.6.65 forge-gui-desktop diff --git a/forge-gui-ios/pom.xml b/forge-gui-ios/pom.xml index 2dac4a6805e..29af591791b 100644 --- a/forge-gui-ios/pom.xml +++ b/forge-gui-ios/pom.xml @@ -12,7 +12,7 @@ forge forge - 1.6.65-SNAPSHOT + 1.6.65 forge-gui-ios diff --git a/forge-gui-mobile-dev/pom.xml b/forge-gui-mobile-dev/pom.xml index 97bcf1d68bb..5ae84b538e2 100644 --- a/forge-gui-mobile-dev/pom.xml +++ b/forge-gui-mobile-dev/pom.xml @@ -4,7 +4,7 @@ forge forge - 1.6.65-SNAPSHOT + 1.6.65 forge-gui-mobile-dev diff --git a/forge-gui-mobile/pom.xml b/forge-gui-mobile/pom.xml index 6a177762936..c359af8c0bf 100644 --- a/forge-gui-mobile/pom.xml +++ b/forge-gui-mobile/pom.xml @@ -4,7 +4,7 @@ forge forge - 1.6.65-SNAPSHOT + 1.6.65 forge-gui-mobile diff --git a/forge-gui/pom.xml b/forge-gui/pom.xml index 50a9263501f..87c23526213 100644 --- a/forge-gui/pom.xml +++ b/forge-gui/pom.xml @@ -4,7 +4,7 @@ forge forge - 1.6.65-SNAPSHOT + 1.6.65 forge-gui diff --git a/forge-lda/pom.xml b/forge-lda/pom.xml index f06ef8734a7..b776a12a4c1 100644 --- a/forge-lda/pom.xml +++ b/forge-lda/pom.xml @@ -4,7 +4,7 @@ forge forge - 1.6.65-SNAPSHOT + 1.6.65 forge-lda diff --git a/pom.xml b/pom.xml index 993a31fa14f..fd2ef333be3 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ forge pom Forge Parent - 1.6.65-SNAPSHOT + 1.6.65 Forge lets you play the card game Magic: The Gathering against a computer opponent using all of the rules. @@ -37,7 +37,7 @@ scm:git:https://github.com/Card-Forge/forge.git scm:git:https://github.com/Card-Forge/forge.git - HEAD + forge-1.6.65 From d366bf8ffc49fb4307ef762b66e281c929788780 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 15 Oct 2024 01:07:54 +0000 Subject: [PATCH 53/91] [maven-release-plugin] prepare for next development iteration --- forge-adventure/pom.xml | 2 +- forge-ai/pom.xml | 2 +- forge-core/pom.xml | 2 +- forge-game/pom.xml | 2 +- forge-gui-android/pom.xml | 2 +- forge-gui-desktop/pom.xml | 2 +- forge-gui-ios/pom.xml | 2 +- forge-gui-mobile-dev/pom.xml | 2 +- forge-gui-mobile/pom.xml | 2 +- forge-gui/pom.xml | 2 +- forge-lda/pom.xml | 2 +- pom.xml | 4 ++-- 12 files changed, 13 insertions(+), 13 deletions(-) diff --git a/forge-adventure/pom.xml b/forge-adventure/pom.xml index e38d56a3f8c..1cdc2f9b211 100644 --- a/forge-adventure/pom.xml +++ b/forge-adventure/pom.xml @@ -3,7 +3,7 @@ forge forge - 1.6.65 + 1.6.66-SNAPSHOT 4.0.0 diff --git a/forge-ai/pom.xml b/forge-ai/pom.xml index 7a31fa43016..8b2743db97b 100644 --- a/forge-ai/pom.xml +++ b/forge-ai/pom.xml @@ -6,7 +6,7 @@ forge forge - 1.6.65 + 1.6.66-SNAPSHOT forge-ai diff --git a/forge-core/pom.xml b/forge-core/pom.xml index ab569e83cd3..7d1ec0902c0 100644 --- a/forge-core/pom.xml +++ b/forge-core/pom.xml @@ -6,7 +6,7 @@ forge forge - 1.6.65 + 1.6.66-SNAPSHOT forge-core diff --git a/forge-game/pom.xml b/forge-game/pom.xml index ab87591e91a..4bf1976d31e 100644 --- a/forge-game/pom.xml +++ b/forge-game/pom.xml @@ -6,7 +6,7 @@ forge forge - 1.6.65 + 1.6.66-SNAPSHOT forge-game diff --git a/forge-gui-android/pom.xml b/forge-gui-android/pom.xml index 34a0f0ed809..ecf3f130119 100644 --- a/forge-gui-android/pom.xml +++ b/forge-gui-android/pom.xml @@ -20,7 +20,7 @@ forge forge - 1.6.65 + 1.6.66-SNAPSHOT forge-gui-android diff --git a/forge-gui-desktop/pom.xml b/forge-gui-desktop/pom.xml index 9ff1765ae33..ac16fc3215c 100644 --- a/forge-gui-desktop/pom.xml +++ b/forge-gui-desktop/pom.xml @@ -4,7 +4,7 @@ forge forge - 1.6.65 + 1.6.66-SNAPSHOT forge-gui-desktop diff --git a/forge-gui-ios/pom.xml b/forge-gui-ios/pom.xml index 29af591791b..dcac7acc2ba 100644 --- a/forge-gui-ios/pom.xml +++ b/forge-gui-ios/pom.xml @@ -12,7 +12,7 @@ forge forge - 1.6.65 + 1.6.66-SNAPSHOT forge-gui-ios diff --git a/forge-gui-mobile-dev/pom.xml b/forge-gui-mobile-dev/pom.xml index 5ae84b538e2..362dfd6860f 100644 --- a/forge-gui-mobile-dev/pom.xml +++ b/forge-gui-mobile-dev/pom.xml @@ -4,7 +4,7 @@ forge forge - 1.6.65 + 1.6.66-SNAPSHOT forge-gui-mobile-dev diff --git a/forge-gui-mobile/pom.xml b/forge-gui-mobile/pom.xml index c359af8c0bf..52bb5266678 100644 --- a/forge-gui-mobile/pom.xml +++ b/forge-gui-mobile/pom.xml @@ -4,7 +4,7 @@ forge forge - 1.6.65 + 1.6.66-SNAPSHOT forge-gui-mobile diff --git a/forge-gui/pom.xml b/forge-gui/pom.xml index 87c23526213..9fd725c3278 100644 --- a/forge-gui/pom.xml +++ b/forge-gui/pom.xml @@ -4,7 +4,7 @@ forge forge - 1.6.65 + 1.6.66-SNAPSHOT forge-gui diff --git a/forge-lda/pom.xml b/forge-lda/pom.xml index b776a12a4c1..133db8447af 100644 --- a/forge-lda/pom.xml +++ b/forge-lda/pom.xml @@ -4,7 +4,7 @@ forge forge - 1.6.65 + 1.6.66-SNAPSHOT forge-lda diff --git a/pom.xml b/pom.xml index fd2ef333be3..4a92e6929c3 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ forge pom Forge Parent - 1.6.65 + 1.6.66-SNAPSHOT Forge lets you play the card game Magic: The Gathering against a computer opponent using all of the rules. @@ -37,7 +37,7 @@ scm:git:https://github.com/Card-Forge/forge.git scm:git:https://github.com/Card-Forge/forge.git - forge-1.6.65 + HEAD From 0475f4bafaf367f41a613350678f634c6c2f1961 Mon Sep 17 00:00:00 2001 From: Chris H Date: Mon, 14 Oct 2024 21:47:36 -0400 Subject: [PATCH 54/91] Manually update files that need to be updated --- forge-gui-android/AndroidManifest.xml | 4 ++-- forge-gui-android/pom.xml | 2 +- forge-gui-desktop/pom.xml | 2 +- forge-gui-mobile/src/forge/Forge.java | 8 ++------ 4 files changed, 6 insertions(+), 10 deletions(-) diff --git a/forge-gui-android/AndroidManifest.xml b/forge-gui-android/AndroidManifest.xml index b493a8c32d9..68a2032f74a 100644 --- a/forge-gui-android/AndroidManifest.xml +++ b/forge-gui-android/AndroidManifest.xml @@ -1,8 +1,8 @@ + android:versionCode="106660000" + android:versionName="1.6.66" > jar -Xms1024m -Xmx1536m - 1.6.65-SNAPSHOT + 1.6.66-SNAPSHOT keystore alias storepass diff --git a/forge-gui-desktop/pom.xml b/forge-gui-desktop/pom.xml index ac16fc3215c..5ac539ecf78 100644 --- a/forge-gui-desktop/pom.xml +++ b/forge-gui-desktop/pom.xml @@ -118,7 +118,7 @@ - forge-1.6.64 + forge-1.6.65 ../forge-gui/release-files/CHANGES.txt Date: Mon, 14 Oct 2024 21:56:30 -0400 Subject: [PATCH 55/91] Fixed non-cards for rarity sorting import --- .../src/forge/adventure/scene/RewardScene.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/forge-gui-mobile/src/forge/adventure/scene/RewardScene.java b/forge-gui-mobile/src/forge/adventure/scene/RewardScene.java index 80098a750fe..278e59faeba 100644 --- a/forge-gui-mobile/src/forge/adventure/scene/RewardScene.java +++ b/forge-gui-mobile/src/forge/adventure/scene/RewardScene.java @@ -26,6 +26,7 @@ import forge.item.PaperCard; import forge.sound.SoundEffectType; import forge.sound.SoundSystem; import forge.util.ItemPool; +import java.util.Comparator; /** * Displays the rewards of a fight or a treasure @@ -318,6 +319,14 @@ public class RewardScene extends UIScene { } public void loadRewards(Array newRewards, Type type, ShopActor shopActor) { + // Sort the rewards based on the rarity of the card inside the reward/ lets give items rarity + newRewards.sort(Comparator.comparing(reward -> { + if (reward.getCard() != null && reward.getCard().getRarity() != null) { + return reward.getCard().getRarity().ordinal(); + } + // Return a default value or handle the case where rarity is not present + return Integer.MAX_VALUE; // Assuming higher values mean less priority in sorting + })); clearSelectable(); this.type = type; doneClicked = false; From 1466346d724eb56d6bd04934635e96c6cebf23fe Mon Sep 17 00:00:00 2001 From: Agetian Date: Tue, 15 Oct 2024 09:50:38 +0300 Subject: [PATCH 56/91] - Add DSK alt wincon achievement by Marek. (#6331) --- forge-gui/res/lists/altwin-achievements.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/forge-gui/res/lists/altwin-achievements.txt b/forge-gui/res/lists/altwin-achievements.txt index 095fd7465ac..61bd6dff6a5 100644 --- a/forge-gui/res/lists/altwin-achievements.txt +++ b/forge-gui/res/lists/altwin-achievements.txt @@ -33,6 +33,7 @@ Mirrodin Besieged|The War's End|Spoiler alert: Phyrexia won. Mortal Combat|The Boneyard|So peaceful... Near-Death Experience|The Edge|Phew... I thought I was going to die! Phage the Untouchable|The Untouchable|None are immune to her deadly touch! +Promising Stairs|Fully Explored|That's just good cardio. Ramses, Assassin Lord|The Precise Strike|Break one gear and the whole machine stops. You are that gear. Revel in Riches|The Dead Man's Chest|Yo-ho-ho, and a bottle of rum! Simic Ascendancy|The Ascension|As you can see, we are going through a period of unprecedented growth. From 8f7b782d6b97fae4a82fe377ed46150ec769bea8 Mon Sep 17 00:00:00 2001 From: tool4ever Date: Tue, 15 Oct 2024 10:47:26 +0000 Subject: [PATCH 57/91] Update experimental_lab_staff_room.txt --- forge-gui/res/cardsfolder/e/experimental_lab_staff_room.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui/res/cardsfolder/e/experimental_lab_staff_room.txt b/forge-gui/res/cardsfolder/e/experimental_lab_staff_room.txt index afad64ead2b..05e81708bcd 100644 --- a/forge-gui/res/cardsfolder/e/experimental_lab_staff_room.txt +++ b/forge-gui/res/cardsfolder/e/experimental_lab_staff_room.txt @@ -13,7 +13,7 @@ ALTERNATE Name:Staff Room ManaCost:2 G Types:Enchantment Room -T:Mode$ DamageDone | ValidSource$ Creature.YouCtrl | ValidTgts$ Player | CombatDamage$ True | Execute$ TrigChoose | TriggerDescription$ Whenever a creature you control deals combat damage to a player, turn that creature face up or put a +1/+1 counter on it. +T:Mode$ DamageDone | ValidSource$ Creature.YouCtrl | ValidTgts$ Player | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ TrigChoose | TriggerDescription$ Whenever a creature you control deals combat damage to a player, turn that creature face up or put a +1/+1 counter on it. SVar:TrigChoose:DB$ GenericChoice | Choices$ DBPutCounter,DBTurnFaceUp SVar:DBTurnFaceUp:DB$ SetState | Defined$ TriggeredSourceLKICopy | Mode$ TurnFaceUp | IsPresent$ Card.canBeTurnedFaceUp+faceDown | PresentDefined$ TriggeredSourceLKICopy | SpellDescription$ Turn it face up SVar:DBPutCounter:DB$ PutCounter | Defined$ TriggeredSourceLKICopy | CounterType$ P1P1 | CounterNum$ 1 | IsPresent$ Card.canReceiveCounters P1P1 | PresentDefined$ TriggeredSourceLKICopy | SpellDescription$ Put a +1/+1 counter on it From ce70a3949f676241b46a581ace83cda1fcfc152e Mon Sep 17 00:00:00 2001 From: tool4ever Date: Tue, 15 Oct 2024 10:51:57 +0000 Subject: [PATCH 58/91] Update head_games.txt --- forge-gui/res/cardsfolder/h/head_games.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui/res/cardsfolder/h/head_games.txt b/forge-gui/res/cardsfolder/h/head_games.txt index 092ce08f010..9c49430a57d 100644 --- a/forge-gui/res/cardsfolder/h/head_games.txt +++ b/forge-gui/res/cardsfolder/h/head_games.txt @@ -2,7 +2,7 @@ Name:Head Games ManaCost:3 B B Types:Sorcery A:SP$ ChangeZoneAll | ValidTgts$ Opponent | Origin$ Hand | Destination$ Library | ChangeType$ Card | RememberChanged$ True | IsCurse$ True | SubAbility$ HeadChange | SpellDescription$ Target opponent puts the cards from their hand on top of their library. Search that player's library for that many cards. The player puts those cards into their hand, then shuffles. -SVar:HeadChange:DB$ ChangeZone | DefinedPlayer$ Targeted | Origin$ Library | Destination$ Hand | ChangeNum$ X | ChangeType$ Card | Chooser$ You | SubAbility$ DBCleanup +SVar:HeadChange:DB$ ChangeZone | DefinedPlayer$ Targeted | Origin$ Library | Destination$ Hand | ChangeNum$ X | ChangeType$ Card | Chooser$ You | Mandatory$ True | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Remembered$Amount AI:RemoveDeck:All From 83dd00e294e21e74b24b11dddda9bdcd3159f179 Mon Sep 17 00:00:00 2001 From: tool4ever Date: Tue, 15 Oct 2024 12:41:39 +0000 Subject: [PATCH 59/91] Update furious_spinesplitter.txt Closes #6332 --- forge-gui/res/cardsfolder/f/furious_spinesplitter.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui/res/cardsfolder/f/furious_spinesplitter.txt b/forge-gui/res/cardsfolder/f/furious_spinesplitter.txt index b9d77190ffa..a8eac1f3084 100644 --- a/forge-gui/res/cardsfolder/f/furious_spinesplitter.txt +++ b/forge-gui/res/cardsfolder/f/furious_spinesplitter.txt @@ -3,7 +3,7 @@ ManaCost:2 RG RG Types:Creature Ogre Warrior PT:3/3 K:Trample -T:Mode$ Phase | Phase$ End of Turn | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ At the beginning of your end step, put a +1/+1 counter on CARDNAME for each opponent that was dealt damage this turn. +T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ At the beginning of your end step, put a +1/+1 counter on CARDNAME for each opponent that was dealt damage this turn. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ X SVar:X:PlayerCountRegisteredOpponents$HasPropertywasDealtDamageThisTurn DeckHas:Ability$Counters From 0a08650393d83941d1e419377d3ce2001773fd1c Mon Sep 17 00:00:00 2001 From: Meta Date: Tue, 15 Oct 2024 11:26:00 -0400 Subject: [PATCH 60/91] Booster QoL Remove open confirmation and disable leaving inventory scene when opening boosters. Change Booster Pack Inventory Name Old: Booster Pack: WAR New: War of the Sparks Booster Final Tweak --- .../src/forge/adventure/scene/InventoryScene.java | 14 +++----------- .../adventure/util/AdventureEventController.java | 4 +++- 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/forge-gui-mobile/src/forge/adventure/scene/InventoryScene.java b/forge-gui-mobile/src/forge/adventure/scene/InventoryScene.java index b7651596470..7a1f51ab037 100644 --- a/forge-gui-mobile/src/forge/adventure/scene/InventoryScene.java +++ b/forge-gui-mobile/src/forge/adventure/scene/InventoryScene.java @@ -180,7 +180,7 @@ public class InventoryScene extends UIScene { Deck data = (deckLocation.get(selected)); if (data == null) return; - done(); + //done(); setSelected(null); RewardScene.instance().loadRewards(data, RewardScene.Type.Loot, null, data.getTags().contains("noSell")); Forge.switchScene(RewardScene.instance()); @@ -206,15 +206,7 @@ public class InventoryScene extends UIScene { Deck data = deckLocation.get(selected); if (data == null) return; - if (openDialog == null) { - openDialog = createGenericDialog("", null, Forge.getLocalizer().getMessage("lblYes"), - Forge.getLocalizer().getMessage("lblNo"), () -> { - this.openBooster(); - removeDialog(); - }, this::removeDialog); - openDialog.getContentTable().add(Controls.newTextraLabel("Open Booster Pack?")); - } - showDialog(openDialog); + this.openBooster(); } } @@ -277,7 +269,7 @@ public class InventoryScene extends UIScene { useButton.layout(); equipButton.setDisabled(true); - itemDescription.setText("Card Pack - " + data.getName() + "\n[%98]" + (data.getComment() == null?"":data.getComment()+" - ") + data.getAllCardsInASinglePool().countAll() + " cards"); + itemDescription.setText(data.getName() + "\n[%98]" + (data.getComment() == null?"":data.getComment()+" - ") + data.getAllCardsInASinglePool().countAll() + " cards"); } diff --git a/forge-gui-mobile/src/forge/adventure/util/AdventureEventController.java b/forge-gui-mobile/src/forge/adventure/util/AdventureEventController.java index 7e04f0b298c..df9ba97a9f5 100644 --- a/forge-gui-mobile/src/forge/adventure/util/AdventureEventController.java +++ b/forge-gui-mobile/src/forge/adventure/util/AdventureEventController.java @@ -11,6 +11,7 @@ import forge.item.SealedTemplate; import forge.item.generation.BoosterGenerator; import forge.item.generation.UnOpenedProduct; import forge.model.CardBlock; +import forge.model.FModel; import forge.util.Aggregates; import java.io.Serializable; @@ -136,7 +137,8 @@ public class AdventureEventController implements Serializable { List cards = BoosterGenerator.getBoosterPack(StaticData.instance().getBoosters().get(setCode)); Deck output = new Deck(); output.getMain().add(cards); - output.setName("Booster Pack: " + setCode); + String editionName = FModel.getMagicDb().getEditions().get(setCode).getName(); + output.setName(editionName + " Booster"); output.setComment(setCode); return output; } From 5f53b8995e530b58b3ea3973b8843b244f02ca5a Mon Sep 17 00:00:00 2001 From: Chris H Date: Tue, 15 Oct 2024 20:27:08 -0400 Subject: [PATCH 61/91] Update tunnel_surveyor.txt --- forge-gui/res/cardsfolder/t/tunnel_surveyor.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui/res/cardsfolder/t/tunnel_surveyor.txt b/forge-gui/res/cardsfolder/t/tunnel_surveyor.txt index 08350413500..848fe39a9f6 100644 --- a/forge-gui/res/cardsfolder/t/tunnel_surveyor.txt +++ b/forge-gui/res/cardsfolder/t/tunnel_surveyor.txt @@ -1,7 +1,7 @@ Name:Tunnel Surveyor ManaCost:2 U Types:Creature Human Detective -PT:3/3 +PT:2/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME enters, create a 1/1 white Glimmer enchantment creature token. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ w_1_1_e_glimmer | TokenOwner$ You Oracle:When Tunnel Surveyor enters, create a 1/1 white Glimmer enchantment creature token. From d65dedb92a8c386c523ba2a63d12dfb0ef027ae3 Mon Sep 17 00:00:00 2001 From: Fulgur14 <54345051+Fulgur14@users.noreply.github.com> Date: Wed, 16 Oct 2024 08:32:43 +0200 Subject: [PATCH 62/91] Update demonic_covenant.txt (#6355) --- forge-gui/res/cardsfolder/d/demonic_covenant.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui/res/cardsfolder/d/demonic_covenant.txt b/forge-gui/res/cardsfolder/d/demonic_covenant.txt index 42e434af31d..beb5e4d9ace 100644 --- a/forge-gui/res/cardsfolder/d/demonic_covenant.txt +++ b/forge-gui/res/cardsfolder/d/demonic_covenant.txt @@ -4,7 +4,7 @@ Types:Kindred Enchantment Demon T:Mode$ AttackersDeclaredOneTarget | AttackedTarget$ Player | ValidAttackers$ Creature.Demon+YouCtrl | TriggerZones$ Battlefield | Execute$ TrigDrawAndDamage | TriggerDescription$ Whenever one or more Demons you control attack a player, you draw a card and lose 1 life. SVar:TrigDrawAndDamage:DB$ Draw | SubAbility$ DBLoseLife SVar:DBLoseLife:DB$ LoseLife | LifeAmount$ 1 -T:Mode$ Phase | Phase$ End of Turn | TriggerZones$ Battlefield | Execute$ TrigCreateAndMill | TriggerDescription$ At the beginning of your end step, create a 5/5 black Demon creature token with flying, then mill two cards. If two cards that share all their card types were milled this way, sacrifice CARDNAME. +T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigCreateAndMill | TriggerDescription$ At the beginning of your end step, create a 5/5 black Demon creature token with flying, then mill two cards. If two cards that share all their card types were milled this way, sacrifice CARDNAME. SVar:TrigCreateAndMill:DB$ Token | TokenAmount$ 1 | TokenScript$ b_5_5_demon_flying | TokenOwner$ You | SubAbility$ DBMill SVar:DBMill:DB$ Mill | NumCards$ 2 | RememberMilled$ True | ShowMilledCards$ True | SubAbility$ DBSacrifice SVar:DBSacrifice:DB$ Sacrifice | SacValid$ Self | ShowSacrificedCards$ True | ConditionCheckSVar$ MilledSharesAllTypes | ConditionSVarCompare$ GE2 | SubAbility$ DBCleanup From 92ee722db653a45d61412b7e0333a69bcd0b3332 Mon Sep 17 00:00:00 2001 From: Churrufli Date: Wed, 16 Oct 2024 11:12:14 +0200 Subject: [PATCH 63/91] Net Decks Archive Updates (Standard, Modern, Legacy, Vintage, Pioneer, Pauper) --- .../res/lists/net-decks-archive-legacy.txt | 177 ++++++++++++ .../res/lists/net-decks-archive-modern.txt | 262 ++++++++++++++++++ .../res/lists/net-decks-archive-pauper.txt | 146 ++++++++++ .../res/lists/net-decks-archive-pioneer.txt | 239 ++++++++++++++++ .../res/lists/net-decks-archive-standard.txt | 149 ++++++++++ .../res/lists/net-decks-archive-vintage.txt | 155 +++++++++++ 6 files changed, 1128 insertions(+) diff --git a/forge-gui/res/lists/net-decks-archive-legacy.txt b/forge-gui/res/lists/net-decks-archive-legacy.txt index 3caf6bbb105..0f9bc916179 100644 --- a/forge-gui/res/lists/net-decks-archive-legacy.txt +++ b/forge-gui/res/lists/net-decks-archive-legacy.txt @@ -3306,3 +3306,180 @@ 2024-07-06 8241 Legacy League (29 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-06-8241-legacy-league.zip 2024-07-07 12655606 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-07-12655606-legacy-challenge-32.zip 2024-07-07 8241 Legacy League (7 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-07-8241-legacy-league.zip + +2024-07-07 12655534 Legacy Showcase Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-07-12655534-legacy-showcase-challenge.zip +2024-07-08 12655637 Legacy Last Chance (30 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-08-12655637-legacy-last-chance.zip +2024-07-08 12655640 Legacy Last Chance (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-08-12655640-legacy-last-chance.zip +2024-07-08 8241 Legacy League (15 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-08-8241-legacy-league.zip +2024-07-09 12655648 Legacy Last Chance (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-09-12655648-legacy-last-chance.zip +2024-07-09 8241 Legacy League (19 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-09-8241-legacy-league.zip +2024-07-10 12655652 Legacy Last Chance (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-10-12655652-legacy-last-chance.zip +2024-07-10 12655653 Legacy Last Chance (31 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-10-12655653-legacy-last-chance.zip +2024-07-10 12658090 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-10-12658090-legacy-challenge-32.zip +2024-07-10 8241 Legacy League (17 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-10-8241-legacy-league.zip +2024-07-11 8241 Legacy League (21 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-11-8241-legacy-league.zip +2024-07-12 8241 Legacy League (17 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-12-8241-legacy-league.zip +2024-07-13 12658127 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-13-12658127-legacy-challenge-32.zip +2024-07-13 12658135 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-13-12658135-legacy-challenge-32.zip +2024-07-13 8241 Legacy League (22 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-13-8241-legacy-league.zip +2024-07-14 12658143 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-14-12658143-legacy-challenge-32.zip +2024-07-14 12658149 Legacy Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-14-12658149-legacy-challenge-64.zip +2024-07-14 8241 Legacy League (21 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-14-8241-legacy-league.zip +2024-07-15 8241 Legacy League (19 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-15-8241-legacy-league.zip +2024-07-16 8241 Legacy League (19 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-16-8241-legacy-league.zip +2024-07-17 12661178 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-17-12661178-legacy-challenge-32.zip +2024-07-17 8241 Legacy League (15 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-17-8241-legacy-league.zip +2024-07-18 8241 Legacy League (22 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-18-8241-legacy-league.zip +2024-07-19 8241 Legacy League (17 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-19-8241-legacy-league.zip +2024-07-20 12661627 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-20-12661627-legacy-challenge-32.zip +2024-07-20 12661635 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-20-12661635-legacy-challenge-32.zip +2024-07-20 8241 Legacy League (18 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-20-8241-legacy-league.zip +2024-07-21 12661595 Legacy Showcase Qualifier (30 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-21-12661595-legacy-showcase-qualifier.zip +2024-07-21 12661643 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-21-12661643-legacy-challenge-32.zip +2024-07-21 12661649 Legacy Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-21-12661649-legacy-challenge-64.zip +2024-07-21 8241 Legacy League (21 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-21-8241-legacy-league.zip +2024-07-22 8241 Legacy League (21 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-22-8241-legacy-league.zip +2024-07-23 8241 Legacy League (22 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-23-8241-legacy-league.zip +2024-07-24 12663233 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-24-12663233-legacy-challenge-32.zip +2024-07-24 8241 Legacy League (14 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-24-8241-legacy-league.zip +2024-07-25 8241 Legacy League (23 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-25-8241-legacy-league.zip +2024-07-26 8241 Legacy League (18 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-26-8241-legacy-league.zip +2024-07-27 12663270 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-27-12663270-legacy-challenge-32.zip +2024-07-27 12663278 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-27-12663278-legacy-challenge-32.zip +2024-07-27 8241 Legacy League (24 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-27-8241-legacy-league.zip +2024-07-28 12663286 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-28-12663286-legacy-challenge-32.zip +2024-07-28 12663292 Legacy Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-28-12663292-legacy-challenge-64.zip +2024-07-28 8241 Legacy League (20 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-28-8241-legacy-league.zip +2024-07-29 8241 Legacy League (18 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-29-8241-legacy-league.zip +2024-07-30 8241 Legacy League (24 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-30-8241-legacy-league.zip +2024-07-30 8362 Legacy League (1 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-30-8362-legacy-league.zip +2024-07-31 12666521 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-31-12666521-legacy-challenge-32.zip +2024-07-31 8362 Legacy League (18 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-07-31-8362-legacy-league.zip +2024-08-01 8362 Legacy League (19 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-01-8362-legacy-league.zip +2024-08-02 8362 Legacy League (15 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-02-8362-legacy-league.zip +2024-08-03 12666558 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-03-12666558-legacy-challenge-32.zip +2024-08-03 12666566 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-03-12666566-legacy-challenge-32.zip +2024-08-03 8362 Legacy League (15 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-03-8362-legacy-league.zip +2024-08-04 12666574 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-04-12666574-legacy-challenge-32.zip +2024-08-04 12666580 Legacy Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-04-12666580-legacy-challenge-64.zip +2024-08-04 8362 Legacy League (24 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-04-8362-legacy-league.zip +2024-08-05 8362 Legacy League (26 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-05-8362-legacy-league.zip +2024-08-06 8362 Legacy League (20 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-06-8362-legacy-league.zip +2024-08-07 12670609 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-07-12670609-legacy-challenge-32.zip +2024-08-07 8362 Legacy League (23 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-07-8362-legacy-league.zip +2024-08-08 8362 Legacy League (18 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-08-8362-legacy-league.zip +2024-08-09 8362 Legacy League (16 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-09-8362-legacy-league.zip +2024-08-10 12670646 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-10-12670646-legacy-challenge-32.zip +2024-08-10 12670654 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-10-12670654-legacy-challenge-32.zip +2024-08-10 8362 Legacy League (19 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-10-8362-legacy-league.zip +2024-08-11 12670662 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-11-12670662-legacy-challenge-32.zip +2024-08-11 8362 Legacy League (21 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-11-8362-legacy-league.zip +2024-08-12 8362 Legacy League (24 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-12-8362-legacy-league.zip +2024-08-13 8362 Legacy League (17 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-13-8362-legacy-league.zip +2024-08-14 12674596 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-14-12674596-legacy-challenge-32.zip +2024-08-14 8362 Legacy League (24 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-14-8362-legacy-league.zip +2024-08-15 8362 Legacy League (22 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-15-8362-legacy-league.zip +2024-08-16 8362 Legacy League (13 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-16-8362-legacy-league.zip +2024-08-17 12674633 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-17-12674633-legacy-challenge-32.zip +2024-08-17 12674645 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-17-12674645-legacy-challenge-32.zip +2024-08-17 8362 Legacy League (20 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-17-8362-legacy-league.zip +2024-08-18 12674648 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-18-12674648-legacy-challenge-32.zip +2024-08-18 8362 Legacy League (20 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-18-8362-legacy-league.zip +2024-08-19 8362 Legacy League (19 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-19-8362-legacy-league.zip +2024-08-20 8362 Legacy League (20 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-20-8362-legacy-league.zip +2024-08-21 12676100 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-21-12676100-legacy-challenge-32.zip +2024-08-21 8362 Legacy League (20 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-21-8362-legacy-league.zip +2024-08-22 8362 Legacy League (15 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-22-8362-legacy-league.zip +2024-08-23 8362 Legacy League (17 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-23-8362-legacy-league.zip +2024-08-24 12676137 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-24-12676137-legacy-challenge-32.zip +2024-08-24 12676145 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-24-12676145-legacy-challenge-32.zip +2024-08-24 8362 Legacy League (18 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-24-8362-legacy-league.zip +2024-08-25 12676096 Legacy Showcase Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-25-12676096-legacy-showcase-challenge.zip +2024-08-25 12676152 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-25-12676152-legacy-challenge-32.zip +2024-08-25 8362 Legacy League (19 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-25-8362-legacy-league.zip +2024-08-26 8362 Legacy League (18 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-26-8362-legacy-league.zip +2024-08-27 8362 Legacy League (23 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-27-8362-legacy-league.zip +2024-08-28 12678531 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-28-12678531-legacy-challenge-32.zip +2024-08-28 8362 Legacy League (31 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-28-8362-legacy-league.zip +2024-08-29 12676137 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-29-12676137-legacy-challenge-32.zip +2024-08-29 8362 Legacy League (18 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-29-8362-legacy-league.zip +2024-08-30 8362 Legacy League (23 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-30-8362-legacy-league.zip +2024-08-31 12678568 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-31-12678568-legacy-challenge-32.zip +2024-08-31 12678576 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-31-12678576-legacy-challenge-32.zip +2024-08-31 8362 Legacy League (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-08-31-8362-legacy-league.zip +2024-09-01 12678584 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-01-12678584-legacy-challenge-32.zip +2024-09-01 12678590 Legacy Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-01-12678590-legacy-challenge-64.zip +2024-09-01 8362 Legacy League (20 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-01-8362-legacy-league.zip +2024-09-02 8362 Legacy League (25 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-02-8362-legacy-league.zip +2024-09-03 8362 Legacy League (19 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-03-8362-legacy-league.zip +2024-09-04 12682627 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-04-12682627-legacy-challenge-32.zip +2024-09-04 8362 Legacy League (25 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-04-8362-legacy-league.zip +2024-09-05 8362 Legacy League (18 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-05-8362-legacy-league.zip +2024-09-06 8362 Legacy League (18 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-06-8362-legacy-league.zip +2024-09-07 12682664 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-07-12682664-legacy-challenge-32.zip +2024-09-07 12682672 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-07-12682672-legacy-challenge-32.zip +2024-09-07 8362 Legacy League (18 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-07-8362-legacy-league.zip +2024-09-08 12682680 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-08-12682680-legacy-challenge-32.zip +2024-09-08 8362 Legacy League (24 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-08-8362-legacy-league.zip +2024-09-09 8362 Legacy League (24 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-09-8362-legacy-league.zip +2024-09-10 8362 Legacy League (24 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-10-8362-legacy-league.zip +2024-09-11 12685758 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-11-12685758-legacy-challenge-32.zip +2024-09-11 8362 Legacy League (22 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-11-8362-legacy-league.zip +2024-09-12 8362 Legacy League (21 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-12-8362-legacy-league.zip +2024-09-13 8362 Legacy League (25 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-13-8362-legacy-league.zip +2024-09-14 12685795 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-14-12685795-legacy-challenge-32.zip +2024-09-14 12685803 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-14-12685803-legacy-challenge-32.zip +2024-09-14 8362 Legacy League (14 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-14-8362-legacy-league.zip +2024-09-15 12685811 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-15-12685811-legacy-challenge-32.zip +2024-09-15 12685817 Legacy Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-15-12685817-legacy-challenge-64.zip +2024-09-15 8362 Legacy League (27 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-15-8362-legacy-league.zip +2024-09-16 8362 Legacy League (22 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-16-8362-legacy-league.zip +2024-09-17 8362 Legacy League (20 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-17-8362-legacy-league.zip +2024-09-18 8362 Legacy League (19 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-18-8362-legacy-league.zip +2024-09-19 8362 Legacy League (26 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-19-8362-legacy-league.zip +2024-09-20 8362 Legacy League (25 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-20-8362-legacy-league.zip +2024-09-21 12687885 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-21-12687885-legacy-challenge-32.zip +2024-09-21 12687893 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-21-12687893-legacy-challenge-32.zip +2024-09-21 8362 Legacy League (29 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-21-8362-legacy-league.zip +2024-09-22 12687845 Legacy Showcase Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-22-12687845-legacy-showcase-challenge.zip +2024-09-22 12687902 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-22-12687902-legacy-challenge-32.zip +2024-09-22 8362 Legacy League (28 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-22-8362-legacy-league.zip +2024-09-23 8362 Legacy League (24 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-23-8362-legacy-league.zip +2024-09-24 8362 Legacy League (24 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-24-8362-legacy-league.zip +2024-09-24 8524 Legacy League (6 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-24-8524-legacy-league.zip +2024-09-25 12692911 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-25-12692911-legacy-challenge-32.zip +2024-09-25 8524 Legacy League (20 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-25-8524-legacy-league.zip +2024-09-26 8524 Legacy League (29 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-26-8524-legacy-league.zip +2024-09-27 8524 Legacy League (21 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-27-8524-legacy-league.zip +2024-09-28 12692949 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-28-12692949-legacy-challenge-32.zip +2024-09-28 12692957 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-28-12692957-legacy-challenge-32.zip +2024-09-28 8524 Legacy League (17 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-28-8524-legacy-league.zip +2024-09-29 12692966 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-29-12692966-legacy-challenge-32.zip +2024-09-29 12692972 Legacy Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-29-12692972-legacy-challenge-64.zip +2024-09-29 8524 Legacy League (23 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-29-8524-legacy-league.zip +2024-09-30 8524 Legacy League (24 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-09-30-8524-legacy-league.zip +2024-10-01 8524 Legacy League (25 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-01-8524-legacy-league.zip +2024-10-02 12695975 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-02-12695975-legacy-challenge-32.zip +2024-10-02 8524 Legacy League (24 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-02-8524-legacy-league.zip +2024-10-03 8524 Legacy League (24 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-03-8524-legacy-league.zip +2024-10-04 8524 Legacy League (20 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-04-8524-legacy-league.zip +2024-10-05 12695991 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-05-12695991-legacy-challenge-32.zip +2024-10-05 12695999 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-05-12695999-legacy-challenge-32.zip +2024-10-05 8524 Legacy League (21 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-05-8524-legacy-league.zip +2024-10-06 12695972 Legacy Super Qualifier (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-06-12695972-legacy-super-qualifier.zip +2024-10-06 12696008 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-06-12696008-legacy-challenge-32.zip +2024-10-06 8524 Legacy League (24 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-06-8524-legacy-league.zip +2024-10-07 8524 Legacy League (26 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-07-8524-legacy-league.zip +2024-10-08 8524 Legacy League (26 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-08-8524-legacy-league.zip +2024-10-09 12698293 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-09-12698293-legacy-challenge-32.zip +2024-10-09 8524 Legacy League (21 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-09-8524-legacy-league.zip +2024-10-10 8524 Legacy League (16 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-10-8524-legacy-league.zip +2024-10-11 8524 Legacy League (17 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-11-8524-legacy-league.zip +2024-10-12 12698331 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-12-12698331-legacy-challenge-32.zip +2024-10-12 12698339 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-12-12698339-legacy-challenge-32.zip +2024-10-12 8524 Legacy League (18 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-12-8524-legacy-league.zip +2024-10-13 12698348 Legacy Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-13-12698348-legacy-challenge-32.zip +2024-10-13 12698354 Legacy Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-13-12698354-legacy-challenge-64.zip +2024-10-13 8524 Legacy League (29 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-13-8524-legacy-league.zip +2024-10-14 8524 Legacy League (27 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-14-8524-legacy-league.zip +2024-10-15 8524 Legacy League (27 decks) | https://downloads.cardforge.org/decks/archive/legacy/2024-10-15-8524-legacy-league.zip diff --git a/forge-gui/res/lists/net-decks-archive-modern.txt b/forge-gui/res/lists/net-decks-archive-modern.txt index 1e84884e036..fb7c085b706 100644 --- a/forge-gui/res/lists/net-decks-archive-modern.txt +++ b/forge-gui/res/lists/net-decks-archive-modern.txt @@ -4989,3 +4989,265 @@ 2024-07-05 12655571 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-05-12655571-modern-challenge-32.zip 2024-07-05 12655581 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-05-12655581-modern-challenge-32.zip 2024-07-05 8225 Modern League (13 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-05-8225-modern-league.zip + +2024-07-06 12655591 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-06-12655591-modern-challenge-64.zip +2024-07-06 12655593 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-06-12655593-modern-challenge-32.zip +2024-07-06 12655600 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-06-12655600-modern-challenge-64.zip +2024-07-06 8225 Modern League (55 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-06-8225-modern-league.zip +2024-07-07 12655605 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-07-12655605-modern-challenge-64.zip +2024-07-07 12655610 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-07-12655610-modern-challenge-64.zip +2024-07-07 12655656 Modern Last Chance (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-07-12655656-modern-last-chance.zip +2024-07-07 8225 Modern League (74 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-07-8225-modern-league.zip +2024-07-08 12655618 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-08-12655618-modern-challenge-64.zip +2024-07-08 12655638 Modern Last Chance (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-08-12655638-modern-last-chance.zip +2024-07-08 12655641 Modern Last Chance (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-08-12655641-modern-last-chance.zip +2024-07-08 8225 Modern League (72 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-08-8225-modern-league.zip +2024-07-09 12655629 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-09-12655629-modern-challenge-64.zip +2024-07-09 12655630 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-09-12655630-modern-challenge-32.zip +2024-07-09 12655644 Modern Last Chance (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-09-12655644-modern-last-chance.zip +2024-07-09 12655645 Modern Last Chance (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-09-12655645-modern-last-chance.zip +2024-07-09 8225 Modern League (64 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-09-8225-modern-league.zip +2024-07-10 12655650 Modern Last Chance (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-10-12655650-modern-last-chance.zip +2024-07-10 8225 Modern League (65 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-10-8225-modern-league.zip +2024-07-11 12658097 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-11-12658097-modern-challenge-32.zip +2024-07-11 8225 Modern League (71 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-11-8225-modern-league.zip +2024-07-12 12658108 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-12-12658108-modern-challenge-32.zip +2024-07-12 12658118 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-12-12658118-modern-challenge-32.zip +2024-07-12 8225 Modern League (70 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-12-8225-modern-league.zip +2024-07-13 12658082 Modern Showcase Qualifier (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-13-12658082-modern-showcase-qualifier.zip +2024-07-13 12658128 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-13-12658128-modern-challenge-64.zip +2024-07-13 12658130 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-13-12658130-modern-challenge-32.zip +2024-07-13 12658137 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-13-12658137-modern-challenge-64.zip +2024-07-13 8225 Modern League (56 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-13-8225-modern-league.zip +2024-07-14 12658085 Modern Super Qualifier (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-14-12658085-modern-super-qualifier.zip +2024-07-14 12658142 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-14-12658142-modern-challenge-64.zip +2024-07-14 12658147 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-14-12658147-modern-challenge-64.zip +2024-07-14 8225 Modern League (75 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-14-8225-modern-league.zip +2024-07-15 8225 Modern League (74 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-15-8225-modern-league.zip +2024-07-16 12658180 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-16-12658180-modern-challenge-64.zip +2024-07-16 12658186 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-16-12658186-modern-challenge-32.zip +2024-07-16 8225 Modern League (78 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-16-8225-modern-league.zip +2024-07-17 8225 Modern League (69 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-17-8225-modern-league.zip +2024-07-18 12661185 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-18-12661185-modern-challenge-32.zip +2024-07-18 8225 Modern League (73 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-18-8225-modern-league.zip +2024-07-19 12661618 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-19-12661618-modern-challenge-32.zip +2024-07-19 8225 Modern League (64 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-19-8225-modern-league.zip +2024-07-20 12661628 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-20-12661628-modern-challenge-64.zip +2024-07-20 12661630 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-20-12661630-modern-challenge-32.zip +2024-07-20 12661637 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-20-12661637-modern-challenge-64.zip +2024-07-20 8225 Modern League (58 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-20-8225-modern-league.zip +2024-07-21 12661642 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-21-12661642-modern-challenge-64.zip +2024-07-21 12661647 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-21-12661647-modern-challenge-64.zip +2024-07-21 8225 Modern League (70 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-21-8225-modern-league.zip +2024-07-22 12661657 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-22-12661657-modern-challenge-64.zip +2024-07-22 8225 Modern League (84 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-22-8225-modern-league.zip +2024-07-23 12661680 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-23-12661680-modern-challenge-64.zip +2024-07-23 12661681 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-23-12661681-modern-challenge-32.zip +2024-07-23 8225 Modern League (67 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-23-8225-modern-league.zip +2024-07-24 8225 Modern League (59 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-24-8225-modern-league.zip +2024-07-25 12663240 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-25-12663240-modern-challenge-32.zip +2024-07-25 8225 Modern League (66 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-25-8225-modern-league.zip +2024-07-26 12663251 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-26-12663251-modern-challenge-32.zip +2024-07-26 12663261 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-26-12663261-modern-challenge-32.zip +2024-07-26 8225 Modern League (73 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-26-8225-modern-league.zip +2024-07-27 12663271 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-27-12663271-modern-challenge-64.zip +2024-07-27 12663273 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-27-12663273-modern-challenge-32.zip +2024-07-27 12663280 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-27-12663280-modern-challenge-64.zip +2024-07-27 8225 Modern League (54 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-27-8225-modern-league.zip +2024-07-28 12663285 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-28-12663285-modern-challenge-64.zip +2024-07-28 12663290 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-28-12663290-modern-challenge-64.zip +2024-07-28 8225 Modern League (67 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-28-8225-modern-league.zip +2024-07-29 12663300 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-29-12663300-modern-challenge-64.zip +2024-07-29 8225 Modern League (66 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-29-8225-modern-league.zip +2024-07-30 12666505 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-30-12666505-modern-challenge-64.zip +2024-07-30 12666506 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-30-12666506-modern-challenge-32.zip +2024-07-30 8225 Modern League (53 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-30-8225-modern-league.zip +2024-07-30 8378 Modern League (9 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-30-8378-modern-league.zip +2024-07-31 8378 Modern League (63 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-07-31-8378-modern-league.zip +2024-08-01 12666528 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-01-12666528-modern-challenge-32.zip +2024-08-01 8378 Modern League (59 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-01-8378-modern-league.zip +2024-08-02 12666539 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-02-12666539-modern-challenge-32.zip +2024-08-02 12666549 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-02-12666549-modern-challenge-32.zip +2024-08-02 8378 Modern League (63 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-02-8378-modern-league.zip +2024-08-03 12666559 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-03-12666559-modern-challenge-64.zip +2024-08-03 12666561 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-03-12666561-modern-challenge-32.zip +2024-08-03 12666568 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-03-12666568-modern-challenge-64.zip +2024-08-03 8378 Modern League (58 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-03-8378-modern-league.zip +2024-08-04 12666498 Modern Super Qualifier (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-04-12666498-modern-super-qualifier.zip +2024-08-04 12666573 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-04-12666573-modern-challenge-64.zip +2024-08-04 8378 Modern League (67 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-04-8378-modern-league.zip +2024-08-05 12666588 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-05-12666588-modern-challenge-64.zip +2024-08-05 8378 Modern League (63 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-05-8378-modern-league.zip +2024-08-06 12666611 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-06-12666611-modern-challenge-64.zip +2024-08-06 12666612 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-06-12666612-modern-challenge-32.zip +2024-08-06 8378 Modern League (62 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-06-8378-modern-league.zip +2024-08-07 8378 Modern League (69 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-07-8378-modern-league.zip +2024-08-08 12670616 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-08-12670616-modern-challenge-32.zip +2024-08-08 8378 Modern League (61 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-08-8378-modern-league.zip +2024-08-09 12670627 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-09-12670627-modern-challenge-32.zip +2024-08-09 12670637 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-09-12670637-modern-challenge-32.zip +2024-08-09 8378 Modern League (73 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-09-8378-modern-league.zip +2024-08-10 12670647 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-10-12670647-modern-challenge-64.zip +2024-08-10 12670649 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-10-12670649-modern-challenge-32.zip +2024-08-10 12670656 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-10-12670656-modern-challenge-64.zip +2024-08-10 8378 Modern League (50 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-10-8378-modern-league.zip +2024-08-11 12670661 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-11-12670661-modern-challenge-64.zip +2024-08-11 12670666 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-11-12670666-modern-challenge-64.zip +2024-08-11 8378 Modern League (62 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-11-8378-modern-league.zip +2024-08-12 12670676 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-12-12670676-modern-challenge-64.zip +2024-08-12 8378 Modern League (60 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-12-8378-modern-league.zip +2024-08-13 12670699 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-13-12670699-modern-challenge-64.zip +2024-08-13 12670700 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-13-12670700-modern-challenge-32.zip +2024-08-13 8378 Modern League (52 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-13-8378-modern-league.zip +2024-08-14 8378 Modern League (65 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-14-8378-modern-league.zip +2024-08-15 12674603 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-15-12674603-modern-challenge-32.zip +2024-08-15 8378 Modern League (63 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-15-8378-modern-league.zip +2024-08-16 12674614 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-16-12674614-modern-challenge-32.zip +2024-08-16 12674624 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-16-12674624-modern-challenge-32.zip +2024-08-16 8378 Modern League (47 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-16-8378-modern-league.zip +2024-08-17 12674591 Modern Showcase Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-17-12674591-modern-showcase-challenge.zip +2024-08-17 12674634 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-17-12674634-modern-challenge-64.zip +2024-08-17 12674636 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-17-12674636-modern-challenge-32.zip +2024-08-17 8378 Modern League (47 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-17-8378-modern-league.zip +2024-08-18 12674647 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-18-12674647-modern-challenge-64.zip +2024-08-18 12674652 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-18-12674652-modern-challenge-64.zip +2024-08-18 8378 Modern League (47 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-18-8378-modern-league.zip +2024-08-19 12674661 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-19-12674661-modern-challenge-64.zip +2024-08-19 8378 Modern League (58 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-19-8378-modern-league.zip +2024-08-20 12674684 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-20-12674684-modern-challenge-64.zip +2024-08-20 12674685 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-20-12674685-modern-challenge-32.zip +2024-08-20 8378 Modern League (53 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-20-8378-modern-league.zip +2024-08-21 8378 Modern League (58 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-21-8378-modern-league.zip +2024-08-22 12676107 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-22-12676107-modern-challenge-32.zip +2024-08-22 8378 Modern League (62 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-22-8378-modern-league.zip +2024-08-23 12676118 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-23-12676118-modern-challenge-32.zip +2024-08-23 12676128 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-23-12676128-modern-challenge-32.zip +2024-08-23 8378 Modern League (63 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-23-8378-modern-league.zip +2024-08-24 12676140 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-24-12676140-modern-challenge-32.zip +2024-08-24 12676146 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-24-12676146-modern-challenge-64.zip +2024-08-24 8378 Modern League (43 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-24-8378-modern-league.zip +2024-08-25 12676151 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-25-12676151-modern-challenge-64.zip +2024-08-25 12676156 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-25-12676156-modern-challenge-64.zip +2024-08-25 8378 Modern League (36 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-25-8378-modern-league.zip +2024-08-26 12676165 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-26-12676165-modern-challenge-64.zip +2024-08-26 8378 Modern League (54 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-26-8378-modern-league.zip +2024-08-27 12676188 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-27-12676188-modern-challenge-64.zip +2024-08-27 12676189 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-27-12676189-modern-challenge-32.zip +2024-08-27 8378 Modern League (85 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-27-8378-modern-league.zip +2024-08-28 8378 Modern League (64 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-28-8378-modern-league.zip +2024-08-29 12678538 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-29-12678538-modern-challenge-32.zip +2024-08-29 8378 Modern League (73 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-29-8378-modern-league.zip +2024-08-30 12678524 Modern Super Qualifier (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-30-12678524-modern-super-qualifier.zip +2024-08-30 12678549 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-30-12678549-modern-challenge-32.zip +2024-08-30 12678559 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-30-12678559-modern-challenge-32.zip +2024-08-30 8378 Modern League (77 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-30-8378-modern-league.zip +2024-08-31 12678571 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-31-12678571-modern-challenge-32.zip +2024-08-31 12678578 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-31-12678578-modern-challenge-64.zip +2024-08-31 8378 Modern League (51 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-08-31-8378-modern-league.zip +2024-09-01 12678583 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-01-12678583-modern-challenge-64.zip +2024-09-01 12678588 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-01-12678588-modern-challenge-64.zip +2024-09-01 8378 Modern League (58 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-01-8378-modern-league.zip +2024-09-02 12678598 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-02-12678598-modern-challenge-64.zip +2024-09-02 8378 Modern League (70 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-02-8378-modern-league.zip +2024-09-03 12678621 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-03-12678621-modern-challenge-64.zip +2024-09-03 12678622 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-03-12678622-modern-challenge-32.zip +2024-09-03 8378 Modern League (60 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-03-8378-modern-league.zip +2024-09-04 8378 Modern League (61 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-04-8378-modern-league.zip +2024-09-05 12682634 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-05-12682634-modern-challenge-32.zip +2024-09-05 8378 Modern League (62 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-05-8378-modern-league.zip +2024-09-06 12682645 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-06-12682645-modern-challenge-32.zip +2024-09-06 12682655 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-06-12682655-modern-challenge-32.zip +2024-09-06 8378 Modern League (71 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-06-8378-modern-league.zip +2024-09-07 12682665 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-07-12682665-modern-challenge-64.zip +2024-09-07 12682667 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-07-12682667-modern-challenge-32.zip +2024-09-07 12682674 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-07-12682674-modern-challenge-64.zip +2024-09-07 8378 Modern League (52 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-07-8378-modern-league.zip +2024-09-08 12682623 Modern Super Qualifier (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-08-12682623-modern-super-qualifier.zip +2024-09-08 12682679 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-08-12682679-modern-challenge-64.zip +2024-09-08 8378 Modern League (70 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-08-8378-modern-league.zip +2024-09-09 12682694 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-09-12682694-modern-challenge-64.zip +2024-09-09 8378 Modern League (65 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-09-8378-modern-league.zip +2024-09-10 12682717 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-10-12682717-modern-challenge-64.zip +2024-09-10 12682718 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-10-12682718-modern-challenge-32.zip +2024-09-10 8378 Modern League (65 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-10-8378-modern-league.zip +2024-09-11 8378 Modern League (68 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-11-8378-modern-league.zip +2024-09-12 12685765 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-12-12685765-modern-challenge-32.zip +2024-09-12 8378 Modern League (60 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-12-8378-modern-league.zip +2024-09-13 12685776 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-13-12685776-modern-challenge-32.zip +2024-09-13 12685786 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-13-12685786-modern-challenge-32.zip +2024-09-13 8378 Modern League (53 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-13-8378-modern-league.zip +2024-09-14 12685796 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-14-12685796-modern-challenge-64.zip +2024-09-14 12685798 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-14-12685798-modern-challenge-32.zip +2024-09-14 12685805 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-14-12685805-modern-challenge-64.zip +2024-09-14 8378 Modern League (44 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-14-8378-modern-league.zip +2024-09-15 12685810 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-15-12685810-modern-challenge-64.zip +2024-09-15 12685815 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-15-12685815-modern-challenge-64.zip +2024-09-15 8378 Modern League (48 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-15-8378-modern-league.zip +2024-09-16 12685825 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-16-12685825-modern-challenge-64.zip +2024-09-16 8378 Modern League (59 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-16-8378-modern-league.zip +2024-09-17 12685848 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-17-12685848-modern-challenge-64.zip +2024-09-17 12685849 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-17-12685849-modern-challenge-32.zip +2024-09-17 8378 Modern League (56 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-17-8378-modern-league.zip +2024-09-18 8378 Modern League (42 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-18-8378-modern-league.zip +2024-09-19 12687857 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-19-12687857-modern-challenge-32.zip +2024-09-19 8378 Modern League (55 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-19-8378-modern-league.zip +2024-09-20 12687867 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-20-12687867-modern-challenge-32.zip +2024-09-20 12687876 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-20-12687876-modern-challenge-32.zip +2024-09-20 8378 Modern League (61 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-20-8378-modern-league.zip +2024-09-21 12687886 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-21-12687886-modern-challenge-64.zip +2024-09-21 12687888 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-21-12687888-modern-challenge-32.zip +2024-09-21 12687895 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-21-12687895-modern-challenge-64.zip +2024-09-21 8378 Modern League (51 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-21-8378-modern-league.zip +2024-09-22 12687901 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-22-12687901-modern-challenge-64.zip +2024-09-22 12687906 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-22-12687906-modern-challenge-64.zip +2024-09-22 8378 Modern League (49 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-22-8378-modern-league.zip +2024-09-23 12687917 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-23-12687917-modern-challenge-64.zip +2024-09-23 8378 Modern League (51 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-23-8378-modern-league.zip +2024-09-24 12692895 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-24-12692895-modern-challenge-32.zip +2024-09-24 8378 Modern League (42 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-24-8378-modern-league.zip +2024-09-24 8540 Modern League (10 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-24-8540-modern-league.zip +2024-09-25 8540 Modern League (46 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-25-8540-modern-league.zip +2024-09-26 12692920 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-26-12692920-modern-challenge-32.zip +2024-09-26 8540 Modern League (47 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-26-8540-modern-league.zip +2024-09-27 12692931 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-27-12692931-modern-challenge-32.zip +2024-09-27 12692940 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-27-12692940-modern-challenge-32.zip +2024-09-27 8540 Modern League (45 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-27-8540-modern-league.zip +2024-09-28 12692952 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-28-12692952-modern-challenge-32.zip +2024-09-28 12692959 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-28-12692959-modern-challenge-64.zip +2024-09-28 8540 Modern League (49 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-28-8540-modern-league.zip +2024-09-29 12692965 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-29-12692965-modern-challenge-64.zip +2024-09-29 8540 Modern League (38 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-29-8540-modern-league.zip +2024-09-30 8540 Modern League (52 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-09-30-8540-modern-league.zip +2024-10-01 12695973 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-01-12695973-modern-challenge-64.zip +2024-10-01 12695974 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-01-12695974-modern-challenge-32.zip +2024-10-01 8540 Modern League (41 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-01-8540-modern-league.zip +2024-10-02 8540 Modern League (50 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-02-8540-modern-league.zip +2024-10-03 12695976 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-03-12695976-modern-challenge-32.zip +2024-10-03 8540 Modern League (55 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-03-8540-modern-league.zip +2024-10-04 12695980 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-04-12695980-modern-challenge-32.zip +2024-10-04 12695983 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-04-12695983-modern-challenge-32.zip +2024-10-04 8540 Modern League (44 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-04-8540-modern-league.zip +2024-10-05 12695992 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-05-12695992-modern-challenge-64.zip +2024-10-05 12695994 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-05-12695994-modern-challenge-32.zip +2024-10-05 12696001 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-05-12696001-modern-challenge-64.zip +2024-10-05 8540 Modern League (48 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-05-8540-modern-league.zip +2024-10-06 12696007 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-06-12696007-modern-challenge-64.zip +2024-10-06 8540 Modern League (48 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-06-8540-modern-league.zip +2024-10-07 8540 Modern League (53 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-07-8540-modern-league.zip +2024-10-08 12696046 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-08-12696046-modern-challenge-64.zip +2024-10-08 12696047 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-08-12696047-modern-challenge-32.zip +2024-10-08 8540 Modern League (47 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-08-8540-modern-league.zip +2024-10-09 8540 Modern League (49 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-09-8540-modern-league.zip +2024-10-10 12698302 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-10-12698302-modern-challenge-32.zip +2024-10-10 8540 Modern League (58 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-10-8540-modern-league.zip +2024-10-11 12698313 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-11-12698313-modern-challenge-32.zip +2024-10-11 12698322 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-11-12698322-modern-challenge-32.zip +2024-10-11 8540 Modern League (49 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-11-8540-modern-league.zip +2024-10-12 12698334 Modern Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-12-12698334-modern-challenge-32.zip +2024-10-12 12698341 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-12-12698341-modern-challenge-64.zip +2024-10-12 8540 Modern League (47 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-12-8540-modern-league.zip +2024-10-13 12698347 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-13-12698347-modern-challenge-64.zip +2024-10-13 8540 Modern League (47 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-13-8540-modern-league.zip +2024-10-14 12698363 Modern Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-14-12698363-modern-challenge-64.zip +2024-10-14 8540 Modern League (61 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-14-8540-modern-league.zip +2024-10-15 8540 Modern League (33 decks) | https://downloads.cardforge.org/decks/archive/modern/2024-10-15-8540-modern-league.zip diff --git a/forge-gui/res/lists/net-decks-archive-pauper.txt b/forge-gui/res/lists/net-decks-archive-pauper.txt index e28e7ecdb52..8705ee277c1 100644 --- a/forge-gui/res/lists/net-decks-archive-pauper.txt +++ b/forge-gui/res/lists/net-decks-archive-pauper.txt @@ -2552,3 +2552,149 @@ 2024-07-08 8217 Pauper League (29 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-08-8217-pauper-league.zip 2024-07-09 12655647 Pauper Last Chance (24 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-09-12655647-pauper-last-chance.zip 2024-07-09 8217 Pauper League (8 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-09-8217-pauper-league.zip + +2024-07-10 12655651 Pauper Last Chance (25 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-10-12655651-pauper-last-chance.zip +2024-07-10 12655654 Pauper Last Chance (19 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-10-12655654-pauper-last-chance.zip +2024-07-10 8217 Pauper League (26 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-10-8217-pauper-league.zip +2024-07-11 8217 Pauper League (18 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-11-8217-pauper-league.zip +2024-07-12 12658116 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-12-12658116-pauper-challenge-32.zip +2024-07-12 8217 Pauper League (19 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-12-8217-pauper-league.zip +2024-07-13 12658133 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-13-12658133-pauper-challenge-32.zip +2024-07-13 8217 Pauper League (19 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-13-8217-pauper-league.zip +2024-07-14 8217 Pauper League (14 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-14-8217-pauper-league.zip +2024-07-15 8217 Pauper League (18 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-15-8217-pauper-league.zip +2024-07-16 8217 Pauper League (24 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-16-8217-pauper-league.zip +2024-07-17 8217 Pauper League (25 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-17-8217-pauper-league.zip +2024-07-18 8217 Pauper League (27 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-18-8217-pauper-league.zip +2024-07-19 12661616 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-19-12661616-pauper-challenge-32.zip +2024-07-19 8217 Pauper League (18 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-19-8217-pauper-league.zip +2024-07-20 12661594 Pauper Showcase Qualifier (29 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-20-12661594-pauper-showcase-qualifier.zip +2024-07-20 12661633 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-20-12661633-pauper-challenge-32.zip +2024-07-20 8217 Pauper League (24 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-20-8217-pauper-league.zip +2024-07-21 12661651 Pauper Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-21-12661651-pauper-challenge-64.zip +2024-07-21 8217 Pauper League (19 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-21-8217-pauper-league.zip +2024-07-22 8217 Pauper League (21 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-22-8217-pauper-league.zip +2024-07-23 8217 Pauper League (31 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-23-8217-pauper-league.zip +2024-07-24 8217 Pauper League (14 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-24-8217-pauper-league.zip +2024-07-25 8217 Pauper League (26 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-25-8217-pauper-league.zip +2024-07-26 12663259 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-26-12663259-pauper-challenge-32.zip +2024-07-26 8217 Pauper League (27 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-26-8217-pauper-league.zip +2024-07-27 12663276 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-27-12663276-pauper-challenge-32.zip +2024-07-27 8217 Pauper League (21 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-27-8217-pauper-league.zip +2024-07-28 12663294 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-28-12663294-pauper-challenge-32.zip +2024-07-28 8217 Pauper League (15 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-28-8217-pauper-league.zip +2024-07-29 8217 Pauper League (21 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-29-8217-pauper-league.zip +2024-07-30 8217 Pauper League (14 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-30-8217-pauper-league.zip +2024-07-30 8386 Pauper League (3 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-30-8386-pauper-league.zip +2024-07-31 8386 Pauper League (19 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-07-31-8386-pauper-league.zip +2024-08-01 8386 Pauper League (24 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-01-8386-pauper-league.zip +2024-08-02 12666547 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-02-12666547-pauper-challenge-32.zip +2024-08-02 8386 Pauper League (23 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-02-8386-pauper-league.zip +2024-08-03 12666564 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-03-12666564-pauper-challenge-32.zip +2024-08-03 8386 Pauper League (15 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-03-8386-pauper-league.zip +2024-08-04 12666582 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-04-12666582-pauper-challenge-32.zip +2024-08-04 8386 Pauper League (19 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-04-8386-pauper-league.zip +2024-08-05 8386 Pauper League (22 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-05-8386-pauper-league.zip +2024-08-06 8386 Pauper League (23 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-06-8386-pauper-league.zip +2024-08-07 8386 Pauper League (17 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-07-8386-pauper-league.zip +2024-08-08 8386 Pauper League (23 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-08-8386-pauper-league.zip +2024-08-09 12670635 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-09-12670635-pauper-challenge-32.zip +2024-08-09 8386 Pauper League (20 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-09-8386-pauper-league.zip +2024-08-10 12670652 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-10-12670652-pauper-challenge-32.zip +2024-08-10 8386 Pauper League (18 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-10-8386-pauper-league.zip +2024-08-11 12670670 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-11-12670670-pauper-challenge-32.zip +2024-08-11 8386 Pauper League (24 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-11-8386-pauper-league.zip +2024-08-12 8386 Pauper League (26 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-12-8386-pauper-league.zip +2024-08-13 8386 Pauper League (27 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-13-8386-pauper-league.zip +2024-08-14 8386 Pauper League (17 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-14-8386-pauper-league.zip +2024-08-15 8386 Pauper League (19 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-15-8386-pauper-league.zip +2024-08-16 12674622 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-16-12674622-pauper-challenge-32.zip +2024-08-16 8386 Pauper League (16 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-16-8386-pauper-league.zip +2024-08-17 12674643 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-17-12674643-pauper-challenge-32.zip +2024-08-17 8386 Pauper League (14 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-17-8386-pauper-league.zip +2024-08-18 12674655 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-18-12674655-pauper-challenge-32.zip +2024-08-18 8386 Pauper League (22 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-18-8386-pauper-league.zip +2024-08-19 8386 Pauper League (20 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-19-8386-pauper-league.zip +2024-08-20 8386 Pauper League (22 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-20-8386-pauper-league.zip +2024-08-21 8386 Pauper League (26 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-21-8386-pauper-league.zip +2024-08-22 8386 Pauper League (20 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-22-8386-pauper-league.zip +2024-08-23 12676126 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-23-12676126-pauper-challenge-32.zip +2024-08-23 8386 Pauper League (22 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-23-8386-pauper-league.zip +2024-08-24 12676143 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-24-12676143-pauper-challenge-32.zip +2024-08-24 8386 Pauper League (17 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-24-8386-pauper-league.zip +2024-08-25 12676159 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-25-12676159-pauper-challenge-32.zip +2024-08-25 8386 Pauper League (19 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-25-8386-pauper-league.zip +2024-08-26 8386 Pauper League (18 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-26-8386-pauper-league.zip +2024-08-27 8386 Pauper League (17 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-27-8386-pauper-league.zip +2024-08-28 8386 Pauper League (19 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-28-8386-pauper-league.zip +2024-08-29 8386 Pauper League (18 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-29-8386-pauper-league.zip +2024-08-30 12678557 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-30-12678557-pauper-challenge-32.zip +2024-08-30 8386 Pauper League (19 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-30-8386-pauper-league.zip +2024-08-31 12678574 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-31-12678574-pauper-challenge-32.zip +2024-08-31 8386 Pauper League (17 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-08-31-8386-pauper-league.zip +2024-09-01 12678592 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-01-12678592-pauper-challenge-32.zip +2024-09-01 8386 Pauper League (13 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-01-8386-pauper-league.zip +2024-09-02 8386 Pauper League (13 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-02-8386-pauper-league.zip +2024-09-03 8386 Pauper League (20 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-03-8386-pauper-league.zip +2024-09-04 8386 Pauper League (24 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-04-8386-pauper-league.zip +2024-09-05 8386 Pauper League (20 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-05-8386-pauper-league.zip +2024-09-06 12682653 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-06-12682653-pauper-challenge-32.zip +2024-09-06 8386 Pauper League (20 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-06-8386-pauper-league.zip +2024-09-07 12682670 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-07-12682670-pauper-challenge-32.zip +2024-09-07 8386 Pauper League (17 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-07-8386-pauper-league.zip +2024-09-08 12682688 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-08-12682688-pauper-challenge-32.zip +2024-09-08 8386 Pauper League (20 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-08-8386-pauper-league.zip +2024-09-09 8386 Pauper League (20 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-09-8386-pauper-league.zip +2024-09-10 8386 Pauper League (19 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-10-8386-pauper-league.zip +2024-09-11 8386 Pauper League (19 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-11-8386-pauper-league.zip +2024-09-12 8386 Pauper League (19 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-12-8386-pauper-league.zip +2024-09-13 12685784 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-13-12685784-pauper-challenge-32.zip +2024-09-13 8386 Pauper League (17 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-13-8386-pauper-league.zip +2024-09-14 12685801 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-14-12685801-pauper-challenge-32.zip +2024-09-14 8386 Pauper League (19 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-14-8386-pauper-league.zip +2024-09-15 12685819 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-15-12685819-pauper-challenge-32.zip +2024-09-15 8386 Pauper League (14 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-15-8386-pauper-league.zip +2024-09-16 8386 Pauper League (22 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-16-8386-pauper-league.zip +2024-09-17 8386 Pauper League (17 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-17-8386-pauper-league.zip +2024-09-18 8386 Pauper League (16 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-18-8386-pauper-league.zip +2024-09-19 8386 Pauper League (23 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-19-8386-pauper-league.zip +2024-09-20 12687874 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-20-12687874-pauper-challenge-32.zip +2024-09-20 8386 Pauper League (20 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-20-8386-pauper-league.zip +2024-09-21 12687891 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-21-12687891-pauper-challenge-32.zip +2024-09-21 8386 Pauper League (27 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-21-8386-pauper-league.zip +2024-09-22 12687910 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-22-12687910-pauper-challenge-32.zip +2024-09-22 8386 Pauper League (18 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-22-8386-pauper-league.zip +2024-09-23 8386 Pauper League (20 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-23-8386-pauper-league.zip +2024-09-24 8386 Pauper League (12 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-24-8386-pauper-league.zip +2024-09-24 8548 Pauper League (6 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-24-8548-pauper-league.zip +2024-09-25 8548 Pauper League (21 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-25-8548-pauper-league.zip +2024-09-26 8548 Pauper League (19 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-26-8548-pauper-league.zip +2024-09-27 12692938 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-27-12692938-pauper-challenge-32.zip +2024-09-27 8548 Pauper League (19 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-27-8548-pauper-league.zip +2024-09-28 12692955 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-28-12692955-pauper-challenge-32.zip +2024-09-28 8548 Pauper League (20 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-28-8548-pauper-league.zip +2024-09-29 12692974 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-29-12692974-pauper-challenge-32.zip +2024-09-29 8548 Pauper League (17 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-29-8548-pauper-league.zip +2024-09-30 8548 Pauper League (24 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-09-30-8548-pauper-league.zip +2024-10-01 8548 Pauper League (27 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-01-8548-pauper-league.zip +2024-10-02 8548 Pauper League (16 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-02-8548-pauper-league.zip +2024-10-03 8548 Pauper League (19 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-03-8548-pauper-league.zip +2024-10-04 12695982 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-04-12695982-pauper-challenge-32.zip +2024-10-04 8548 Pauper League (19 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-04-8548-pauper-league.zip +2024-10-05 12695997 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-05-12695997-pauper-challenge-32.zip +2024-10-05 8548 Pauper League (14 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-05-8548-pauper-league.zip +2024-10-06 12696016 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-06-12696016-pauper-challenge-32.zip +2024-10-06 8548 Pauper League (25 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-06-8548-pauper-league.zip +2024-10-07 8548 Pauper League (26 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-07-8548-pauper-league.zip +2024-10-08 8548 Pauper League (30 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-08-8548-pauper-league.zip +2024-10-09 8548 Pauper League (25 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-09-8548-pauper-league.zip +2024-10-10 8548 Pauper League (24 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-10-8548-pauper-league.zip +2024-10-11 12698320 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-11-12698320-pauper-challenge-32.zip +2024-10-11 8548 Pauper League (23 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-11-8548-pauper-league.zip +2024-10-12 12698288 Pauper Qualifier (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-12-12698288-pauper-qualifier.zip +2024-10-12 12698337 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-12-12698337-pauper-challenge-32.zip +2024-10-12 8548 Pauper League (26 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-12-8548-pauper-league.zip +2024-10-13 12698356 Pauper Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-13-12698356-pauper-challenge-32.zip +2024-10-13 8548 Pauper League (16 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-13-8548-pauper-league.zip +2024-10-14 8548 Pauper League (27 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-14-8548-pauper-league.zip +2024-10-15 8548 Pauper League (16 decks) | https://downloads.cardforge.org/decks/archive/pauper/2024-10-15-8548-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 118f5f39b86..c76f63f0f8c 100644 --- a/forge-gui/res/lists/net-decks-archive-pioneer.txt +++ b/forge-gui/res/lists/net-decks-archive-pioneer.txt @@ -2471,3 +2471,242 @@ 2024-07-09 12655643 Pioneer Last Chance (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-09-12655643-pioneer-last-chance.zip 2024-07-09 12655646 Pioneer Last Chance (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-09-12655646-pioneer-last-chance.zip 2024-07-09 8209 Pioneer League (16 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-09-8209-pioneer-league.zip + +2024-07-09 12655649 Pioneer Last Chance (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-09-12655649-pioneer-last-chance.zip +2024-07-10 12655655 Pioneer Last Chance (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-10-12655655-pioneer-last-chance.zip +2024-07-10 8209 Pioneer League (22 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-10-8209-pioneer-league.zip +2024-07-11 12658104 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-11-12658104-pioneer-challenge-64.zip +2024-07-11 12658105 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-11-12658105-pioneer-challenge-32.zip +2024-07-11 12678539 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-11-12678539-pioneer-challenge-64.zip +2024-07-11 12678540 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-11-12678540-pioneer-challenge-32.zip +2024-07-11 8209 Pioneer League (20 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-11-8209-pioneer-league.zip +2024-07-12 12658115 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-12-12658115-pioneer-challenge-32.zip +2024-07-12 12658124 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-12-12658124-pioneer-challenge-32.zip +2024-07-12 8209 Pioneer League (15 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-12-8209-pioneer-league.zip +2024-07-13 12658140 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-13-12658140-pioneer-challenge-64.zip +2024-07-13 8209 Pioneer League (16 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-13-8209-pioneer-league.zip +2024-07-14 12658083 Pioneer Showcase Qualifier (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-14-12658083-pioneer-showcase-qualifier.zip +2024-07-14 12658148 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-14-12658148-pioneer-challenge-64.zip +2024-07-14 12658153 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-14-12658153-pioneer-challenge-64.zip +2024-07-14 12658154 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-14-12658154-pioneer-challenge-32.zip +2024-07-14 8209 Pioneer League (19 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-14-8209-pioneer-league.zip +2024-07-15 12658167 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-15-12658167-pioneer-challenge-64.zip +2024-07-15 12658168 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-15-12658168-pioneer-challenge-32.zip +2024-07-15 8209 Pioneer League (11 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-15-8209-pioneer-league.zip +2024-07-16 8209 Pioneer League (14 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-16-8209-pioneer-league.zip +2024-07-17 8209 Pioneer League (16 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-17-8209-pioneer-league.zip +2024-07-18 12661192 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-18-12661192-pioneer-challenge-64.zip +2024-07-18 12661193 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-18-12661193-pioneer-challenge-32.zip +2024-07-18 8209 Pioneer League (18 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-18-8209-pioneer-league.zip +2024-07-19 12661615 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-19-12661615-pioneer-challenge-32.zip +2024-07-19 12661624 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-19-12661624-pioneer-challenge-32.zip +2024-07-19 8209 Pioneer League (21 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-19-8209-pioneer-league.zip +2024-07-20 8209 Pioneer League (8 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-20-8209-pioneer-league.zip +2024-07-21 12661648 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-21-12661648-pioneer-challenge-64.zip +2024-07-21 12661653 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-21-12661653-pioneer-challenge-64.zip +2024-07-21 12661654 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-21-12661654-pioneer-challenge-32.zip +2024-07-21 8209 Pioneer League (9 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-21-8209-pioneer-league.zip +2024-07-22 12661667 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-22-12661667-pioneer-challenge-64.zip +2024-07-22 12661668 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-22-12661668-pioneer-challenge-32.zip +2024-07-22 8209 Pioneer League (17 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-22-8209-pioneer-league.zip +2024-07-23 8209 Pioneer League (17 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-23-8209-pioneer-league.zip +2024-07-24 8209 Pioneer League (15 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-24-8209-pioneer-league.zip +2024-07-25 12663247 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-25-12663247-pioneer-challenge-64.zip +2024-07-25 12663248 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-25-12663248-pioneer-challenge-32.zip +2024-07-25 8209 Pioneer League (8 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-25-8209-pioneer-league.zip +2024-07-26 12663258 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-26-12663258-pioneer-challenge-32.zip +2024-07-26 12663267 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-26-12663267-pioneer-challenge-32.zip +2024-07-26 8209 Pioneer League (12 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-26-8209-pioneer-league.zip +2024-07-27 12663283 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-27-12663283-pioneer-challenge-64.zip +2024-07-27 8209 Pioneer League (7 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-27-8209-pioneer-league.zip +2024-07-28 12663296 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-28-12663296-pioneer-challenge-64.zip +2024-07-28 12663297 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-28-12663297-pioneer-challenge-32.zip +2024-07-28 8209 Pioneer League (12 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-28-8209-pioneer-league.zip +2024-07-29 12663310 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-29-12663310-pioneer-challenge-64.zip +2024-07-29 12663311 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-29-12663311-pioneer-challenge-32.zip +2024-07-29 8209 Pioneer League (18 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-29-8209-pioneer-league.zip +2024-07-30 8209 Pioneer League (13 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-30-8209-pioneer-league.zip +2024-07-30 8394 Pioneer League (2 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-30-8394-pioneer-league.zip +2024-07-31 8394 Pioneer League (11 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-07-31-8394-pioneer-league.zip +2024-08-01 12666535 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-01-12666535-pioneer-challenge-64.zip +2024-08-01 12666536 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-01-12666536-pioneer-challenge-32.zip +2024-08-01 8394 Pioneer League (15 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-01-8394-pioneer-league.zip +2024-08-02 12666546 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-02-12666546-pioneer-challenge-32.zip +2024-08-02 12666555 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-02-12666555-pioneer-challenge-32.zip +2024-08-02 8394 Pioneer League (12 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-02-8394-pioneer-league.zip +2024-08-03 12666571 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-03-12666571-pioneer-challenge-64.zip +2024-08-03 8394 Pioneer League (16 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-03-8394-pioneer-league.zip +2024-08-04 12666585 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-04-12666585-pioneer-challenge-32.zip +2024-08-04 8394 Pioneer League (10 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-04-8394-pioneer-league.zip +2024-08-05 12666598 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-05-12666598-pioneer-challenge-64.zip +2024-08-05 12666599 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-05-12666599-pioneer-challenge-32.zip +2024-08-05 8394 Pioneer League (15 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-05-8394-pioneer-league.zip +2024-08-06 8394 Pioneer League (8 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-06-8394-pioneer-league.zip +2024-08-07 8394 Pioneer League (10 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-07-8394-pioneer-league.zip +2024-08-08 12670623 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-08-12670623-pioneer-challenge-64.zip +2024-08-08 12670624 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-08-12670624-pioneer-challenge-32.zip +2024-08-08 8394 Pioneer League (17 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-08-8394-pioneer-league.zip +2024-08-09 12670634 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-09-12670634-pioneer-challenge-32.zip +2024-08-09 12670643 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-09-12670643-pioneer-challenge-32.zip +2024-08-09 8394 Pioneer League (9 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-09-8394-pioneer-league.zip +2024-08-10 8394 Pioneer League (10 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-10-8394-pioneer-league.zip +2024-08-11 12670672 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-11-12670672-pioneer-challenge-64.zip +2024-08-11 12670673 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-11-12670673-pioneer-challenge-32.zip +2024-08-11 8394 Pioneer League (13 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-11-8394-pioneer-league.zip +2024-08-12 12670686 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-12-12670686-pioneer-challenge-64.zip +2024-08-12 12670687 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-12-12670687-pioneer-challenge-32.zip +2024-08-12 8394 Pioneer League (17 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-12-8394-pioneer-league.zip +2024-08-13 8394 Pioneer League (18 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-13-8394-pioneer-league.zip +2024-08-14 8394 Pioneer League (15 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-14-8394-pioneer-league.zip +2024-08-15 12674610 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-15-12674610-pioneer-challenge-64.zip +2024-08-15 12674611 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-15-12674611-pioneer-challenge-32.zip +2024-08-15 8394 Pioneer League (11 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-15-8394-pioneer-league.zip +2024-08-16 12674621 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-16-12674621-pioneer-challenge-32.zip +2024-08-16 12674630 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-16-12674630-pioneer-challenge-32.zip +2024-08-16 8394 Pioneer League (11 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-16-8394-pioneer-league.zip +2024-08-17 12674641 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-17-12674641-pioneer-challenge-64.zip +2024-08-17 8394 Pioneer League (18 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-17-8394-pioneer-league.zip +2024-08-18 12674592 Pioneer Showcase Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-18-12674592-pioneer-showcase-challenge.zip +2024-08-18 12674658 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-18-12674658-pioneer-challenge-32.zip +2024-08-18 8394 Pioneer League (11 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-18-8394-pioneer-league.zip +2024-08-19 12674671 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-19-12674671-pioneer-challenge-64.zip +2024-08-19 12674672 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-19-12674672-pioneer-challenge-32.zip +2024-08-19 8394 Pioneer League (10 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-19-8394-pioneer-league.zip +2024-08-20 8394 Pioneer League (14 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-20-8394-pioneer-league.zip +2024-08-21 8394 Pioneer League (9 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-21-8394-pioneer-league.zip +2024-08-22 12676114 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-22-12676114-pioneer-challenge-64.zip +2024-08-22 12676115 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-22-12676115-pioneer-challenge-32.zip +2024-08-22 8394 Pioneer League (8 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-22-8394-pioneer-league.zip +2024-08-23 12676125 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-23-12676125-pioneer-challenge-32.zip +2024-08-23 12676134 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-23-12676134-pioneer-challenge-32.zip +2024-08-23 8394 Pioneer League (10 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-23-8394-pioneer-league.zip +2024-08-24 8394 Pioneer League (10 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-24-8394-pioneer-league.zip +2024-08-25 12676157 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-25-12676157-pioneer-challenge-32.zip +2024-08-25 12676162 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-25-12676162-pioneer-challenge-32.zip +2024-08-25 8394 Pioneer League (8 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-25-8394-pioneer-league.zip +2024-08-26 12676175 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-26-12676175-pioneer-challenge-64.zip +2024-08-26 12676176 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-26-12676176-pioneer-challenge-32.zip +2024-08-26 8394 Pioneer League (12 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-26-8394-pioneer-league.zip +2024-08-27 8394 Pioneer League (21 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-27-8394-pioneer-league.zip +2024-08-28 8394 Pioneer League (38 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-28-8394-pioneer-league.zip +2024-08-29 12678539 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-29-12678539-pioneer-challenge-64.zip +2024-08-29 12678540 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-29-12678540-pioneer-challenge-32.zip +2024-08-29 8394 Pioneer League (17 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-29-8394-pioneer-league.zip +2024-08-30 12678551 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-30-12678551-pioneer-challenge-32.zip +2024-08-30 12678565 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-30-12678565-pioneer-challenge-32.zip +2024-08-30 8394 Pioneer League (29 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-30-8394-pioneer-league.zip +2024-08-31 12678581 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-31-12678581-pioneer-challenge-64.zip +2024-08-31 8394 Pioneer League (22 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-08-31-8394-pioneer-league.zip +2024-09-01 12678589 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-01-12678589-pioneer-challenge-32.zip +2024-09-01 12678594 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-01-12678594-pioneer-challenge-64.zip +2024-09-01 12678595 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-01-12678595-pioneer-challenge-32.zip +2024-09-01 8394 Pioneer League (26 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-01-8394-pioneer-league.zip +2024-09-02 12678527 Pioneer Qualifier (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-02-12678527-pioneer-qualifier.zip +2024-09-02 12678608 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-02-12678608-pioneer-challenge-64.zip +2024-09-02 12678609 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-02-12678609-pioneer-challenge-32.zip +2024-09-02 8394 Pioneer League (37 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-02-8394-pioneer-league.zip +2024-09-03 8394 Pioneer League (27 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-03-8394-pioneer-league.zip +2024-09-04 8394 Pioneer League (31 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-04-8394-pioneer-league.zip +2024-09-05 12682641 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-05-12682641-pioneer-challenge-64.zip +2024-09-05 12682642 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-05-12682642-pioneer-challenge-32.zip +2024-09-05 8394 Pioneer League (25 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-05-8394-pioneer-league.zip +2024-09-06 12682652 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-06-12682652-pioneer-challenge-32.zip +2024-09-06 12682661 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-06-12682661-pioneer-challenge-32.zip +2024-09-06 8394 Pioneer League (28 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-06-8394-pioneer-league.zip +2024-09-07 12682677 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-07-12682677-pioneer-challenge-64.zip +2024-09-07 8394 Pioneer League (26 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-07-8394-pioneer-league.zip +2024-09-08 12682685 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-08-12682685-pioneer-challenge-32.zip +2024-09-08 12682690 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-08-12682690-pioneer-challenge-64.zip +2024-09-08 12682691 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-08-12682691-pioneer-challenge-32.zip +2024-09-08 8394 Pioneer League (25 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-08-8394-pioneer-league.zip +2024-09-09 12682704 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-09-12682704-pioneer-challenge-64.zip +2024-09-09 12682705 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-09-12682705-pioneer-challenge-32.zip +2024-09-09 8394 Pioneer League (33 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-09-8394-pioneer-league.zip +2024-09-10 8394 Pioneer League (26 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-10-8394-pioneer-league.zip +2024-09-11 8394 Pioneer League (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-11-8394-pioneer-league.zip +2024-09-12 12685772 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-12-12685772-pioneer-challenge-64.zip +2024-09-12 12685773 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-12-12685773-pioneer-challenge-32.zip +2024-09-12 8394 Pioneer League (34 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-12-8394-pioneer-league.zip +2024-09-13 12685783 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-13-12685783-pioneer-challenge-32.zip +2024-09-13 12685792 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-13-12685792-pioneer-challenge-32.zip +2024-09-13 8394 Pioneer League (27 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-13-8394-pioneer-league.zip +2024-09-14 12685808 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-14-12685808-pioneer-challenge-64.zip +2024-09-14 8394 Pioneer League (27 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-14-8394-pioneer-league.zip +2024-09-15 12685816 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-15-12685816-pioneer-challenge-32.zip +2024-09-15 12685821 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-15-12685821-pioneer-challenge-64.zip +2024-09-15 12685822 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-15-12685822-pioneer-challenge-32.zip +2024-09-15 8394 Pioneer League (20 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-15-8394-pioneer-league.zip +2024-09-16 12685835 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-16-12685835-pioneer-challenge-64.zip +2024-09-16 12685836 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-16-12685836-pioneer-challenge-32.zip +2024-09-16 8394 Pioneer League (28 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-16-8394-pioneer-league.zip +2024-09-17 8394 Pioneer League (42 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-17-8394-pioneer-league.zip +2024-09-18 8394 Pioneer League (28 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-18-8394-pioneer-league.zip +2024-09-19 12687863 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-19-12687863-pioneer-challenge-64.zip +2024-09-19 12687864 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-19-12687864-pioneer-challenge-32.zip +2024-09-19 8394 Pioneer League (29 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-19-8394-pioneer-league.zip +2024-09-20 12687873 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-20-12687873-pioneer-challenge-32.zip +2024-09-20 12687882 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-20-12687882-pioneer-challenge-32.zip +2024-09-20 8394 Pioneer League (38 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-20-8394-pioneer-league.zip +2024-09-21 12687899 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-21-12687899-pioneer-challenge-64.zip +2024-09-21 8394 Pioneer League (30 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-21-8394-pioneer-league.zip +2024-09-22 12687907 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-22-12687907-pioneer-challenge-32.zip +2024-09-22 12687912 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-22-12687912-pioneer-challenge-64.zip +2024-09-22 12687913 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-22-12687913-pioneer-challenge-32.zip +2024-09-22 8394 Pioneer League (25 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-22-8394-pioneer-league.zip +2024-09-23 12687926 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-23-12687926-pioneer-challenge-64.zip +2024-09-23 12687927 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-23-12687927-pioneer-challenge-32.zip +2024-09-23 8394 Pioneer League (22 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-23-8394-pioneer-league.zip +2024-09-24 8394 Pioneer League (29 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-24-8394-pioneer-league.zip +2024-09-24 8556 Pioneer League (6 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-24-8556-pioneer-league.zip +2024-09-25 8556 Pioneer League (35 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-25-8556-pioneer-league.zip +2024-09-26 12692927 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-26-12692927-pioneer-challenge-64.zip +2024-09-26 12692928 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-26-12692928-pioneer-challenge-32.zip +2024-09-26 8556 Pioneer League (37 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-26-8556-pioneer-league.zip +2024-09-27 12692937 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-27-12692937-pioneer-challenge-32.zip +2024-09-27 12692946 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-27-12692946-pioneer-challenge-32.zip +2024-09-27 8556 Pioneer League (30 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-27-8556-pioneer-league.zip +2024-09-28 12692963 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-28-12692963-pioneer-challenge-64.zip +2024-09-28 8556 Pioneer League (36 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-28-8556-pioneer-league.zip +2024-09-29 12692890 Pioneer Super Qualifier (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-29-12692890-pioneer-super-qualifier.zip +2024-09-29 12692971 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-29-12692971-pioneer-challenge-32.zip +2024-09-29 12692976 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-29-12692976-pioneer-challenge-64.zip +2024-09-29 12692977 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-29-12692977-pioneer-challenge-32.zip +2024-09-29 8556 Pioneer League (41 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-29-8556-pioneer-league.zip +2024-09-30 12692992 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-30-12692992-pioneer-challenge-64.zip +2024-09-30 12692993 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-30-12692993-pioneer-challenge-32.zip +2024-09-30 8556 Pioneer League (40 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-09-30-8556-pioneer-league.zip +2024-10-01 8556 Pioneer League (40 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-01-8556-pioneer-league.zip +2024-10-02 8556 Pioneer League (50 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-02-8556-pioneer-league.zip +2024-10-03 12695978 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-03-12695978-pioneer-challenge-64.zip +2024-10-03 12695979 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-03-12695979-pioneer-challenge-32.zip +2024-10-03 8556 Pioneer League (34 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-03-8556-pioneer-league.zip +2024-10-04 12695981 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-04-12695981-pioneer-challenge-32.zip +2024-10-04 12695988 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-04-12695988-pioneer-challenge-32.zip +2024-10-04 8556 Pioneer League (25 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-04-8556-pioneer-league.zip +2024-10-05 12696005 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-05-12696005-pioneer-challenge-64.zip +2024-10-05 8556 Pioneer League (23 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-05-8556-pioneer-league.zip +2024-10-06 12696013 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-06-12696013-pioneer-challenge-32.zip +2024-10-06 12696018 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-06-12696018-pioneer-challenge-64.zip +2024-10-06 12696019 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-06-12696019-pioneer-challenge-32.zip +2024-10-06 8556 Pioneer League (30 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-06-8556-pioneer-league.zip +2024-10-07 12696034 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-07-12696034-pioneer-challenge-64.zip +2024-10-07 12696035 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-07-12696035-pioneer-challenge-32.zip +2024-10-07 8556 Pioneer League (39 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-07-8556-pioneer-league.zip +2024-10-08 8556 Pioneer League (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-08-8556-pioneer-league.zip +2024-10-09 8556 Pioneer League (35 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-09-8556-pioneer-league.zip +2024-10-10 12698309 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-10-12698309-pioneer-challenge-64.zip +2024-10-10 12698310 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-10-12698310-pioneer-challenge-32.zip +2024-10-10 8556 Pioneer League (29 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-10-8556-pioneer-league.zip +2024-10-11 12698319 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-11-12698319-pioneer-challenge-32.zip +2024-10-11 12698328 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-11-12698328-pioneer-challenge-32.zip +2024-10-11 8556 Pioneer League (21 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-11-8556-pioneer-league.zip +2024-10-12 12698345 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-12-12698345-pioneer-challenge-64.zip +2024-10-12 8556 Pioneer League (22 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-12-8556-pioneer-league.zip +2024-10-13 12698353 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-13-12698353-pioneer-challenge-32.zip +2024-10-13 12698358 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-13-12698358-pioneer-challenge-64.zip +2024-10-13 12698359 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-13-12698359-pioneer-challenge-32.zip +2024-10-13 8556 Pioneer League (31 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-13-8556-pioneer-league.zip +2024-10-14 12698374 Pioneer Challenge 64 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-14-12698374-pioneer-challenge-64.zip +2024-10-14 12698375 Pioneer Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-14-12698375-pioneer-challenge-32.zip +2024-10-14 8556 Pioneer League (27 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-14-8556-pioneer-league.zip +2024-10-15 8556 Pioneer League (21 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2024-10-15-8556-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 fc3755b85d4..7630c735293 100644 --- a/forge-gui/res/lists/net-decks-archive-standard.txt +++ b/forge-gui/res/lists/net-decks-archive-standard.txt @@ -3412,3 +3412,152 @@ 2024-07-07 8201 Standard League (4 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-07-8201-standard-league.zip 2024-07-08 8201 Standard League (6 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-08-8201-standard-league.zip 2024-07-09 8201 Standard League (11 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-09-8201-standard-league.zip + +2024-07-10 8201 Standard League (13 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-10-8201-standard-league.zip +2024-07-11 8201 Standard League (15 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-11-8201-standard-league.zip +2024-07-12 8201 Standard League (11 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-12-8201-standard-league.zip +2024-07-13 12658129 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-13-12658129-standard-challenge-32.zip +2024-07-13 12658136 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-13-12658136-standard-challenge-32.zip +2024-07-13 8201 Standard League (4 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-13-8201-standard-league.zip +2024-07-14 12658155 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-14-12658155-standard-challenge-32.zip +2024-07-14 8201 Standard League (4 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-14-8201-standard-league.zip +2024-07-15 8201 Standard League (7 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-15-8201-standard-league.zip +2024-07-16 8201 Standard League (7 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-16-8201-standard-league.zip +2024-07-17 8201 Standard League (8 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-17-8201-standard-league.zip +2024-07-18 8201 Standard League (13 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-18-8201-standard-league.zip +2024-07-19 8201 Standard League (3 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-19-8201-standard-league.zip +2024-07-20 12661629 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-20-12661629-standard-challenge-32.zip +2024-07-20 12661636 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-20-12661636-standard-challenge-32.zip +2024-07-20 8201 Standard League (10 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-20-8201-standard-league.zip +2024-07-21 12661655 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-21-12661655-standard-challenge-32.zip +2024-07-21 8201 Standard League (1 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-21-8201-standard-league.zip +2024-07-22 8201 Standard League (11 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-22-8201-standard-league.zip +2024-07-23 8201 Standard League (7 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-23-8201-standard-league.zip +2024-07-24 8201 Standard League (14 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-24-8201-standard-league.zip +2024-07-26 12663263 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-26-12663263-standard-challenge-32.zip +2024-07-26 8335 Standard League (2 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-26-8335-standard-league.zip +2024-07-27 12663272 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-27-12663272-standard-challenge-32.zip +2024-07-27 12663279 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-27-12663279-standard-challenge-32.zip +2024-07-27 8335 Standard League (2 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-27-8335-standard-league.zip +2024-07-28 12663298 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-28-12663298-standard-challenge-32.zip +2024-07-28 8335 Standard League (3 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-28-8335-standard-league.zip +2024-07-29 8335 Standard League (5 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-29-8335-standard-league.zip +2024-07-30 8335 Standard League (2 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-30-8335-standard-league.zip +2024-07-31 8335 Standard League (6 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-07-31-8335-standard-league.zip +2024-08-01 8335 Standard League (7 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-01-8335-standard-league.zip +2024-08-02 12666551 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-02-12666551-standard-challenge-32.zip +2024-08-02 8335 Standard League (4 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-02-8335-standard-league.zip +2024-08-03 12666560 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-03-12666560-standard-challenge-32.zip +2024-08-03 12666567 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-03-12666567-standard-challenge-32.zip +2024-08-03 8335 Standard League (6 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-03-8335-standard-league.zip +2024-08-04 12666586 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-04-12666586-standard-challenge-32.zip +2024-08-04 8335 Standard League (8 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-04-8335-standard-league.zip +2024-08-05 8335 Standard League (12 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-05-8335-standard-league.zip +2024-08-06 8335 Standard League (10 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-06-8335-standard-league.zip +2024-08-07 8335 Standard League (13 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-07-8335-standard-league.zip +2024-08-08 8335 Standard League (17 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-08-8335-standard-league.zip +2024-08-09 12670639 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-09-12670639-standard-challenge-32.zip +2024-08-09 8335 Standard League (13 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-09-8335-standard-league.zip +2024-08-10 12670648 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-10-12670648-standard-challenge-32.zip +2024-08-10 12670655 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-10-12670655-standard-challenge-32.zip +2024-08-10 8335 Standard League (7 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-10-8335-standard-league.zip +2024-08-11 12670674 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-11-12670674-standard-challenge-32.zip +2024-08-11 8335 Standard League (9 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-11-8335-standard-league.zip +2024-08-12 8335 Standard League (16 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-12-8335-standard-league.zip +2024-08-13 8335 Standard League (8 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-13-8335-standard-league.zip +2024-08-14 8335 Standard League (10 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-14-8335-standard-league.zip +2024-08-15 8335 Standard League (15 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-15-8335-standard-league.zip +2024-08-16 12674626 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-16-12674626-standard-challenge-32.zip +2024-08-16 8335 Standard League (8 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-16-8335-standard-league.zip +2024-08-17 12674635 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-17-12674635-standard-challenge-32.zip +2024-08-17 12674646 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-17-12674646-standard-challenge-32.zip +2024-08-17 8335 Standard League (11 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-17-8335-standard-league.zip +2024-08-18 12674659 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-18-12674659-standard-challenge-32.zip +2024-08-18 8335 Standard League (10 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-18-8335-standard-league.zip +2024-08-19 8335 Standard League (10 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-19-8335-standard-league.zip +2024-08-20 8335 Standard League (14 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-20-8335-standard-league.zip +2024-08-21 8335 Standard League (9 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-21-8335-standard-league.zip +2024-08-22 8335 Standard League (23 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-22-8335-standard-league.zip +2024-08-23 12676130 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-23-12676130-standard-challenge-32.zip +2024-08-23 8335 Standard League (12 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-23-8335-standard-league.zip +2024-08-24 12676095 Standard Showcase Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-24-12676095-standard-showcase-challenge.zip +2024-08-24 12676139 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-24-12676139-standard-challenge-32.zip +2024-08-24 8335 Standard League (11 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-24-8335-standard-league.zip +2024-08-25 12676163 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-25-12676163-standard-challenge-32.zip +2024-08-25 8335 Standard League (7 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-25-8335-standard-league.zip +2024-08-26 8335 Standard League (13 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-26-8335-standard-league.zip +2024-08-27 8335 Standard League (9 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-27-8335-standard-league.zip +2024-08-28 8335 Standard League (10 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-28-8335-standard-league.zip +2024-08-29 8335 Standard League (9 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-29-8335-standard-league.zip +2024-08-30 12678561 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-30-12678561-standard-challenge-32.zip +2024-08-30 8335 Standard League (9 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-30-8335-standard-league.zip +2024-08-31 12678570 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-31-12678570-standard-challenge-32.zip +2024-08-31 12678577 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-31-12678577-standard-challenge-32.zip +2024-08-31 8335 Standard League (7 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-08-31-8335-standard-league.zip +2024-09-01 12678596 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-01-12678596-standard-challenge-32.zip +2024-09-01 8335 Standard League (9 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-01-8335-standard-league.zip +2024-09-02 8335 Standard League (12 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-02-8335-standard-league.zip +2024-09-03 8335 Standard League (19 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-03-8335-standard-league.zip +2024-09-04 8335 Standard League (10 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-04-8335-standard-league.zip +2024-09-05 8335 Standard League (8 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-05-8335-standard-league.zip +2024-09-06 12682657 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-06-12682657-standard-challenge-32.zip +2024-09-06 8335 Standard League (19 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-06-8335-standard-league.zip +2024-09-07 12682666 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-07-12682666-standard-challenge-32.zip +2024-09-07 12682673 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-07-12682673-standard-challenge-32.zip +2024-09-07 8335 Standard League (9 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-07-8335-standard-league.zip +2024-09-08 12682692 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-08-12682692-standard-challenge-32.zip +2024-09-08 8335 Standard League (12 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-08-8335-standard-league.zip +2024-09-09 8335 Standard League (8 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-09-8335-standard-league.zip +2024-09-10 8335 Standard League (12 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-10-8335-standard-league.zip +2024-09-11 8335 Standard League (14 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-11-8335-standard-league.zip +2024-09-12 8335 Standard League (6 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-12-8335-standard-league.zip +2024-09-13 12685788 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-13-12685788-standard-challenge-32.zip +2024-09-13 8335 Standard League (7 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-13-8335-standard-league.zip +2024-09-14 12685797 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-14-12685797-standard-challenge-32.zip +2024-09-14 12685804 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-14-12685804-standard-challenge-32.zip +2024-09-14 8335 Standard League (8 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-14-8335-standard-league.zip +2024-09-15 12685754 Standard Super Qualifier (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-15-12685754-standard-super-qualifier.zip +2024-09-15 12685823 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-15-12685823-standard-challenge-32.zip +2024-09-15 8335 Standard League (13 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-15-8335-standard-league.zip +2024-09-16 8335 Standard League (8 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-16-8335-standard-league.zip +2024-09-17 8335 Standard League (11 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-17-8335-standard-league.zip +2024-09-18 8335 Standard League (9 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-18-8335-standard-league.zip +2024-09-19 8335 Standard League (8 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-19-8335-standard-league.zip +2024-09-20 12687878 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-20-12687878-standard-challenge-32.zip +2024-09-20 8335 Standard League (3 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-20-8335-standard-league.zip +2024-09-21 12687894 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-21-12687894-standard-challenge-32.zip +2024-09-21 8335 Standard League (8 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-21-8335-standard-league.zip +2024-09-22 12687914 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-22-12687914-standard-challenge-32.zip +2024-09-22 8335 Standard League (6 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-22-8335-standard-league.zip +2024-09-23 8335 Standard League (11 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-23-8335-standard-league.zip +2024-09-24 8335 Standard League (19 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-24-8335-standard-league.zip +2024-09-26 8564 Standard League (12 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-26-8564-standard-league.zip +2024-09-27 12692942 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-27-12692942-standard-challenge-32.zip +2024-09-27 8564 Standard League (4 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-27-8564-standard-league.zip +2024-09-28 12692958 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-28-12692958-standard-challenge-32.zip +2024-09-28 8564 Standard League (7 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-28-8564-standard-league.zip +2024-09-29 12692978 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-29-12692978-standard-challenge-32.zip +2024-09-29 8564 Standard League (6 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-29-8564-standard-league.zip +2024-09-30 8564 Standard League (5 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-09-30-8564-standard-league.zip +2024-10-01 8564 Standard League (5 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-01-8564-standard-league.zip +2024-10-02 8564 Standard League (14 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-02-8564-standard-league.zip +2024-10-03 8564 Standard League (7 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-03-8564-standard-league.zip +2024-10-04 12695984 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-04-12695984-standard-challenge-32.zip +2024-10-04 8564 Standard League (6 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-04-8564-standard-league.zip +2024-10-05 12696000 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-05-12696000-standard-challenge-32.zip +2024-10-05 8564 Standard League (10 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-05-8564-standard-league.zip +2024-10-06 12696020 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-06-12696020-standard-challenge-32.zip +2024-10-06 8564 Standard League (8 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-06-8564-standard-league.zip +2024-10-07 8564 Standard League (13 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-07-8564-standard-league.zip +2024-10-08 8564 Standard League (8 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-08-8564-standard-league.zip +2024-10-09 8564 Standard League (19 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-09-8564-standard-league.zip +2024-10-10 8564 Standard League (11 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-10-8564-standard-league.zip +2024-10-11 12698324 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-11-12698324-standard-challenge-32.zip +2024-10-11 8564 Standard League (10 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-11-8564-standard-league.zip +2024-10-12 12698333 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-12-12698333-standard-challenge-32.zip +2024-10-12 12698340 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-12-12698340-standard-challenge-32.zip +2024-10-12 8564 Standard League (7 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-12-8564-standard-league.zip +2024-10-13 12698360 Standard Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-13-12698360-standard-challenge-32.zip +2024-10-13 8564 Standard League (8 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-13-8564-standard-league.zip +2024-10-14 8564 Standard League (15 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-14-8564-standard-league.zip +2024-10-15 8564 Standard League (11 decks) | https://downloads.cardforge.org/decks/archive/standard/2024-10-15-8564-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 0929639056b..c1307494454 100644 --- a/forge-gui/res/lists/net-decks-archive-vintage.txt +++ b/forge-gui/res/lists/net-decks-archive-vintage.txt @@ -2416,3 +2416,158 @@ 2024-07-07 8193 Vintage League (2 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-07-8193-vintage-league.zip 2024-07-08 8193 Vintage League (5 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-08-8193-vintage-league.zip 2024-07-09 8193 Vintage League (5 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-09-8193-vintage-league.zip + +2024-07-05 12678544 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-05-12678544-vintage-challenge-32.zip +2024-07-10 8193 Vintage League (5 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-10-8193-vintage-league.zip +2024-07-11 12658099 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-11-12658099-vintage-challenge-32.zip +2024-07-11 8193 Vintage League (4 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-11-8193-vintage-league.zip +2024-07-12 12658125 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-12-12658125-vintage-challenge-32.zip +2024-07-12 8193 Vintage League (1 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-12-8193-vintage-league.zip +2024-07-13 12658138 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-13-12658138-vintage-challenge-32.zip +2024-07-13 8193 Vintage League (4 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-13-8193-vintage-league.zip +2024-07-14 12658144 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-14-12658144-vintage-challenge-32.zip +2024-07-14 8193 Vintage League (10 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-14-8193-vintage-league.zip +2024-07-15 8193 Vintage League (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-15-8193-vintage-league.zip +2024-07-16 8193 Vintage League (6 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-16-8193-vintage-league.zip +2024-07-17 8193 Vintage League (5 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-17-8193-vintage-league.zip +2024-07-18 12661187 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-18-12661187-vintage-challenge-32.zip +2024-07-18 8193 Vintage League (5 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-18-8193-vintage-league.zip +2024-07-19 12661625 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-19-12661625-vintage-challenge-32.zip +2024-07-19 8193 Vintage League (5 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-19-8193-vintage-league.zip +2024-07-20 12661638 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-20-12661638-vintage-challenge-32.zip +2024-07-20 8193 Vintage League (4 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-20-8193-vintage-league.zip +2024-07-21 12661644 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-21-12661644-vintage-challenge-32.zip +2024-07-21 8193 Vintage League (7 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-21-8193-vintage-league.zip +2024-07-22 8193 Vintage League (6 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-22-8193-vintage-league.zip +2024-07-23 8193 Vintage League (9 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-23-8193-vintage-league.zip +2024-07-24 8193 Vintage League (5 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-24-8193-vintage-league.zip +2024-07-25 12663242 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-25-12663242-vintage-challenge-32.zip +2024-07-25 8193 Vintage League (4 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-25-8193-vintage-league.zip +2024-07-26 12663268 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-26-12663268-vintage-challenge-32.zip +2024-07-26 8193 Vintage League (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-26-8193-vintage-league.zip +2024-07-27 12663281 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-27-12663281-vintage-challenge-32.zip +2024-07-27 8193 Vintage League (2 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-27-8193-vintage-league.zip +2024-07-28 12663287 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-28-12663287-vintage-challenge-32.zip +2024-07-28 8193 Vintage League (6 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-28-8193-vintage-league.zip +2024-07-29 8193 Vintage League (5 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-29-8193-vintage-league.zip +2024-07-30 8193 Vintage League (2 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-30-8193-vintage-league.zip +2024-07-30 8402 Vintage League (1 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-30-8402-vintage-league.zip +2024-07-31 8402 Vintage League (4 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-07-31-8402-vintage-league.zip +2024-08-01 12666530 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-01-12666530-vintage-challenge-32.zip +2024-08-01 8402 Vintage League (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-01-8402-vintage-league.zip +2024-08-02 12666556 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-02-12666556-vintage-challenge-32.zip +2024-08-02 8402 Vintage League (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-02-8402-vintage-league.zip +2024-08-03 12666569 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-03-12666569-vintage-challenge-32.zip +2024-08-03 8402 Vintage League (6 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-03-8402-vintage-league.zip +2024-08-04 12666575 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-04-12666575-vintage-challenge-32.zip +2024-08-04 8402 Vintage League (6 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-04-8402-vintage-league.zip +2024-08-05 8402 Vintage League (7 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-05-8402-vintage-league.zip +2024-08-06 8402 Vintage League (6 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-06-8402-vintage-league.zip +2024-08-07 8402 Vintage League (5 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-07-8402-vintage-league.zip +2024-08-08 12670618 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-08-12670618-vintage-challenge-32.zip +2024-08-08 8402 Vintage League (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-08-8402-vintage-league.zip +2024-08-09 12670644 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-09-12670644-vintage-challenge-32.zip +2024-08-09 8402 Vintage League (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-09-8402-vintage-league.zip +2024-08-10 12670657 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-10-12670657-vintage-challenge-32.zip +2024-08-10 8402 Vintage League (5 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-10-8402-vintage-league.zip +2024-08-11 12670663 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-11-12670663-vintage-challenge-32.zip +2024-08-11 8402 Vintage League (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-11-8402-vintage-league.zip +2024-08-12 8402 Vintage League (7 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-12-8402-vintage-league.zip +2024-08-13 8402 Vintage League (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-13-8402-vintage-league.zip +2024-08-14 8402 Vintage League (6 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-14-8402-vintage-league.zip +2024-08-15 12674605 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-15-12674605-vintage-challenge-32.zip +2024-08-15 8402 Vintage League (4 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-15-8402-vintage-league.zip +2024-08-16 12674631 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-16-12674631-vintage-challenge-32.zip +2024-08-16 8402 Vintage League (5 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-16-8402-vintage-league.zip +2024-08-17 12674639 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-17-12674639-vintage-challenge-32.zip +2024-08-17 8402 Vintage League (5 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-17-8402-vintage-league.zip +2024-08-18 12674649 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-18-12674649-vintage-challenge-32.zip +2024-08-18 8402 Vintage League (7 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-18-8402-vintage-league.zip +2024-08-19 8402 Vintage League (6 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-19-8402-vintage-league.zip +2024-08-20 8402 Vintage League (2 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-20-8402-vintage-league.zip +2024-08-21 8402 Vintage League (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-21-8402-vintage-league.zip +2024-08-22 12676109 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-22-12676109-vintage-challenge-32.zip +2024-08-22 8402 Vintage League (6 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-22-8402-vintage-league.zip +2024-08-23 12676135 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-23-12676135-vintage-challenge-32.zip +2024-08-23 8402 Vintage League (4 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-23-8402-vintage-league.zip +2024-08-24 12676147 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-24-12676147-vintage-challenge-32.zip +2024-08-24 8402 Vintage League (6 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-24-8402-vintage-league.zip +2024-08-25 12676153 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-25-12676153-vintage-challenge-32.zip +2024-08-25 8402 Vintage League (4 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-25-8402-vintage-league.zip +2024-08-26 8402 Vintage League (7 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-26-8402-vintage-league.zip +2024-08-27 8402 Vintage League (8 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-27-8402-vintage-league.zip +2024-08-28 12676109 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-28-12676109-vintage-challenge-32.zip +2024-08-28 8402 Vintage League (7 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-28-8402-vintage-league.zip +2024-08-29 12678544 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-29-12678544-vintage-challenge-32.zip +2024-08-29 8402 Vintage League (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-29-8402-vintage-league.zip +2024-08-30 12678566 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-30-12678566-vintage-challenge-32.zip +2024-08-30 8402 Vintage League (6 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-30-8402-vintage-league.zip +2024-08-31 12678525 Vintage Qualifier (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-31-12678525-vintage-qualifier.zip +2024-08-31 12678579 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-31-12678579-vintage-challenge-32.zip +2024-08-31 8402 Vintage League (6 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-08-31-8402-vintage-league.zip +2024-09-01 12678585 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-01-12678585-vintage-challenge-32.zip +2024-09-01 8402 Vintage League (2 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-01-8402-vintage-league.zip +2024-09-02 8402 Vintage League (7 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-02-8402-vintage-league.zip +2024-09-03 8402 Vintage League (6 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-03-8402-vintage-league.zip +2024-09-04 8402 Vintage League (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-04-8402-vintage-league.zip +2024-09-05 12682636 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-05-12682636-vintage-challenge-32.zip +2024-09-05 8402 Vintage League (8 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-05-8402-vintage-league.zip +2024-09-06 12682662 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-06-12682662-vintage-challenge-32.zip +2024-09-06 8402 Vintage League (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-06-8402-vintage-league.zip +2024-09-07 12682675 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-07-12682675-vintage-challenge-32.zip +2024-09-07 8402 Vintage League (6 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-07-8402-vintage-league.zip +2024-09-08 12682681 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-08-12682681-vintage-challenge-32.zip +2024-09-08 8402 Vintage League (7 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-08-8402-vintage-league.zip +2024-09-09 8402 Vintage League (5 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-09-8402-vintage-league.zip +2024-09-10 8402 Vintage League (8 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-10-8402-vintage-league.zip +2024-09-11 8402 Vintage League (9 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-11-8402-vintage-league.zip +2024-09-12 12685767 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-12-12685767-vintage-challenge-32.zip +2024-09-12 8402 Vintage League (7 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-12-8402-vintage-league.zip +2024-09-13 12685793 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-13-12685793-vintage-challenge-32.zip +2024-09-13 8402 Vintage League (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-13-8402-vintage-league.zip +2024-09-14 12685806 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-14-12685806-vintage-challenge-32.zip +2024-09-14 8402 Vintage League (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-14-8402-vintage-league.zip +2024-09-15 12685812 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-15-12685812-vintage-challenge-32.zip +2024-09-15 8402 Vintage League (6 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-15-8402-vintage-league.zip +2024-09-16 8402 Vintage League (4 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-16-8402-vintage-league.zip +2024-09-17 8402 Vintage League (2 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-17-8402-vintage-league.zip +2024-09-18 8402 Vintage League (4 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-18-8402-vintage-league.zip +2024-09-19 12687859 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-19-12687859-vintage-challenge-32.zip +2024-09-19 8402 Vintage League (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-19-8402-vintage-league.zip +2024-09-20 12687883 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-20-12687883-vintage-challenge-32.zip +2024-09-20 8402 Vintage League (7 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-20-8402-vintage-league.zip +2024-09-21 12687897 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-21-12687897-vintage-challenge-32.zip +2024-09-21 8402 Vintage League (10 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-21-8402-vintage-league.zip +2024-09-22 8402 Vintage League (5 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-22-8402-vintage-league.zip +2024-09-23 8402 Vintage League (10 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-23-8402-vintage-league.zip +2024-09-24 8402 Vintage League (10 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-24-8402-vintage-league.zip +2024-09-25 8572 Vintage League (4 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-25-8572-vintage-league.zip +2024-09-26 12692922 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-26-12692922-vintage-challenge-32.zip +2024-09-26 8572 Vintage League (7 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-26-8572-vintage-league.zip +2024-09-27 8572 Vintage League (5 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-27-8572-vintage-league.zip +2024-09-28 12692961 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-28-12692961-vintage-challenge-32.zip +2024-09-28 8572 Vintage League (5 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-28-8572-vintage-league.zip +2024-09-29 8572 Vintage League (4 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-29-8572-vintage-league.zip +2024-09-30 8572 Vintage League (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-09-30-8572-vintage-league.zip +2024-10-01 8572 Vintage League (6 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-01-8572-vintage-league.zip +2024-10-02 8572 Vintage League (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-02-8572-vintage-league.zip +2024-10-03 12695977 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-03-12695977-vintage-challenge-32.zip +2024-10-03 8572 Vintage League (4 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-03-8572-vintage-league.zip +2024-10-04 12695989 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-04-12695989-vintage-challenge-32.zip +2024-10-04 8572 Vintage League (6 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-04-8572-vintage-league.zip +2024-10-05 12696003 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-05-12696003-vintage-challenge-32.zip +2024-10-05 8572 Vintage League (2 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-05-8572-vintage-league.zip +2024-10-06 8572 Vintage League (5 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-06-8572-vintage-league.zip +2024-10-07 8572 Vintage League (5 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-07-8572-vintage-league.zip +2024-10-08 8572 Vintage League (4 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-08-8572-vintage-league.zip +2024-10-09 8572 Vintage League (2 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-09-8572-vintage-league.zip +2024-10-10 12698304 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-10-12698304-vintage-challenge-32.zip +2024-10-10 8572 Vintage League (6 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-10-8572-vintage-league.zip +2024-10-11 12698329 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-11-12698329-vintage-challenge-32.zip +2024-10-11 8572 Vintage League (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-11-8572-vintage-league.zip +2024-10-12 12698343 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-12-12698343-vintage-challenge-32.zip +2024-10-12 8572 Vintage League (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-12-8572-vintage-league.zip +2024-10-13 12698349 Vintage Challenge 32 (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-13-12698349-vintage-challenge-32.zip +2024-10-13 8572 Vintage League (6 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-13-8572-vintage-league.zip +2024-10-14 8572 Vintage League (4 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-14-8572-vintage-league.zip +2024-10-15 8572 Vintage League (1 decks) | https://downloads.cardforge.org/decks/archive/vintage/2024-10-15-8572-vintage-league.zip From 9d04766d1353d41bcef632592902c732a23eab59 Mon Sep 17 00:00:00 2001 From: tool4ever Date: Wed, 16 Oct 2024 11:35:40 +0200 Subject: [PATCH 64/91] Script fixes (#6356) --- .../cardsfolder/p/painters_studio_defaced_gallery.txt | 2 +- .../res/cardsfolder/y/yannik_scavenging_sentinel.txt | 11 +++++------ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/forge-gui/res/cardsfolder/p/painters_studio_defaced_gallery.txt b/forge-gui/res/cardsfolder/p/painters_studio_defaced_gallery.txt index 60673c9c0fb..d4a2c5c742e 100644 --- a/forge-gui/res/cardsfolder/p/painters_studio_defaced_gallery.txt +++ b/forge-gui/res/cardsfolder/p/painters_studio_defaced_gallery.txt @@ -3,7 +3,7 @@ ManaCost:2 R Types:Enchantment Room T:Mode$ UnlockDoor | ValidPlayer$ You | ValidCard$ Card.Self | ThisDoor$ True | Execute$ TrigDig | TriggerDescription$ When you unlock this door, exile the top two cards of your library. You may play them until the end of your next turn. SVar:TrigDig:DB$ Dig | Defined$ You | DigNum$ 2 | ChangeNum$ All | DestinationZone$ Exile | RememberChanged$ True | SubAbility$ DBEffect -SVar:DBEffect:DB$ Effect | StaticAbilities$ STPlay | ExileOnMoved$ Exile | RememberObjects$ Remembered | Duration$ UntilTheEndOfYourNextTurn | SubAbility$ DBCleanup +SVar:DBEffect:DB$ Effect | StaticAbilities$ STPlay | FogetOnMoved$ Exile | RememberObjects$ Remembered | Duration$ UntilTheEndOfYourNextTurn | SubAbility$ DBCleanup SVar:STPlay:Mode$ Continuous | MayPlay$ True | EffectZone$ Command | Affected$ Card.IsRemembered | AffectedZone$ Exile | Description$ You may play the chosen card this turn. SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True AlternateMode:Split diff --git a/forge-gui/res/cardsfolder/y/yannik_scavenging_sentinel.txt b/forge-gui/res/cardsfolder/y/yannik_scavenging_sentinel.txt index 92aa7f760b3..fac1d5b7f29 100644 --- a/forge-gui/res/cardsfolder/y/yannik_scavenging_sentinel.txt +++ b/forge-gui/res/cardsfolder/y/yannik_scavenging_sentinel.txt @@ -4,12 +4,11 @@ Types:Legendary Creature Hyena Beast PT:3/3 K:Partner:Nikara, Lair Scavenger:Nikara K:Vigilance -T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigChoose | TriggerDescription$ When CARDNAME enters, exile another creature you control until NICKNAME leaves the battlefield. When you do, distribute +1/+1 counters among any number of target creatures, where X is the exiled creature's power. -SVar:TrigChoose:DB$ ChooseCard | Choices$ Creature.YouCtrl+Other | ChoiceZone$ Battlefield | ChoiceTitle$ Select another creature you control | Mandatory$ True | SubAbility$ DBExile -SVar:DBExile:DB$ ChangeZone | Defined$ ChosenCard | Origin$ Battlefield | Destination$ Exile | RememberLKI$ True | Duration$ UntilHostLeavesPlay | SubAbility$ DBImmediateTrigger -SVar:DBImmediateTrigger:DB$ ImmediateTrigger | Execute$ TrigPutCounters | ConditionDefined$ Remembered | ConditionPresent$ Card | ConditionCompare$ GE1 | TriggerDescription$ When you do, distribute X +1/+1 counters among any number of target creatures, where X is the exiled creature's power. -SVar:TrigPutCounters:DB$ PutCounter | ValidTgts$ Creature | TgtPrompt$ Select target creature to distribute counters to | CounterType$ P1P1 | CounterNum$ X | TargetMin$ 0 | TargetMax$ X | DividedAsYouChoose$ X | SubAbility$ DBCleanup | SpellDescription$ Distribute X +1/+1 counters among any number of target creatures. +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigExile | TriggerDescription$ When CARDNAME enters, exile another creature you control until NICKNAME leaves the battlefield. When you do, distribute +1/+1 counters among any number of target creatures, where X is the exiled creature's power. +SVar:TrigExile:DB$ ChangeZone | Hidden$ True | ChangeType$ Creature.YouCtrl+Other | Mandatory$ True | Origin$ Battlefield | Destination$ Exile | RememberLKI$ True | Duration$ UntilHostLeavesPlay | SubAbility$ DBImmediateTrigger +SVar:DBImmediateTrigger:DB$ ImmediateTrigger | Execute$ TrigPutCounters | ConditionDefined$ Remembered | ConditionPresent$ Card | RememberObjects$ RememberedLKI | SubAbility$ DBCleanup | TriggerDescription$ When you do, distribute X +1/+1 counters among any number of target creatures, where X is the exiled creature's power. +SVar:TrigPutCounters:DB$ PutCounter | ValidTgts$ Creature | TgtPrompt$ Select target creature to distribute counters to | CounterType$ P1P1 | CounterNum$ X | TargetMin$ 0 | TargetMax$ X | DividedAsYouChoose$ X | SpellDescription$ Distribute X +1/+1 counters among any number of target creatures. SVar:X:RememberedLKI$CardPower -SVar:DBCleanup:DB$ Cleanup | ClearChosenCard$ True | ClearRemembered$ True +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True DeckHas:Ability$Counters Oracle:Partner with Nikara, Lair Scavenger\nVigilance\nWhen Yannik, Scavenging Sentinel enters, exile another creature you control until Yannik leaves the battlefield. When you do, distribute X +1/+1 counters among any number of target creatures, where X is the exiled creature's power. From ffda68653319773cd728cf4b7785f695e4a32c27 Mon Sep 17 00:00:00 2001 From: Paul Hammerton <18243520+paulsnoops@users.noreply.github.com> Date: Wed, 16 Oct 2024 15:37:11 +0100 Subject: [PATCH 65/91] Edition updates: SLP --- forge-gui/res/editions/Secret Lair Showdown.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/forge-gui/res/editions/Secret Lair Showdown.txt b/forge-gui/res/editions/Secret Lair Showdown.txt index 089d4c209cc..8235e82e326 100644 --- a/forge-gui/res/editions/Secret Lair Showdown.txt +++ b/forge-gui/res/editions/Secret Lair Showdown.txt @@ -32,5 +32,8 @@ ScryfallCode=SLP 24 M Seasoned Pyromancer @Jack Teagle 25 R Sleight of Hand @Helvetica Blanc 26 R Supreme Verdict @Stephen Andrade +27 R Nexus of Fate @Sophy Hollington +28 R Mayhem Devil @Hisashi Momose +29 R Force of Despair @Jordan Crane 31 L Plains @John Avon F999 C Convention Maro @Mark Rosewater From 28744ff21104549384d632c28f212f8aa7c82893 Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Wed, 16 Oct 2024 10:12:10 -0500 Subject: [PATCH 66/91] Add Fear of Change (#6327) --- .../res/cardsfolder/upcoming/fear_of_change.txt | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/fear_of_change.txt diff --git a/forge-gui/res/cardsfolder/upcoming/fear_of_change.txt b/forge-gui/res/cardsfolder/upcoming/fear_of_change.txt new file mode 100644 index 00000000000..f5b3c2e68a5 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/fear_of_change.txt @@ -0,0 +1,13 @@ +Name:Fear of Change +ManaCost:G U +Types:Enchantment Creature Nightmare +PT:2/3 +T:Mode$ ChangesZone | ValidCard$ Card.Self | Destination$ Battlefield | Execute$ TrigChoose | TriggerDescription$ When this creatures enters or dies, exile another creature you control. If you do, conjure a duplicate of a random creature card with mana value X onto the battlefield, where X is 2 plus the exiled creature's mana value. +T:Mode$ ChangesZone | ValidCard$ Card.Self | Destination$ Graveyard | Execute$ TrigChoose | Secondary$ True | TriggerDescription$ When this creatures enters or dies, exile another creature you control. If you do, conjure a duplicate of a random creature card with mana value X onto the battlefield, where X is 2 plus the exiled creature's mana value. +SVar:TrigChoose:DB$ ChooseCard | Choices$ Creature.YouCtrl+Other | ChoiceZone$ Battlefield | ChoiceTitles$ Select another creature you control | Mandatory$ True | SubAbility$ DBExile +SVar:DBExile:DB$ ChangeZone | Defined$ ChosenCard | RememberChanged$ True | TgtPrompt$ Exile another creature you control. | Origin$ Battlefield | Destination$ Exile | SubAbility$ DBNameCard +SVar:DBNameCard:DB$ NameCard | AtRandom$ True | ValidCards$ Creature.cmcEQX | SubAbility$ DBConjure +SVar:DBConjure:DB$ MakeCard | Name$ ChosenName | Conjure$ True | AtRandom$ True | Zone$ Battlefield | SubAbility$ DBCleanup +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +SVar:X:Remembered$CardManaCost/Plus.2 +Oracle:When this creatures enters or dies, exile another creature you control. If you do, conjure a duplicate of a random creature card with mana value X onto the battlefield, where X is 2 plus the exiled creature's mana value. From c05760bab83d5f652ac8e1dec9e8aafbc4fff710 Mon Sep 17 00:00:00 2001 From: VishalKeerthan Date: Wed, 16 Oct 2024 01:56:09 +0530 Subject: [PATCH 67/91] Update README.md --- README.md | 96 +++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 68 insertions(+), 28 deletions(-) diff --git a/README.md b/README.md index e1e94874b13..67bf3678c72 100644 --- a/README.md +++ b/README.md @@ -1,50 +1,90 @@ -# Forge +# ⚔️ Forge: The Magic: The Gathering Rules Engine -Join the [Discord](https://discord.gg/HcPJNyD66a) +Join the **Forge community** on [Discord](https://discord.gg/HcPJNyD66a)! [![Test build](https://github.com/Card-Forge/forge/actions/workflows/test-build.yaml/badge.svg)](https://github.com/Card-Forge/forge/actions/workflows/test-build.yaml) -## Introduction +--- -Forge is a "Rules Engine" for the game Magic: the Gathering. -Forge is not related in any way with Wizards of the Coast. -Forge is open source software released under the GNU Public License. -Forge is developed by a community of programmers who love trading card games. +## ✨ Introduction -Forge is a cross-platform application and can be run on Windows, Mac, Linux and Android. It is written in Java. The engine is written in Java. The engine is designed to be extensible, so any interested programmer can join and help add new features and cards to the game. Any tech savvy user could read out card scripting system to create cards to be used inside Forge. -The engine allows you to play in a handful of different single player environments or online against other players. +**Forge** is a dynamic and open-source **Rules Engine** tailored for **Magic: The Gathering** enthusiasts. Developed by a community of passionate programmers, Forge allows players to explore the rich universe of MTG through a flexible, engaging platform. +**Note:** Forge operates independently and is not affiliated with Wizards of the Coast. -## Installation +--- -For a more in depth User Guide, please visit the [User Guide](https://github.com/Card-Forge/forge/wiki/User-Guide) +## 🌟 Key Features -For Desktop users, download the [Latest Releases](https://github.com/Card-Forge/forge/releases/latest) which are typically based around Set releases. -Or download the [Snapshot Build](https://downloads.cardforge.org/dailysnapshots/) the file that starts with "forge-gui-desktop". -This file is tarball, and may need to be extracted twice depending on which program is being used to extract it. -We recommend extracting to a new folder rather than on top of an existing installation. -**For users who have played Forge before all of your user data is stored separately so you don't have to worry about losing it on upgrade.** +- **🌐 Cross-Platform Support:** Play on **Windows, Mac, Linux,** and **Android**. +- **🔧 Extensible Architecture:** Built in **Java**, Forge encourages developers to contribute by adding features and cards. +- **🎮 Versatile Gameplay:** Dive into single-player modes or challenge opponents online! -Java 8 or later is required to run Forge. Please make sure is the right version is installed in your environment. Check the user guide for more info. +--- -For Android users, download the APK file from [Snapshot Build](https://downloads.cardforge.org/dailysnapshots/) to your device. -On first run, Forge will download all needed data. +## 🛠️ Installation Guide -## Modes of Play +### 📥 Desktop Installation +1. **Latest Releases:** Download the latest version [here](https://github.com/Card-Forge/forge/releases/latest). +2. **Snapshot Build:** For the latest development version, grab the `forge-gui-desktop` tarball from our [Snapshot Build](https://downloads.cardforge.org/dailysnapshots/). + - **Tip:** Extract to a new folder to prevent data loss. +3. **User Data Management:** Previous players’ data is preserved during upgrades. +4. **Java Requirement:** Ensure you have **Java 8 or later** installed. -Forge has a variety of ways to play the game. The most popular way is our Adventure mode, which is a single player campaign that allows you to play against a variety of AI opponents. -You walk around an overworld map, and can challenge opponents to games of Magic. As you play, you'll collect more cards and items to improve your abilities. +### 📱 Android Installation +- Download the **APK** from the [Snapshot Build](https://downloads.cardforge.org/dailysnapshots/). On the first launch, Forge will automatically download all necessary assets. -Check the [Gameplay Guide](https://github.com/Card-Forge/forge/wiki/Gameplay-Guide) for more info. +--- + +## 🎮 Modes of Play + +Forge offers various exciting gameplay options: + +### 🌍 Adventure Mode +Embark on a thrilling single-player journey where you can: +- Explore an overworld map. +- Challenge diverse AI opponents. +- Collect cards and items to boost your abilities. ![Adventure Mode](https://downloads.cardforge.org/images/site/adventure-mode.png "Adventure Mode") +### 🔍 Quest Modes +Engage in focused gameplay without the overworld exploration—perfect for quick sessions! -Forge has several Quest modes, which is similar but without the overworld map. +### 🤖 AI Formats +Test your skills against AI in multiple formats: +- **Sealed** +- **Draft** +- **Commander** +- **Cube** -You can also play against the AI in a variety of formats, such as Sealed, Draft, Commander and Cube. +For comprehensive gameplay instructions, visit our [Gameplay Guide](https://github.com/Card-Forge/forge/wiki/Gameplay-Guide). -## Questions +--- -If you have any questions, please join the Discord channel. Read the #rules and the frequently-asked-questions. -If your question is not answered there, feel free to ask in the #help channel. +## 💬 Support & Community + +Need help? Join our vibrant Discord community! +- 📜 Read the **#rules** and explore the **FAQ**. +- ❓ Ask your questions in the **#help** channel for assistance. + +--- + +## 🤝 Contributing to Forge + +We love community contributions! Interested in helping? Check out our [Contributing Guidelines](CONTRIBUTING.md) for details on how to get started. + +--- + +## ℹ️ About Forge + +Forge aims to deliver an immersive and customizable Magic: The Gathering experience for fans around the world. + +### 📊 Repository Statistics +- **⭐ Stars:** 969 +- **🍴 Forks:** 559 +- **👥 Contributors:** 149 + +--- + +**📄 License:** [GPL-3.0](LICENSE) From 0edd7d9d87d0646f5f296a58576c4f567af2ca62 Mon Sep 17 00:00:00 2001 From: VishalKeerthan Date: Wed, 16 Oct 2024 09:31:23 +0530 Subject: [PATCH 68/91] Update README.md --- README.md | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 67bf3678c72..16f63accae0 100644 --- a/README.md +++ b/README.md @@ -27,9 +27,9 @@ Join the **Forge community** on [Discord](https://discord.gg/HcPJNyD66a)! ### 📥 Desktop Installation 1. **Latest Releases:** Download the latest version [here](https://github.com/Card-Forge/forge/releases/latest). 2. **Snapshot Build:** For the latest development version, grab the `forge-gui-desktop` tarball from our [Snapshot Build](https://downloads.cardforge.org/dailysnapshots/). - - **Tip:** Extract to a new folder to prevent data loss. + - **Tip:** Extract to a new folder to prevent version conflicts. 3. **User Data Management:** Previous players’ data is preserved during upgrades. -4. **Java Requirement:** Ensure you have **Java 8 or later** installed. +4. **Java Requirement:** Ensure you have **Java 17 or later** installed. ### 📱 Android Installation - Download the **APK** from the [Snapshot Build](https://downloads.cardforge.org/dailysnapshots/). On the first launch, Forge will automatically download all necessary assets. @@ -81,9 +81,12 @@ We love community contributions! Interested in helping? Check out our [Contribut Forge aims to deliver an immersive and customizable Magic: The Gathering experience for fans around the world. ### 📊 Repository Statistics -- **⭐ Stars:** 969 -- **🍴 Forks:** 559 -- **👥 Contributors:** 149 + +| Metric | Count | +|----------------|-------------------------------------------------------------| +| **⭐ Stars:** | [![GitHub stars](https://img.shields.io/github/stars/Card-Forge/forge?style=flat-square)](https://github.com/Card-Forge/forge/stargazers) | +| **🍴 Forks:** | [![GitHub forks](https://img.shields.io/github/forks/Card-Forge/forge?style=flat-square)](https://github.com/Card-Forge/forge/network) | +| **👥 Contributors:** | [![GitHub contributors](https://img.shields.io/github/contributors/Card-Forge/forge?style=flat-square)](https://github.com/Card-Forge/forge/graphs/contributors) | --- From 23be0c568dfe2848830c0a2b06329d404571be12 Mon Sep 17 00:00:00 2001 From: Hans Mackowiak Date: Sun, 7 Apr 2024 19:42:35 +0200 Subject: [PATCH 69/91] AndroidManifest --- .github/workflows/snapshots-android.yml | 6 ++++ forge-gui-android/pom.xml | 33 +++++++++++++++++-- .../{ => src/main}/AndroidManifest.xml | 0 3 files changed, 37 insertions(+), 2 deletions(-) rename forge-gui-android/{ => src/main}/AndroidManifest.xml (100%) diff --git a/.github/workflows/snapshots-android.yml b/.github/workflows/snapshots-android.yml index aef9e707055..c593103a1af 100644 --- a/.github/workflows/snapshots-android.yml +++ b/.github/workflows/snapshots-android.yml @@ -8,6 +8,11 @@ on: description: 'Run the build with tmate debugging enabled (https://github.com/marketplace/actions/debugging-with-tmate)' required: false default: false + upload_package: + type: boolean + description: 'Upload the completed Android package' + required: false + default: true schedule: # * is a special character in YAML so you have to quote this string - cron: '00 19 * * *' @@ -116,6 +121,7 @@ jobs: - name: 📂 Sync files uses: SamKirkland/FTP-Deploy-Action@v4.3.4 + if: ${{ inputs.upload_package }} with: server: ftp.cardforge.org username: ${{ secrets.FTP_USERNAME }} diff --git a/forge-gui-android/pom.xml b/forge-gui-android/pom.xml index bb81ee8b75d..e2d7b325915 100644 --- a/forge-gui-android/pom.xml +++ b/forge-gui-android/pom.xml @@ -239,7 +239,6 @@ 30.0.3 true - ${project.basedir}/AndroidManifest.xml ${project.basedir}/assets ${project.basedir}/res ${project.basedir}/libs @@ -266,6 +265,17 @@ --min-sdk-version=26 + + + update-manifest + + manifest-merger + + + true + + + @@ -306,7 +316,6 @@ false true - ${project.basedir}/AndroidManifest.xml ${project.basedir}/assets ${project.basedir}/res ${project.basedir}/libs @@ -333,6 +342,17 @@ --min-sdk-version=26 + + + update-manifest + + manifest-merger + + + true + + + @@ -414,6 +434,15 @@ zipalign + + update-manifest + + manifest-merger + + + true + + diff --git a/forge-gui-android/AndroidManifest.xml b/forge-gui-android/src/main/AndroidManifest.xml similarity index 100% rename from forge-gui-android/AndroidManifest.xml rename to forge-gui-android/src/main/AndroidManifest.xml From 0c5f7962e2ffc7e8411d1d2acfef909ffdf712a3 Mon Sep 17 00:00:00 2001 From: Hans Mackowiak Date: Thu, 10 Oct 2024 07:28:49 +0200 Subject: [PATCH 70/91] ~ update android-maven-plugin --- .github/workflows/publish-android.yml | 10 +++++----- .github/workflows/snapshots-android.yml | 10 +++++----- forge-gui-android/pom.xml | 6 +++--- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/.github/workflows/publish-android.yml b/.github/workflows/publish-android.yml index 4e8e3904cd1..02d48aaf85c 100644 --- a/.github/workflows/publish-android.yml +++ b/.github/workflows/publish-android.yml @@ -71,11 +71,11 @@ jobs: - name: Install Android maven plugin run: | - mkdir -p ~/.m2/repository/com/simpligility/maven/plugins/android-maven-plugin/4.6.1 - cd ~/.m2/repository/com/simpligility/maven/plugins/android-maven-plugin/4.6.1 - curl -L -o android-maven-plugin-4.6.1.jar https://github.com/Card-Forge/android-maven-plugin/releases/download/4.6.1/android-maven-plugin-4.6.1.jar - curl -L -o android-maven-plugin-4.6.1.pom https://github.com/Card-Forge/android-maven-plugin/releases/download/4.6.1/android-maven-plugin-4.6.1.pom - #mvn install:install-file -Dfile=android-maven-plugin-4.6.1.jar -DgroupId=com.simpligility.maven.plugins -DartifactId=android-maven-plugin -Dversion=4.6.1 -Dpackaging=jar + mkdir -p ~/.m2/repository/com/simpligility/maven/plugins/android-maven-plugin/4.6.2 + cd ~/.m2/repository/com/simpligility/maven/plugins/android-maven-plugin/4.6.2 + curl -L -o android-maven-plugin-4.6.2.jar https://github.com/Card-Forge/android-maven-plugin/releases/download/4.6.2/android-maven-plugin-4.6.2.jar + curl -L -o android-maven-plugin-4.6.2.pom https://github.com/Card-Forge/android-maven-plugin/releases/download/4.6.2/android-maven-plugin-4.6.2.pom + #mvn install:install-file -Dfile=android-maven-plugin-4.6.2.jar -DgroupId=com.simpligility.maven.plugins -DartifactId=android-maven-plugin -Dversion=4.6.2 -Dpackaging=jar cd - mvn install -Dmaven.test.skip=true mvn dependency:tree diff --git a/.github/workflows/snapshots-android.yml b/.github/workflows/snapshots-android.yml index c593103a1af..1bdf3784cbf 100644 --- a/.github/workflows/snapshots-android.yml +++ b/.github/workflows/snapshots-android.yml @@ -79,11 +79,11 @@ jobs: - name: Install Android maven plugin run: | - mkdir -p ~/.m2/repository/com/simpligility/maven/plugins/android-maven-plugin/4.6.1 - cd ~/.m2/repository/com/simpligility/maven/plugins/android-maven-plugin/4.6.1 - curl -L -o android-maven-plugin-4.6.1.jar https://github.com/Card-Forge/android-maven-plugin/releases/download/4.6.1/android-maven-plugin-4.6.1.jar - curl -L -o android-maven-plugin-4.6.1.pom https://github.com/Card-Forge/android-maven-plugin/releases/download/4.6.1/android-maven-plugin-4.6.1.pom - #mvn install:install-file -Dfile=android-maven-plugin-4.6.1.jar -DgroupId=com.simpligility.maven.plugins -DartifactId=android-maven-plugin -Dversion=4.6.1 -Dpackaging=jar + mkdir -p ~/.m2/repository/com/simpligility/maven/plugins/android-maven-plugin/4.6.2 + cd ~/.m2/repository/com/simpligility/maven/plugins/android-maven-plugin/4.6.2 + curl -L -o android-maven-plugin-4.6.2.jar https://github.com/Card-Forge/android-maven-plugin/releases/download/4.6.2/android-maven-plugin-4.6.2.jar + curl -L -o android-maven-plugin-4.6.2.pom https://github.com/Card-Forge/android-maven-plugin/releases/download/4.6.2/android-maven-plugin-4.6.2.pom + #mvn install:install-file -Dfile=android-maven-plugin-4.6.2.jar -DgroupId=com.simpligility.maven.plugins -DartifactId=android-maven-plugin -Dversion=4.6.2 -Dpackaging=jar cd - mvn install -Dmaven.test.skip=true mvn dependency:tree diff --git a/forge-gui-android/pom.xml b/forge-gui-android/pom.xml index e2d7b325915..a68bb777125 100644 --- a/forge-gui-android/pom.xml +++ b/forge-gui-android/pom.xml @@ -228,7 +228,7 @@ 6.2.2 - 4.6.1 + 4.6.2 true @@ -302,7 +302,7 @@ 6.2.2 - 4.6.1 + 4.6.2 true @@ -413,7 +413,7 @@ 6.2.2 - 4.6.1 + 4.6.2 true From 94f183546274931219a8d6342aa1ea3213300da1 Mon Sep 17 00:00:00 2001 From: Hans Mackowiak Date: Mon, 14 Oct 2024 20:30:26 +0200 Subject: [PATCH 71/91] ~ fix version pattern for android.manifest merger --- forge-gui-android/pom.xml | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/forge-gui-android/pom.xml b/forge-gui-android/pom.xml index a68bb777125..ef462a09720 100644 --- a/forge-gui-android/pom.xml +++ b/forge-gui-android/pom.xml @@ -4,6 +4,8 @@ ${maven.build.timestamp} yyyy-MM-dd HH:mm:ss + true + 2,2,2,4 jar -Xms1024m -Xmx1536m @@ -271,9 +273,6 @@ manifest-merger - - true - @@ -348,9 +347,6 @@ manifest-merger - - true - @@ -439,9 +435,6 @@ manifest-merger - - true - From f5b30a6826074f10f3bdc3321fdfb52ae6fe1eff Mon Sep 17 00:00:00 2001 From: Hans Mackowiak Date: Tue, 15 Oct 2024 21:21:40 +0200 Subject: [PATCH 72/91] removed version from AndroidManifest --- forge-gui-android/src/main/AndroidManifest.xml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/forge-gui-android/src/main/AndroidManifest.xml b/forge-gui-android/src/main/AndroidManifest.xml index 68a2032f74a..ac4c1117274 100644 --- a/forge-gui-android/src/main/AndroidManifest.xml +++ b/forge-gui-android/src/main/AndroidManifest.xml @@ -1,8 +1,6 @@ + package="forge.app"> Date: Thu, 17 Oct 2024 07:01:58 +0200 Subject: [PATCH 73/91] Sorin tweaks (#6373) * update * Update enemies.json --- .../common/maps/map/vampirecastle/vampirecastle_4C.tmx | 2 +- forge-gui/res/adventure/common/world/enemies.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/forge-gui/res/adventure/common/maps/map/vampirecastle/vampirecastle_4C.tmx b/forge-gui/res/adventure/common/maps/map/vampirecastle/vampirecastle_4C.tmx index 50d59809cfc..796ed4f99b4 100644 --- a/forge-gui/res/adventure/common/maps/map/vampirecastle/vampirecastle_4C.tmx +++ b/forge-gui/res/adventure/common/maps/map/vampirecastle/vampirecastle_4C.tmx @@ -27,7 +27,7 @@ - + diff --git a/forge-gui/res/adventure/common/world/enemies.json b/forge-gui/res/adventure/common/world/enemies.json index 7e5ca1317cd..28c05bd360e 100644 --- a/forge-gui/res/adventure/common/world/enemies.json +++ b/forge-gui/res/adventure/common/world/enemies.json @@ -12250,7 +12250,7 @@ "difficulty": 1, "speed": 30, "scale": 0.5, - "life": 35, + "life": 55, "rewards": [ { "type": "card", From 54ecbeef6e0c1fa4aee12be4af5d8a1455c4c3c0 Mon Sep 17 00:00:00 2001 From: Jetz72 Date: Thu, 17 Oct 2024 00:03:11 -0500 Subject: [PATCH 74/91] Fix IndexOutOfBoundsException in generateParticipants (#6359) Co-authored-by: Jetz --- .../src/forge/adventure/data/AdventureEventData.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/forge-gui-mobile/src/forge/adventure/data/AdventureEventData.java b/forge-gui-mobile/src/forge/adventure/data/AdventureEventData.java index 21fecb0dca1..b94266a1237 100644 --- a/forge-gui-mobile/src/forge/adventure/data/AdventureEventData.java +++ b/forge-gui-mobile/src/forge/adventure/data/AdventureEventData.java @@ -4,6 +4,7 @@ import com.badlogic.gdx.scenes.scene2d.ui.Image; import com.badlogic.gdx.utils.Array; import com.google.common.base.Predicate; import com.google.common.base.Predicates; +import com.google.common.collect.Iterables; import forge.Forge; import forge.adventure.character.EnemySprite; import forge.adventure.pointofintrest.PointOfInterestChanges; @@ -432,8 +433,9 @@ public class AdventureEventData implements Serializable { public void generateParticipants(int numberOfOpponents) { participants = new AdventureEventParticipant[numberOfOpponents + 1]; - List data = Aggregates.random(WorldData.getAllEnemies(), numberOfOpponents); - data.removeIf(q -> q.nextEnemy != null); + //TODO: Switch this to a stream with StreamUtil.random once the guava migration branch is merged. + Iterable validParticipants = Iterables.filter(WorldData.getAllEnemies(), q -> q.nextEnemy == null); + List data = Aggregates.random(validParticipants, numberOfOpponents); for (int i = 0; i < numberOfOpponents; i++) { participants[i] = new AdventureEventParticipant().generate(data.get(i)); } From 47a8b72b2e53ca20f768a3641e01da49b4955c74 Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Thu, 17 Oct 2024 01:33:46 -0500 Subject: [PATCH 75/91] Add Polterheist (YDSK) (#6365) --- forge-gui/res/cardsfolder/upcoming/polterheist.txt | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/polterheist.txt diff --git a/forge-gui/res/cardsfolder/upcoming/polterheist.txt b/forge-gui/res/cardsfolder/upcoming/polterheist.txt new file mode 100644 index 00000000000..5668519b03b --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/polterheist.txt @@ -0,0 +1,8 @@ +Name:Polterheist +ManaCost:1 B R +Types:Creature Spirit +PT:3/1 +K:Ward:PayLife<2> +T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigHeist | TriggerDescription$ Whenever CARDNAME attacks, heist target opponent's library. +SVar:TrigHeist:DB$ Heist | ValidTgts$ Opponent +Oracle:Ward—Pay 2 life.\nWhenever Polterheist attacks, heist target opponent's library. From b5246c42cfb513290b7a7e3b12fd4a9404814368 Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Thu, 17 Oct 2024 01:35:55 -0500 Subject: [PATCH 76/91] Add Mangled Soulrager (YDSK) (#6364) --- .../res/cardsfolder/upcoming/mangled_soulrager.txt | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/mangled_soulrager.txt diff --git a/forge-gui/res/cardsfolder/upcoming/mangled_soulrager.txt b/forge-gui/res/cardsfolder/upcoming/mangled_soulrager.txt new file mode 100644 index 00000000000..b188e99522f --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/mangled_soulrager.txt @@ -0,0 +1,12 @@ +Name:Mangled Soulrager +ManaCost:1 U R +Types:Creature Spirit +PT:1/4 +K:Flying +K:Cycling:1 U +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ When CARDNAME enters, switch the power and toughness of each creature on the battlefield. You get a twelve-time boon with "Whenever a creature you control enters, switch its power and toughness." +SVar:TrigPump:DB$ PumpAll | ValidCards$ Creature | PumpZone$ Battlefield | KW$ HIDDEN CARDNAME's power and toughness are switched | Duration$ Permanent | SubAbility$ DBBoon +SVar:DBBoon:DB$ Effect | Boon$ True | Duration$ Permanent | Triggers$ CreatureETB +SVar:CreatureETB:Mode$ ChangesZone | ValidCards$ Creature.YouCtrl | Destination$ Battlefield | TriggerZones$ Battlefield | BoonAmount$ 12 | Execute$ TrigPumpETB | TriggerDescription$ Whenever a creature you control enters, switch its power and toughness. +SVar:TrigPumpETB:DB$ Pump | Defined$ TriggeredCardLKICopy | Duration$ Permanent | KW$ HIDDEN CARDNAME's power and toughness are switched +Oracle:Flying\nWhen Mangled Soulrager enters, switch the power and toughness of each creature on the battlefield. You get a twelve-time boon with "Whenever a creature you control enters, switch its power and toughness."\nCycling {1}{U} \ No newline at end of file From dc6be93b25b852147362927366c78fdf9fd0beca Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Thu, 17 Oct 2024 01:48:07 -0500 Subject: [PATCH 77/91] Add Wary Zone Guard (YDSK) (#6353) --- forge-gui/res/cardsfolder/upcoming/wary_zone_guard.txt | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/wary_zone_guard.txt diff --git a/forge-gui/res/cardsfolder/upcoming/wary_zone_guard.txt b/forge-gui/res/cardsfolder/upcoming/wary_zone_guard.txt new file mode 100644 index 00000000000..75d8fcce5d6 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/wary_zone_guard.txt @@ -0,0 +1,10 @@ +Name:Wary Zone Guard +ManaCost:2 G +Types:Creature Human Survivor +PT:3/3 +T:Mode$ Phase | Phase$ Main | PhaseCount$ 2 | ValidPlayer$ You | PresentDefined$ Self | IsPresent$ Card.tapped | TriggerZones$ Battlefield | Execute$ TrigChangeZone | TriggerDescription$ Survival — At the beginning of your second main phase, if CARDNAME is tapped, return up to one target land card from your graveyard to the battlefield. CARDNAME perpetually gets +1/+1. +SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | ValidTgts$ Land.YouCtrl | TargetMin$ 0 | TgtPrompt$ Select up to one target land card from your graveyard | SubAbility$ DBPump +SVar:DBPump:DB$ Pump | Defined$ Self | PumpZone$ Battlefield | NumAtt$ 1 | NumDef$ 1 | Duration$ Perpetual +R:Event$ Moved | ValidCard$ Card.Self | Destination$ Battlefield | ReplacementResult$ Updated | ReplaceWith$ ETBTapped | Description$ CARDNAME enters tapped. +SVar:ETBTapped:DB$ Tap | Defined$ Self | ETB$ True +Oracle:Wary Zone Guard enters tapped.\nSurvival - At the beginning of your second main phase, if Wary Zone Guard is tapped, return up to one target land card from your graveyard to the battlefield. Wary Zone Guard perpetually gets +1/+1. \ No newline at end of file From fbde7dca06c6d82264a42a05ba6cee2244a1400e Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Thu, 17 Oct 2024 01:52:45 -0500 Subject: [PATCH 78/91] Add Anugished Recollection (YDSK) (#6347) --- .../res/cardsfolder/upcoming/anguished_recollection.txt | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/anguished_recollection.txt diff --git a/forge-gui/res/cardsfolder/upcoming/anguished_recollection.txt b/forge-gui/res/cardsfolder/upcoming/anguished_recollection.txt new file mode 100644 index 00000000000..e21e6f95a48 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/anguished_recollection.txt @@ -0,0 +1,7 @@ +Name:Anguished Recollection +ManaCost:1 R +Types:Sorcery +A:SP$ Discard | Defined$ You | NumCards$ 1 | Mode$ TgtChoose | RememberDiscarded$ True | SubAbility$ DBSeek | SpellDescription$ Discard a card. If you do, seek two cards that don't share a card type with the discarded card. +SVar:DBSeek:DB$ Seek | Type$ Card.!sharesCardTypeWith Remembered | ConditionDefined$ Remembered | ConditionPresent$ Card | ConditionCompare$ GE1 | Num$ 2 | SubAbility$ DBCleanup +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +Oracle:Discard a card. If you do, seek two cards that don't share a card type with the discarded card. From c3aa31cb9828e4a3339c2b41a83e3128d81e2330 Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Thu, 17 Oct 2024 01:53:50 -0500 Subject: [PATCH 79/91] Add Welcome the Darkness (YDSK) (#6346) --- .../res/cardsfolder/upcoming/welcome_the_darkness.txt | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/welcome_the_darkness.txt diff --git a/forge-gui/res/cardsfolder/upcoming/welcome_the_darkness.txt b/forge-gui/res/cardsfolder/upcoming/welcome_the_darkness.txt new file mode 100644 index 00000000000..f88d23b6824 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/welcome_the_darkness.txt @@ -0,0 +1,10 @@ +Name:Welcome the Darkness +ManaCost:X B +Types:Instant +A:SP$ Draw | Cost$ XMin1 X B | NumCards$ X | SubAbility$ DBToken +SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ b_x_x_demon_flying | TokenOwner$ You | TokenPower$ X | TokenToughness$ X | SubAbility$ DBSetLife | SpellDescription$ X can't be 0. Draw X cards. Create an X/X black Demon creature token with flying. Your life total becomes X. You can't gain life for the rest of the game. +SVar:DBSetLife:DB$ SetLife | Defined$ You | LifeAmount$ X | SubAbility$ DBEffect +SVar:DBEffect:DB$ Effect | StaticAbilities$ CantGainLife | Duration$ Permanent +SVar:CantGainLife:Mode$ CantGainLife | ValidPlayer$ You | Description$ You can't gain life for the rest of the game. +SVar:X:Count$xPaid +Oracle:X can't be 0.\nDraw X cards. Create an X/X black Demon creature token with flying.\nYour life total becomes X.\nYou can't gain life for the rest of the game. \ No newline at end of file From 9d8df142b4e733e8b9e7517265b631e775b28c06 Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Thu, 17 Oct 2024 01:55:06 -0500 Subject: [PATCH 80/91] Add Replicating Terror (YDSK) (#6344) --- forge-gui/res/cardsfolder/upcoming/replicating_terror.txt | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/replicating_terror.txt diff --git a/forge-gui/res/cardsfolder/upcoming/replicating_terror.txt b/forge-gui/res/cardsfolder/upcoming/replicating_terror.txt new file mode 100644 index 00000000000..be04559ff81 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/replicating_terror.txt @@ -0,0 +1,7 @@ +Name:Replicating Terror +ManaCost:1 B +Types:Instant +A:SP$ Sacrifice | Defined$ Opponent | SacValid$ Creature.nonToken | RememberSacrificed$ True | SacMessage$ nontoken creature | SubAbility$ DBConjure | SpellDescription$ Each opponent sacrifices a nontoken creature. For each creature sacrificed this way, conjure a duplicate of it into your graveyard. +SVar:DBConjure:DB$ MakeCard | DefinedName$ Remembered | Conjure$ True | Zone$ Graveyard | SubAbility$ DBCleanup +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +Oracle:Each opponent sacrifices a nontoken creature. For each creature sacrificed this way, conjure a duplicate of it into your graveyard. \ No newline at end of file From 7c3f8b57f061392b42812ded4d950dd10024152f Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Thu, 17 Oct 2024 01:56:28 -0500 Subject: [PATCH 81/91] Add Fear of Ridicule (YDSK) (#6343) --- .../res/cardsfolder/upcoming/fear_of_ridicule.txt | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/fear_of_ridicule.txt diff --git a/forge-gui/res/cardsfolder/upcoming/fear_of_ridicule.txt b/forge-gui/res/cardsfolder/upcoming/fear_of_ridicule.txt new file mode 100644 index 00000000000..f7da42de671 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/fear_of_ridicule.txt @@ -0,0 +1,10 @@ +Name:Fear of Ridicule +ManaCost:1 B B +Types:Enchantment Creature Nightmare +PT:2/3 +S:Mode$ Continuous | Affected$ Creature.Enchantment+YouCtrl | AddKeyword$ Menace | Description$ Enchantment creatures you control have menace. +T:Mode$ DamageDoneOnce | CombatDamage$ True | ValidSource$ Creature.Enchantment+YouCtrl | ValidTarget$ Player | TriggerZones$ Battlefield | Execute$ TrigExile | TriggerDescription$ Whenever one or more enchantment creatures you control deal combat damage to a player, exile a random creature card from that player's library. Create a token that's a copy of that card, except it's a 1/1 enchantment creature. +SVar:TrigExile:DB$ ChangeZone | DefinedPlayer$ TriggeredTarget | RememberChanged$ True | Destination$ Exile | Origin$ Library | AtRandom$ True | ChangeNum$ 1 | ChangeType$ Card.Creature | Mandatory$ True | SubAbility$ DBCopy +SVar:DBCopy:DB$ CopyPermanent | Defined$ Remembered | SetPower$ 1 | SetToughness$ 1 | AddTypes$ Enchantment & Creature | RemoveCardTypes$ True | RemoveSubTypes$ True | SubAbility$ DBCleanup +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +Oracle:Enchantment creatures you control have menace.\nWhenever one or more enchantment creatures you control deal combat damage to a player, exile a random creature card from that player's library. Create a token that's a copy of that card, except it's a 1/1 enchantment creature. \ No newline at end of file From aedd3bc521b276482dd22a922c765398cd255012 Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Thu, 17 Oct 2024 02:01:46 -0500 Subject: [PATCH 82/91] Add Housemeld (YDSK) (#6341) --- forge-gui/res/cardsfolder/upcoming/housemeld.txt | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/housemeld.txt diff --git a/forge-gui/res/cardsfolder/upcoming/housemeld.txt b/forge-gui/res/cardsfolder/upcoming/housemeld.txt new file mode 100644 index 00000000000..2d216b1e8f1 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/housemeld.txt @@ -0,0 +1,8 @@ +Name:Housemeld +ManaCost:2 U U +Types:Sorcery +A:SP$ ChangeZone | ValidTgts$ Creature | Origin$ Battlefield | Destination$ Exile | TgtPrompt$ Select target creature. | RememberTargets$ True | SubAbility$ DBAnimate | SpellDescription$ Exile target creature. The exiled card perpetually becomes an enchantment. Then put it onto the battlefield under your control. (It loses all other card types.) +SVar:DBAnimate:DB$ Animate | Defined$ Remembered | RemoveCardTypes$ True | Types$ Enchantment | Duration$ Perpetual | SubAbility$ DBChangeZone +SVar:DBChangeZone:DB$ ChangeZone | Defined$ Remembered | Origin$ Exile | Destination$ Battlefield | GainControl$ True | SubAbility$ DBCleanup +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +Oracle:Exile target creature. The exiled card perpetually becomes an enchantment. Then put it onto the battlefield under your control. (It loses all other card types.) \ No newline at end of file From 4aa7f0a4feb607e8cd4b46c336de9609447066f5 Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Thu, 17 Oct 2024 02:07:15 -0500 Subject: [PATCH 83/91] Add Razor Demon (#6334) --- forge-gui/res/cardsfolder/upcoming/razor_demon.txt | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/razor_demon.txt diff --git a/forge-gui/res/cardsfolder/upcoming/razor_demon.txt b/forge-gui/res/cardsfolder/upcoming/razor_demon.txt new file mode 100644 index 00000000000..69a85fab770 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/razor_demon.txt @@ -0,0 +1,12 @@ +Name:Razor Demon +ManaCost:1 B B +Types:Creature Demon +PT:7/7 +K:Flying +K:Ward:Discard<1/Card> +T:Mode$ SpellCast | ValidCard$ Card.Self | Execute$ TrigChooseTgt | TriggerDescription$ When you cast this spell, target opponent drafts a card from CARDNAME's spellbook. They may cast that card without paying its mana cost. +SVar:TrigChooseTgt:DB$ Pump | ValidTgts$ Opponent | IsCurse$ True | TgtPrompt$ Select target opponent | SubAbility$ DBDraft +SVar:DBDraft:DB$ Draft | Defined$ Targeted | Spellbook$ Demonic Bargain,Ever After,Demonic Pact | RememberDrafted$ True | Zone$ Hand | SubAbility$ DBPlay +SVar:DBPlay:DB$ Play | Controller$ Targeted | Defined$ Remembered | WithoutManaCost$ True | Optional$ True | SubAbility$ DBCleanup +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +Oracle:When you cast this spell, target opponent drafts a card from Razor Demon's spellbook. They may cast that card without paying its mana cost.\nFlying\nWard-Discard a card. \ No newline at end of file From ea045f6a15ab1e3b8be08f15883a2ad4fd593e00 Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Thu, 17 Oct 2024 02:08:56 -0500 Subject: [PATCH 84/91] Add Glimmer Hoarder (YDSK) (#6333) --- forge-gui/res/cardsfolder/upcoming/glimmer_hoarder.txt | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/glimmer_hoarder.txt diff --git a/forge-gui/res/cardsfolder/upcoming/glimmer_hoarder.txt b/forge-gui/res/cardsfolder/upcoming/glimmer_hoarder.txt new file mode 100644 index 00000000000..4a89e706936 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/glimmer_hoarder.txt @@ -0,0 +1,9 @@ +Name:Glimmer Hoarder +ManaCost:1 B +Types:Creature Human Survivor +PT:2/2 +T:Mode$ Phase | Phase$ Main | PhaseCount$ 2 | ValidPlayer$ You | PresentDefined$ Self | IsPresent$ Card.tapped | TriggerZones$ Battlefield | Execute$ TrigLoseLife | TriggerDescription$ Survival - At the beginning of your second main phase, if CARDNAME is tapped, you lose 1 life and draft a card from CARDNAME's spellbook. That card perpetually becomes an enchantment in addition to its other types. +SVar:TrigLoseLife:DB$ LoseLife | LifeAmount$ 1 | SubAbility$ DBDraft +SVar:DBDraft:DB$ Draft | Defined$ You | Spellbook$ Angel of Suffering,Aphemia; the Cacophony,Balemurk Leech,Chitinous Crawler,Defiler of Flesh,Gravebreaker Lamia,Mindwrack Harpy,Puppet Raiser,Starving Revenant | RememberDrafted$ True | Zone$ Hand | SubAbility$ DBAnimate +SVar:DBAnimate:DB$ Animate | Defined$ Remembered | Types$ Enchantment | Duration$ Perpetual +Oracle:Survival - At the beginning of your second main phase, if Glimmer Hoarder is tapped, you lose 1 life and draft a card from Glimmer Hoarder's spellbook. That card perpetually becomes an enchantment in addition to its other types. From c44e41b4d3adec88cbd0cb860a3773c84ea38c8e Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Thu, 17 Oct 2024 08:02:41 -0500 Subject: [PATCH 85/91] Add Ethrimik, Imagined Fiend (YDSK) (#6339) --- .../res/cardsfolder/upcoming/ethrimik_imagined_fiend.txt | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/ethrimik_imagined_fiend.txt diff --git a/forge-gui/res/cardsfolder/upcoming/ethrimik_imagined_fiend.txt b/forge-gui/res/cardsfolder/upcoming/ethrimik_imagined_fiend.txt new file mode 100644 index 00000000000..ebabe92b753 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/ethrimik_imagined_fiend.txt @@ -0,0 +1,9 @@ +Name:Ethrimik, Imagined Fiend +ManaCost:2 W W +Types:Legendary Creature Illusion Beast +PT:5/5 +T:Mode$ ChangesZone | ValidCard$ Card.Self | Destination$ Battlefield | Origin$ Any | IsPresent$ Creature.Other+YouCtrl | PresentCompare$ EQ0 | Execute$ TrigManifest | TriggerDescription$ When NICKNAME enters, if you control no other creatures, manifest dread. +SVar:TrigManifest:DB$ ManifestDread +S:Mode$ Continuous | Affected$ Creature.Other+YouCtrl | AddPower$ 1 | AddToughness$ 1 | Description$ Other creatures you control get +1/+1. +S:Mode$ Continuous | Affected$ Card.Self | AddHiddenKeyword$ CARDNAME can't attack or block. | IsPresent$ Creature.Other+YouCtrl | PresentCompare$ GE1 | Description$ As long as you control another creature, NICKNAME can't attack or block. +Oracle:When Ethrimik enters, if you control no other creatures, manifest dread.\nOther creatures you control get +1/+1.\nAs long as you control another creature, Ethrimik can't attack or block. From d2d38d5d260195879a96dd0ac599435bed4f138b Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Thu, 17 Oct 2024 08:03:31 -0500 Subject: [PATCH 86/91] Add Soul Shredder (YDSK) (#6338) --- forge-gui/res/cardsfolder/upcoming/soul_shredder.txt | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/soul_shredder.txt diff --git a/forge-gui/res/cardsfolder/upcoming/soul_shredder.txt b/forge-gui/res/cardsfolder/upcoming/soul_shredder.txt new file mode 100644 index 00000000000..b8313b34c8e --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/soul_shredder.txt @@ -0,0 +1,10 @@ +Name:Soul Shredder +ManaCost:2 +Types:Artifact Vehicle +PT:2/2 +K:Haste +K:Crew:1 +T:Mode$ ChangesZoneAll | TriggerZones$ Battlefield,Graveyard | ValidCards$ Creature.Other | Origin$ Battlefield | Destination$ Graveyard | Execute$ TrigPump | TriggerDescription$ Whenever one or more other creatures die, CARDNAME perpetually gets +1/+1. This ability also triggers if CARDNAME is in your graveyard. +SVar:TrigPump:DB$ Pump | Defined$ Self | NumAtt$ 1 | NumDef$ 1 | Duration$ Perpetual +A:AB$ ChangeZone | Cost$ 1 Sac<2/Creature> | Origin$ Graveyard | Destination$ Battlefield | ActivationZone$ Graveyard | SorcerySpeed$ True | SpellDescription$ Return CARDNAME from your graveyard to the battlefield. +Oracle:Haste\nWhenever one or more other creatures die, Soul Shredder perpetually gets +1/+1. This ability also triggers if Sould Shredder is in your graveyard.\nCrew 1\n{1}, Sacrifice two creatures: Return Soul Shredder from your graveyard to the battlefield. Activate only as a sorcery. From ace00aa5f837028164d3a5217a2089998b0716af Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Thu, 17 Oct 2024 08:11:29 -0500 Subject: [PATCH 87/91] Add Golden Sidekick (YDSK) (#6362) --- .../res/cardsfolder/upcoming/golden_sidekick.txt | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/golden_sidekick.txt diff --git a/forge-gui/res/cardsfolder/upcoming/golden_sidekick.txt b/forge-gui/res/cardsfolder/upcoming/golden_sidekick.txt new file mode 100644 index 00000000000..ed37ced8494 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/golden_sidekick.txt @@ -0,0 +1,12 @@ +Name:Golden Sidekick +ManaCost:W B +Types:Enchantment Creature Bat Glimmer +PT:2/2 +K:Flying +K:Lifelink +T:Mode$ LifeGained | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigChoose | TriggerDescription$ Whenever you gain life, a random creature card in your hand perpetually gets +X/+X, where X is the amount of life you gained. +SVar:TrigChoose:DB$ ChooseCard | ChoiceZone$ Hand | Choices$ Creature.YouOwn | AtRandom$ True | SubAbility$ DBPump +SVar:DBPump:DB$ Pump | Defined$ ChosenCard | PumpZone$ Hand | NumAtt$ X | NumDef$ X | Duration$ Perpetual | SubAbility$ DBCleanup +SVar:DBCleanup:DB$ Cleanup | ClearChosenCard$ True +SVar:X:TriggerCount$LifeAmount +Oracle:Flying, lifelink\nWhenever you gain life, a random creature card in your hand perpetually gets +X/+X, where X is the amount of life you gained. From 54396e7f714440a9eb8439920a958c2eb2d63d1a Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Thu, 17 Oct 2024 08:16:45 -0500 Subject: [PATCH 88/91] Add Unnatural Summons (YDSK) (#6367) --- forge-gui/res/cardsfolder/upcoming/unnatural_summons.txt | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/unnatural_summons.txt diff --git a/forge-gui/res/cardsfolder/upcoming/unnatural_summons.txt b/forge-gui/res/cardsfolder/upcoming/unnatural_summons.txt new file mode 100644 index 00000000000..4ad116ecd5d --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/unnatural_summons.txt @@ -0,0 +1,8 @@ +Name:Unnatural Summons +ManaCost:1 G U +Types:Sorcery +K:Rebound +S:Mode$ ReduceCost | ValidCard$ Card.Self | Type$ Spell | Amount$ X | EffectZone$ All | Description$ If you weren't the starting player, this spell costs {1} less to cast. +SVar:X:Count$StartingPlayer.0.1 +A:SP$ ManifestDread | SpellDescription$ Maniest dread. +Oracle:If you weren't the starting player, this spell costs {1} less to cast.\nManifest dread.\nRebound From 65775f87b4929dd8ef2ccd81cfae414283dff69b Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Thu, 17 Oct 2024 08:25:14 -0500 Subject: [PATCH 89/91] Add Mischievous Lookout (YDSK) (#6366) --- .../res/cardsfolder/upcoming/mischievous_lookout.txt | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/mischievous_lookout.txt diff --git a/forge-gui/res/cardsfolder/upcoming/mischievous_lookout.txt b/forge-gui/res/cardsfolder/upcoming/mischievous_lookout.txt new file mode 100644 index 00000000000..13bd04ae77e --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/mischievous_lookout.txt @@ -0,0 +1,8 @@ +Name:Mischievous Lookout +ManaCost:W B +Types:Enchantment Creature Rat Glimmer +PT:2/1 +S:Mode$ Continuous | Affected$ Permanent.nonCreature+nonAura+nonLand | Condition$ PlayerTurn | MayPlay$ True | MayPlayLimit$ 1 | EffectZone$ Battlefield | AffectedZone$ Graveyard | Description$ Once during each of your turns, you may cast a noncreature, non-Aura permanent spell from your graveyard. +T:Mode$ SpellCast | ValidCard$ Card | ValidSA$ Spell.MayPlaySource | TriggerZones$ Battlefield | Static$ True | Execute$ DBAnimate | TriggerDescription$ If you do, it perpetually becomes a 2/1 Rat creature in addition to its other types. +SVar:DBAnimate:DB$ Animate | Defined$ TriggeredCard | Power$ 2 | Toughness$ 1 | Duration$ Perpetual | Types$ Rat,Creature +Oracle:Once during each of your turns, you may cast a noncreature, non-Aura permanent spell from your graveyard. If you do, it perpetually becomes a 2/1 Rat creature in addition to its other types. From 0048f25db28d4402e078b6f9fc5b3e923fbe5cb1 Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Thu, 17 Oct 2024 08:25:58 -0500 Subject: [PATCH 90/91] Add Wingbright Thief (YDSK) (#6368) --- .../res/cardsfolder/upcoming/wingbright_thief.txt | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/wingbright_thief.txt diff --git a/forge-gui/res/cardsfolder/upcoming/wingbright_thief.txt b/forge-gui/res/cardsfolder/upcoming/wingbright_thief.txt new file mode 100644 index 00000000000..f2487553336 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/wingbright_thief.txt @@ -0,0 +1,14 @@ +Name:Wingbright Thief +ManaCost:1 W U +Types:Enchantment Creature Bird Glimmer +PT:2/3 +K:Flying +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigReveal | TriggerDescription$ When CARDNAME enters, target opponent reveals each nonland card in their hand. You choose one of them. That card perpetually gains “When you cast this spell, each opponent draws a card and gains 3 life.” +SVar:TrigReveal:DB$ Reveal | ValidTgts$ Opponent | RevealAllValid$ Card.nonLand+TargetedPlayerOwn | SubAbility$ DBChooseCard | RememberRevealed$ True +SVar:DBChooseCard:DB$ ChooseCard | ChoiceZone$ Hand | Choices$ Card.IsRemembered | SubAbility$ DBAnimate +SVar:DBAnimate:DB$ Animate | Duration$ Perpetual | Defined$ ChosenCard | Triggers$ CastSpellDrawGainLife | SubAbility$ DBCleanup +SVar:CastSpellDrawGainLife:Mode$ SpellCast | ValidCard$ Card.Self | Execute$ TrigDraw | TriggerDescription$ When you cast this spell, each opponent draws a card and gains 3 life. +SVar:TrigDraw:DB$ Draw | Defined$ Opponent | SubAbility$ DBGainLife +SVar:DBGainLife:DB$ GainLife | Defined$ Opponent | LifeAmount$ 3 +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True | ClearChosenCard$ True +Oracle:Flying\nWhen Wingbright Thief enters, target opponent reveals each nonland card in their hand. You choose one of them. That card perpetually gains “When you cast this spell, each opponent draws a card and gains 3 life.” From 9281f899747094aa2f31a7d5054fed25b3273759 Mon Sep 17 00:00:00 2001 From: TwentyToedToad Date: Thu, 17 Oct 2024 08:27:13 -0500 Subject: [PATCH 91/91] Add Eager Flameguide (YDSK) (#6350) --- .../res/cardsfolder/upcoming/eager_flameguide.txt | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/eager_flameguide.txt diff --git a/forge-gui/res/cardsfolder/upcoming/eager_flameguide.txt b/forge-gui/res/cardsfolder/upcoming/eager_flameguide.txt new file mode 100644 index 00000000000..88d8360de23 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/eager_flameguide.txt @@ -0,0 +1,12 @@ +Name:Eager Flameguide +ManaCost:2 R +Types:Enchantment Creature Raccoon Glimmer +PT:3/3 +T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigAddMana | TriggerDescription$ When CARDNAME enters, add {C}{C}{C}. Spend this mana only to cast creature spells. +SVar:TrigAddMana:DB$ Mana | Produced$ C | Amount$ 3 | RestrictValid$ Spell.Creature +T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Battlefield | Destination$ Graveyard | Execute$ TrigDig | TriggerDescription$ When CARDNAME dies, exile the top two cards of your library. Until the end of your next turn, you may cast creature spells from among the exiled cards. +SVar:TrigDig:DB$ Dig | Defined$ You | DigNum$ 2 | ChangeNum$ All | DestinationZone$ Exile | RememberChanged$ True | SubAbility$ DBEffect +SVar:DBEffect:DB$ Effect | StaticAbilities$ STPlay | RememberObjects$ Remembered | ForgetOnMoved$ Exile | Duration$ UntilTheEndOfYourNextTurn | SubAbility$ DBCleanup +SVar:STPlay:Mode$ Continuous | MayPlay$ True | EffectZone$ Command | Affected$ Card.Creature+IsRemembered+nonLand | AffectedZone$ Exile +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +Oracle:When Eager Flameguide enters, add {C}{C}{C}. Spend this mana only to cast creature spells.\nWhen Eager Flameguide dies, exile the top two cards of your library. Until the end of your next turn, you may cast creature spells from among the exiled cards.