Page 91 of 141

Re: Card Development Questions

PostPosted: 26 Jan 2012, 19:33
by ArsenalNut
jeffwadsworth wrote:Testing Gravestorm.
This works fine for the human, AFAICT, but in the computer's hands, it will target itself. Does anyone see the issue?

| Open
Name:Gravestorm
ManaCost:B B B
Types:Enchantment
Text:no text
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ TrigChangeZone | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of your upkeep, target opponent may exile a card from his or her graveyard. If that player doesn't, you may draw a card.
SVar:TrigChangeZone:AB$ ChangeZone | Cost$ 0 | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | Origin$ Graveyard | Destination$ Exile | ChangeType$ Card | ChangeNum$ 1 | Hidden$ True | Chooser$ Targeted | RememberChanged$ True | OptionalDecider$ Targeted | SubAbility$ DBDraw
SVar:DBDraw:DB$ Draw | NumCards$ 1 | Defined$ You | OptionalDecider$ You | ConditionCheckSVar$ X | ConditionSVarCompare$ EQ0 | SubAbility$ DBCleanup
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
SVar:X:Remembered$Amount
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/gravestorm.jpg
End
Adding "IsCurse$ True" to ChangeZone will make it work. There is a general problem that "changeHiddenTriggerAI" doesn't seem to check the targeting restrictions and canBeTargetedBy only checks if a player is has shroud, hexproof, or protection.

Re: Card Development Questions

PostPosted: 26 Jan 2012, 22:58
by jeffwadsworth
ArsenalNut wrote:
jeffwadsworth wrote:Testing Gravestorm.
This works fine for the human, AFAICT, but in the computer's hands, it will target itself. Does anyone see the issue?

| Open
Name:Gravestorm
ManaCost:B B B
Types:Enchantment
Text:no text
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ TrigChangeZone | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of your upkeep, target opponent may exile a card from his or her graveyard. If that player doesn't, you may draw a card.
SVar:TrigChangeZone:AB$ ChangeZone | Cost$ 0 | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | Origin$ Graveyard | Destination$ Exile | ChangeType$ Card | ChangeNum$ 1 | Hidden$ True | Chooser$ Targeted | RememberChanged$ True | OptionalDecider$ Targeted | SubAbility$ DBDraw
SVar:DBDraw:DB$ Draw | NumCards$ 1 | Defined$ You | OptionalDecider$ You | ConditionCheckSVar$ X | ConditionSVarCompare$ EQ0 | SubAbility$ DBCleanup
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
SVar:X:Remembered$Amount
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/gravestorm.jpg
End
Adding "IsCurse$ True" to ChangeZone will make it work. There is a general problem that "changeHiddenTriggerAI" doesn't seem to check the targeting restrictions and canBeTargetedBy only checks if a player is has shroud, hexproof, or protection.
Thanks. I have scripted tons of them but never ran across this issue.

Re: Card Development Questions

PostPosted: 27 Jan 2012, 04:35
by friarsol
Hey ArsenalNut,

I see you converted Lord of the Pit (and his buddy), does the prompt wait for you to Sacrifice properly? The reason this wasn't converted earlier is that the ability would finish resolving before the Sacrifice could occur.

Re: Card Development Questions

PostPosted: 27 Jan 2012, 05:22
by ArsenalNut
friarsol wrote:Hey ArsenalNut,

I see you converted Lord of the Pit (and his buddy), does the prompt wait for you to Sacrifice properly? The reason this wasn't converted earlier is that the ability would finish resolving before the Sacrifice could occur.
The sequence in my testing is
1) Trigger on stack
2) Hit ok
3) If legal creature can sacrificed, box with choices appears
4) Make choice and hit ok
5) No damage

If no creatures, sacrifice doesn't even prompt, and you take 7 damage.

Re: Card Development Questions

PostPosted: 27 Jan 2012, 08:11
by jeffwadsworth
Hey Sloth, any chance of getting a "Payer$" in AB Untap? If so, we can add Paralyze. The trigger must be placed on Paralyze, not the enchanted card. Here is a working script that places the trigger on the enchanted card which is incorrect.

| Open
Name:Paralyze
ManaCost:B
Types:Enchantment Aura
Text:no text
K:Enchant creature
A:SP$ Attach | Cost$ B | ValidTgts$ Creature | AILogic$ Curse | SubAbility$ DBTap
S:Mode$ Continuous | Affected$ Creature.AttachedBy | AddKeyword$ CARDNAME doesn't untap during your untap step. | AddTrigger$ TrigPhase | AddSVar$ TrigUntap | Description$ When CARDNAME enters the battlefield, tap enchanted creature. Enchanted creature doesn't untap during its controller's untap step. At the beginning of the upkeep of enchanted creature's controller, that player may pay 4. If he or she does, untap the creature.
SVar:DBTap:DB$ Tap | Defined$ Targeted
SVar:TrigPhase:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ TrigUntap | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player may pay 4. If he or she does, untap the creature.
SVar:TrigUntap:AB$ Untap | Cost$ 4
SVar:Rarity:Common
SVar:Picture:http://www.wizards.com/global/images/magic/general/paralyze.jpg
End

Re: Card Development Questions

PostPosted: 27 Jan 2012, 08:52
by moomarc
I've scripted Shirei, Shizo's Caretaker, but it would need Cleanup AF to handle ClearTriggered or something. At the moment the delayed trigger will still go off if Shirei leaves the battlefield and later returns which is incorrect according to the oracle rulings. I tried adding a ClearRemembered to a static leaves the battlefield trigger but that doen't help because the triggered cards aren't remembered objects. I tried adding the code myself but I obviously missed something :?
Shirei, Shizo's Caretaker | Open
Code: Select all
Name:Shirei, Shizo's Caretaker
ManaCost:4 B
Types:Legendary Creature Spirit
Text:no text
PT:2/2
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | TriggerZones$ Battlefield | ValidCard$ Creature.powerLE1+YouOwn | OptionalDecider$ You | DelayedTrigger$ DelTrig | TriggerDescription$ Whenever a creature with power 1 or less is put into your graveyard from the battlefield, you may return that card to the battlefield under your control at the beginning of the next end step if CARDNAME is still on the battlefield.
SVar:DelTrig:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ Player | Execute$ TrigReturn | IsPresent$ Card.Self | PresentZone$ Battlefield | TriggerDescription$ Return creature to the battlefield.
SVar:TrigReturn:AB$ChangeZone | Cost$ 0 | Origin$ Graveyard | Destination$ Battlefield | Defined$ TriggeredCard
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Static$ True | Execute$ DBCleanup
SVar:DBCleanup:DB$Cleanup | ClearTriggered$ True
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/shirei_shizos_caretaker.jpg
SetInfo:BOK|Rare|http://magiccards.info/scans/en/bok/81.jpg
Oracle:Whenever a creature with power 1 or less is put into your graveyard from the battlefield, you may return that card to the battlefield under your control at the beginning of the next end step if Shirei, Shizo's Caretaker is still on the battlefield.
End

Re: Card Development Questions

PostPosted: 27 Jan 2012, 10:30
by Sloth
jeffwadsworth wrote:Hey Sloth, any chance of getting a "Payer$" in AB Untap? If so, we can add Paralyze. The trigger must be placed on Paralyze, not the enchanted card. Here is a working script that places the trigger on the enchanted card which is incorrect.

| Open
Name:Paralyze
ManaCost:B
Types:Enchantment Aura
Text:no text
K:Enchant creature
A:SP$ Attach | Cost$ B | ValidTgts$ Creature | AILogic$ Curse | SubAbility$ DBTap
S:Mode$ Continuous | Affected$ Creature.AttachedBy | AddKeyword$ CARDNAME doesn't untap during your untap step. | AddTrigger$ TrigPhase | AddSVar$ TrigUntap | Description$ When CARDNAME enters the battlefield, tap enchanted creature. Enchanted creature doesn't untap during its controller's untap step. At the beginning of the upkeep of enchanted creature's controller, that player may pay 4. If he or she does, untap the creature.
SVar:DBTap:DB$ Tap | Defined$ Targeted
SVar:TrigPhase:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ TrigUntap | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player may pay 4. If he or she does, untap the creature.
SVar:TrigUntap:AB$ Untap | Cost$ 4
SVar:Rarity:Common
SVar:Picture:http://www.wizards.com/global/images/magic/general/paralyze.jpg
End
A more general solution would be to add a reverse Unless cost. I will think about it.

Re: Card Development Questions

PostPosted: 27 Jan 2012, 13:35
by friarsol
ArsenalNut wrote:
friarsol wrote:Hey ArsenalNut,

I see you converted Lord of the Pit (and his buddy), does the prompt wait for you to Sacrifice properly? The reason this wasn't converted earlier is that the ability would finish resolving before the Sacrifice could occur.
The sequence in my testing is
1) Trigger on stack
2) Hit ok
3) If legal creature can sacrificed, box with choices appears
4) Make choice and hit ok
5) No damage

If no creatures, sacrifice doesn't even prompt, and you take 7 damage.
Ah right. I forgot this got changed from using the Input selector to a popup box. Thanks for clarifying.

Re: Card Development Questions

PostPosted: 27 Jan 2012, 15:13
by squee1968
A few weeks ago, I took a stab at Thornbite Staff in the "Half-Implemented Cards" thread. The reasons why it was unacceptable then were that it didn't have the tribal attach ability, and it didn't grant the untap ability to the creature. Now that Sloth has implemented the other tribal equipments, and I've just seen Jeffwadsworth's use of AddTrigger, I now believe this card is scripted correctly.

Code: Select all
Name:Thornbite Staff
ManaCost:2
Types:Tribal Artifact Shaman Equipment
Text:no text
K:eqPump 4:0/0
S:Mode$ Continuous | Affected$ Card.EquippedBy | AddAbility$ Damage | AddTrigger$ TrigChangeZone | AddSVar$ TrigUntap | Description$ Equipped creature has "2, Tap: This creature deals 1 damage to target creature or player" and "Whenever a creature dies, untap this creature."
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Shaman | TriggerZones$ Battlefield | Execute$ TrigAttach | OptionalDecider$ You | TriggerDescription$ Whenever a Shaman creature enters the battlefield, you may attach CARDNAME to it.
SVar:Damage:AB$DealDamage | Cost$ 2 T | Tgt$ TgtCP | NumDmg$ 1 | SpellDescription$ CARDNAME deals 1 damage to target creature or player.
SVar:TrigChangeZone:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Creature | TriggerZones$ Battlefield | Execute$ TrigUntap | TriggerDescription$ Whenever a creature is put into a graveyard from the battlefield, untap equipped creature.
SVar:TrigUntap:AB$Untap | Cost$ 0
SVar:TrigAttach:DB$ Attach | Cost$ 0 | Defined$ TriggeredCard
SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/thornbite_staff.jpg
SetInfo:MOR|Uncommon|http://magiccards.info/scans/en/mt/145.jpg
Oracle:Equipped creature has “{2}, {T}: This creature deals 1 damage to target creature or player” and “Whenever a creature dies, untap this creature.”\nWhenever a Shaman creature enters the battlefield, you may attach Thornbite Staff to it.
\nEquip {4}
End

Re: Card Development Questions

PostPosted: 27 Jan 2012, 16:45
by Sloth
squee1968 wrote:A few weeks ago, I took a stab at Thornbite Staff in the "Half-Implemented Cards" thread. The reasons why it was unacceptable then were that it didn't have the tribal attach ability, and it didn't grant the untap ability to the creature. Now that Sloth has implemented the other tribal equipments, and I've just seen Jeffwadsworth's use of AddTrigger, I now believe this card is scripted correctly.

Code: Select all
Name:Thornbite Staff
ManaCost:2
Types:Tribal Artifact Shaman Equipment
Text:no text
K:eqPump 4:0/0
S:Mode$ Continuous | Affected$ Card.EquippedBy | AddAbility$ Damage | AddTrigger$ TrigChangeZone | AddSVar$ TrigUntap | Description$ Equipped creature has "2, Tap: This creature deals 1 damage to target creature or player" and "Whenever a creature dies, untap this creature."
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Shaman | TriggerZones$ Battlefield | Execute$ TrigAttach | OptionalDecider$ You | TriggerDescription$ Whenever a Shaman creature enters the battlefield, you may attach CARDNAME to it.
SVar:Damage:AB$DealDamage | Cost$ 2 T | Tgt$ TgtCP | NumDmg$ 1 | SpellDescription$ CARDNAME deals 1 damage to target creature or player.
SVar:TrigChangeZone:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Creature | TriggerZones$ Battlefield | Execute$ TrigUntap | TriggerDescription$ Whenever a creature is put into a graveyard from the battlefield, untap equipped creature.
SVar:TrigUntap:AB$Untap | Cost$ 0
SVar:TrigAttach:DB$ Attach | Cost$ 0 | Defined$ TriggeredCard
SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/thornbite_staff.jpg
SetInfo:MOR|Uncommon|http://magiccards.info/scans/en/mt/145.jpg
Oracle:Equipped creature has “{2}, {T}: This creature deals 1 damage to target creature or player” and “Whenever a creature dies, untap this creature.”\nWhenever a Shaman creature enters the battlefield, you may attach Thornbite Staff to it.
\nEquip {4}
End
Added! thanks squee1968.

Re: Card Development Questions

PostPosted: 27 Jan 2012, 17:45
by squee1968
Then this one should work as well.

Code: Select all
Name:Diviner's Wand
ManaCost:3
Types:Tribal Artifact Wizard Equipment
Text:no text
K:eqPump 3:0/0
S:Mode$ Continuous | Affected$ Card.EquippedBy | AddAbility$ Draw | AddTrigger$ TrigDraw | AddSVar$ TrigPump | Description$ Equipped creature has "Whenever you draw a card, this creature gets +1/+1 and gains flying until end of turn" and "4: Draw a card."
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Wizard | TriggerZones$ Battlefield | Execute$ TrigAttach | OptionalDecider$ You | TriggerDescription$ Whenever a Wizard creature enters the battlefield, you may attach CARDNAME to it.
SVar:TrigAttach:DB$ Attach | Cost$ 0 | Defined$ TriggeredCard
SVar:TrigDraw:Mode$ Drawn | ValidCard$ Card.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ Whenever you draw a card, this creature gets +1/+1 and gains flying until end of turn
SVar:TrigPump:AB$ Pump | Cost$ 0 | Defined$ Self | NumAtt$ 1 | NumDef$ 1 | KW$ Flying
SVar:Draw:AB$Draw | Cost$ 4 | NumCards$ 1 | SpellDescription$ Draw a card.
SVar:RemAIDeck:True
SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/diviners_wand.jpg
SetInfo:MOR|Uncommon|http://magiccards.info/scans/mt/en/142.jpg
Oracle:Equipped creature has "Whenever you draw a card, this creature gets +1/+1 and gains flying until end of turn" and "{4}: Draw a card."\nWhenever a Wizard creature enters the battlefield, you may attach Diviner’s Wand to it.\nEquip {3}
End

Re: Card Development Questions

PostPosted: 27 Jan 2012, 19:06
by Sloth
moomarc wrote:I've scripted Shirei, Shizo's Caretaker, but it would need Cleanup AF to handle ClearTriggered or something. At the moment the delayed trigger will still go off if Shirei leaves the battlefield and later returns which is incorrect according to the oracle rulings. I tried adding a ClearRemembered to a static leaves the battlefield trigger but that doen't help because the triggered cards aren't remembered objects. I tried adding the code myself but I obviously missed something :?
Shirei, Shizo's Caretaker | Open
Code: Select all
Name:Shirei, Shizo's Caretaker
ManaCost:4 B
Types:Legendary Creature Spirit
Text:no text
PT:2/2
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | TriggerZones$ Battlefield | ValidCard$ Creature.powerLE1+YouOwn | OptionalDecider$ You | DelayedTrigger$ DelTrig | TriggerDescription$ Whenever a creature with power 1 or less is put into your graveyard from the battlefield, you may return that card to the battlefield under your control at the beginning of the next end step if CARDNAME is still on the battlefield.
SVar:DelTrig:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ Player | Execute$ TrigReturn | IsPresent$ Card.Self | PresentZone$ Battlefield | TriggerDescription$ Return creature to the battlefield.
SVar:TrigReturn:AB$ChangeZone | Cost$ 0 | Origin$ Graveyard | Destination$ Battlefield | Defined$ TriggeredCard
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Static$ True | Execute$ DBCleanup
SVar:DBCleanup:DB$Cleanup | ClearTriggered$ True
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/shirei_shizos_caretaker.jpg
SetInfo:BOK|Rare|http://magiccards.info/scans/en/bok/81.jpg
Oracle:Whenever a creature with power 1 or less is put into your graveyard from the battlefield, you may return that card to the battlefield under your control at the beginning of the next end step if Shirei, Shizo's Caretaker is still on the battlefield.
End
Added!

squee1968 wrote:Then this one should work as well.

Code: Select all
Name:Diviner's Wand
ManaCost:3
Types:Tribal Artifact Wizard Equipment
Text:no text
K:eqPump 3:0/0
S:Mode$ Continuous | Affected$ Card.EquippedBy | AddAbility$ Draw | AddTrigger$ TrigDraw | AddSVar$ TrigPump | Description$ Equipped creature has "Whenever you draw a card, this creature gets +1/+1 and gains flying until end of turn" and "4: Draw a card."
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Wizard | TriggerZones$ Battlefield | Execute$ TrigAttach | OptionalDecider$ You | TriggerDescription$ Whenever a Wizard creature enters the battlefield, you may attach CARDNAME to it.
SVar:TrigAttach:DB$ Attach | Cost$ 0 | Defined$ TriggeredCard
SVar:TrigDraw:Mode$ Drawn | ValidCard$ Card.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ Whenever you draw a card, this creature gets +1/+1 and gains flying until end of turn
SVar:TrigPump:AB$ Pump | Cost$ 0 | Defined$ Self | NumAtt$ 1 | NumDef$ 1 | KW$ Flying
SVar:Draw:AB$Draw | Cost$ 4 | NumCards$ 1 | SpellDescription$ Draw a card.
SVar:RemAIDeck:True
SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/diviners_wand.jpg
SetInfo:MOR|Uncommon|http://magiccards.info/scans/mt/en/142.jpg
Oracle:Equipped creature has "Whenever you draw a card, this creature gets +1/+1 and gains flying until end of turn" and "{4}: Draw a card."\nWhenever a Wizard creature enters the battlefield, you may attach Diviner’s Wand to it.\nEquip {3}
End
Added!

Re: Card Development Questions

PostPosted: 29 Jan 2012, 21:44
by squee1968
Here's Pulse of the Forge

Code: Select all
Name:Pulse of the Forge
ManaCost:1 R R
Types:Instant
Text:no text
A:SP$ DealDamage | Cost$ 1 R R | ValidTgts$ Player | NumDmg$ 4 | SubAbility$ TrigReturn | SpellDescription$ CARDNAME deals 4 damage to target player. Then if that player has more life than you, return CARDNAME to its owner’s hand.
SVar:TrigReturn:DB$ ChangeZone | ConditionLifeTotal$ You | ConditionLifeAmount$ LTX | Defined$ Self | Origin$ Stack | Destination$ Hand | ConditionDescription$ If an opponent has more life than you, return CARDNAME to its owner’s hand.
SVar:X:TargetedPlayer$LifeTotal
SVar:RemAIDeck:True
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/pulse_of_the_forge.jpg
SetInfo:DST|Rare|http://magiccards.info/scans/ds/en/66.jpg
Oracle:Pulse of the Forge deals 4 damage to target player. Then if that player has more life than you, return Pulse of the Forge to its owner’s hand.
End
I tried to do Pulse of the Grid, but although I tried a dozen different ways, including Check SVar's and different ConditionCompares and such, I couldn't for the life of me get the card to return reliably under all conditions. I'll post what I've got here, and maybe (please?) someone will fix it.

Code: Select all
Name:Pulse of the Grid
ManaCost:1 U U
Types:Instant
Text:no text
A:SP$ Draw | Cost$ 1 U U | NumCards$ 2 | SubAbility$ DBDiscard | SpellDescription$ Draw two cards, then discard a card. Then if an opponent has more cards in hand than you, return CARDNAME to its owner's hand.
SVar:DBDiscard:DB$Discard | NumCards$ 1 | Mode$ TgtChoose | SubAbility$ TrigReturn
SVar:TrigReturn:DB$ ChangeZone | Defined$ Self | Origin$ Stack | Destination$ Hand | ConditionPresent$ Card.YouDontCtrl | ConditionZone$ Hand | ConditionSVarCompare$ GTX | ConditionDescription$ If an opponent has more cards in hand than you, return CARDNAME to its owner's hand.
SVar:X:Count$CardsInYourHand
SVar:RemAIDeck:True
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/pulse_of_the_grid.jpg
SetInfo:DST|Rare|http://magiccards.info/scans/ds/en/29.jpg
Oracle:Draw two cards, then discard a card. Then if an opponent has more cards in hand than you, return Pulse of the Grid to its owner's hand.
End
EDIT: Changed the Svar according to Slapshot5's suggestion.

Re: Card Development Questions

PostPosted: 29 Jan 2012, 21:52
by slapshot5
I don't think Pulse of the Forge is correct. What if you target yourself? I think:

SVar:X:TargetedPlayer$LifeTotal

is what you need here. (See Beacon of Immortality)

-slapshot5

Re: Card Development Questions

PostPosted: 30 Jan 2012, 01:23
by ArsenalNut
squee1968 wrote:I tried to do Pulse of the Grid, but although I tried a dozen different ways, including Check SVar's and different ConditionCompares and such, I couldn't for the life of me get the card to return reliably under all conditions. I'll post what I've got here, and maybe (please?) someone will fix it.

Code: Select all
Name:Pulse of the Grid
ManaCost:1 U U
Types:Instant
Text:no text
A:SP$ Draw | Cost$ 1 U U | NumCards$ 2 | SubAbility$ DBDiscard | SpellDescription$ Draw two cards, then discard a card. Then if an opponent has more cards in hand than you, return CARDNAME to its owner's hand.
SVar:DBDiscard:DB$Discard | NumCards$ 1 | Mode$ TgtChoose | SubAbility$ TrigReturn
SVar:TrigReturn:DB$ ChangeZone | Defined$ Self | Origin$ Stack | Destination$ Hand | ConditionPresent$ Card.YouDontCtrl | ConditionZone$ Hand | ConditionSVarCompare$ GTX | ConditionDescription$ If an opponent has more cards in hand than you, return CARDNAME to its owner's hand.
SVar:X:Count$CardsInYourHand
SVar:RemAIDeck:True
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/pulse_of_the_grid.jpg
SetInfo:DST|Rare|http://magiccards.info/scans/ds/en/29.jpg
Oracle:Draw two cards, then discard a card. Then if an opponent has more cards in hand than you, return Pulse of the Grid to its owner's hand.
End
I tried this and it seems to work
Pulse of the Grid | Open
Name:Pulse of the Grid
ManaCost:1 U U
Types:Instant
Text:no text
A:SP$ Draw | Cost$ 1 U U | NumCards$ 2 | SubAbility$ DBDiscard | SpellDescription$ Draw two cards, then discard a card. Then if an opponent has more cards in hand than you, return CARDNAME to its owner's hand.
SVar:DBDiscard:DB$Discard | NumCards$ 1 | Mode$ TgtChoose | SubAbility$ TrigReturn
SVar:TrigReturn:DB$ ChangeZone | Defined$ Self | Origin$ Stack | Destination$ Hand | ConditionCheckSVar$ X | ConditionSVarCompare$ GE1
SVar:Y:Count$CardsInYourHand
SVar:X:Count$CardsInOppHand/Minus.Y
SVar:RemAIDeck:True
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/pulse_of_the_grid.jpg
SetInfo:DST|Rare|http://magiccards.info/scans/ds/en/29.jpg
Oracle:Draw two cards, then discard a card. Then if an opponent has more cards in hand than you, return Pulse of the Grid to its owner's hand.
End