It is currently 12 Sep 2025, 23:30
   
Text Size

Card Contributions

Post MTG Forge Related Programming Questions Here

Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins

Re: Card Contributions

Postby moomarc » 28 Oct 2011, 16:48

Sloth wrote:
moomarc wrote:Sounds excellent. I'll make the change. (I hadn't even realized that I'd scripted a powerful card :shock: Too busy trying to get token creating cards done. :lol: I even tested with changelings to make sure everything was working properly, but never quite registered its potential)

Edit: Script updated (r11519). Also updated script in previous post.
Spirit Mirror is a nice card. The SVar BuffedBy will tell the AI to play Reflection cards he does not control during Main 1, which is a little pointless. SVar:PlayMain1:TRUE may be considered, but is not really needed.
Now I'm not sure what to do. Should I just remove BuffedBy line completely or replace it or leave as is? Probably better for one of the pros to just put the finishing touches on it, so I'm leaving as is and you can just fix that line. :oops:
-Marc
User avatar
moomarc
Pixel Commander
 
Posts: 2091
Joined: 04 Jun 2010, 15:22
Location: Johannesburg, South Africa
Has thanked: 371 times
Been thanked: 372 times

Re: Card Contributions

Postby moomarc » 07 Nov 2011, 16:36

Just added Ovinomancer:
Ovinomancer | Open
Code: Select all
Name:Ovinomancer
ManaCost:2 U
Types:Creature Human Wizard
Text:no text
PT:0/1
T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigETB | TriggerDescription$ When CARDNAME enters the battlefield, sacrifice it unless you return three basic lands you control to their owner's hand.
SVar:TrigETB:DB$ ChangeZone | Cost$ 0 | Origin$ Battlefield | Destination$ Hand | ValidTgts$ Land.Basic+YouCtrl | TargetMin$ 0 | TargetMax$ 3 | TgtPrompt$ Select 3 basic lands you control | Mandatory$ True | RememberChanged$ True | SubAbility$ DBSacEnforced | SpellDescription$ Return three basic lands you control to their owner's hand.
SVar:DBSacEnforced:DB$ Sacrifice | Defined$ Self | ConditionDefined$ Remembered | ConditionPresent$ Land | ConditionCompare$ LT3 | ConditionDescription$ Sacrifice CARDNAME if you do not return 3 basic lands to their owner's hand. | SubAbility$ DBCleanUp
SVar:DBCleanUp:DB$Cleanup | ClearRemembered$ True
A:AB$ Destroy | Cost$ Return<1/CARDNAME> T | ValidTgts$ Creature | TgtPrompt$ Select target creature | NoRegen$ True | SubAbility$ DBToken | SpellDescription$ Destroy target creature. It can't be regenerated.
SVar:DBToken:DB$Token | TokenAmount$ 1 | TokenName$ Sheep | TokenTypes$ Creature,Sheep | TokenOwner$ TargetedController | TokenColors$ Green | TokenPower$ 0 | TokenToughness$ 1 | SpellDescription$ That creature's controller puts a 0/1 green Sheep creature token onto the battlefield.
SVar:Rarity:Uncommon
End
I'm fairly sure can be used as a template to script Coral Atoll and friends from Visions set. I'm not touching them seeing as I'd have to remove code blocks.

I also thought it could be used as a base for Avatar of Discord and other similar cards, but the timing on the Discard factory is different to the usual ChangeZone. With discard, the creature is sacrificed before the discard targets are chosen, so obviously this solution doesn't work. Is there any way around it? I considered using ChangeZone Hand->Graveyard, but I don't think that will trigger cards such Abyssal Nocturnus which are triggered by discarding. Here's the base script:
Avatar of Discord | Open
Code: Select all
Name:Avatar of Discord
ManaCost:BR BR BR
Types:Creature Avatar
Text:no text
PT:5/3
K:Flying
T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigETB | TriggerDescription$ When CARDNAME enters the battlefield, sacrifice it unless you discard two cards.
SVar:TrigETB:DB$ Discard | Cost$ 0 | Defined$ You | NumCards$ 2 | Mode$ TgtChoose | RememberDiscarded$ True | SubAbility$ DBSacEnforced | SpellDescription$ Discard two cards.
SVar:DBSacEnforced:DB$ Sacrifice | Defined$ Self | ConditionDefined$ Remembered | ConditionPresent$ Card | ConditionCompare$ LT2 | ConditionDescription$ Sacrifice CARDNAME unless you discard two cards. | SubAbility$ DBCleanUp
SVar:DBCleanUp:DB$Cleanup | ClearRemembered$ True
SVar:Rarity:Rare
End
-Marc
User avatar
moomarc
Pixel Commander
 
Posts: 2091
Joined: 04 Jun 2010, 15:22
Location: Johannesburg, South Africa
Has thanked: 371 times
Been thanked: 372 times

Re: Card Contributions

Postby friarsol » 07 Nov 2011, 16:40

Ovinomancer isn't quite right, since your script targets, and Ovinomancer doesn't. While you might be able to do it with Valid and Hidden$ True, I think it's better to just have it wait until we can use Unless for the Cost objects. Which is one of the next big items that will enable a ton more cards (and lots of hardcoded cards to be scripted)
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Card Contributions

Postby moomarc » 07 Nov 2011, 17:00

friarsol wrote:Ovinomancer isn't quite right, since your script targets, and Ovinomancer doesn't. While you might be able to do it with Valid and Hidden$ True, I think it's better to just have it wait until we can use Unless for the Cost objects. Which is one of the next big items that will enable a ton more cards (and lots of hardcoded cards to be scripted)
Thanks for pointing that out. Sorry about the premature commit then :oops: How do I undo a commit?
-Marc
User avatar
moomarc
Pixel Commander
 
Posts: 2091
Joined: 04 Jun 2010, 15:22
Location: Johannesburg, South Africa
Has thanked: 371 times
Been thanked: 372 times

Re: Card Contributions

Postby jeffwadsworth » 07 Nov 2011, 21:19

moomarc wrote:
friarsol wrote:Ovinomancer isn't quite right, since your script targets, and Ovinomancer doesn't. While you might be able to do it with Valid and Hidden$ True, I think it's better to just have it wait until we can use Unless for the Cost objects. Which is one of the next big items that will enable a ton more cards (and lots of hardcoded cards to be scripted)
Thanks for pointing that out. Sorry about the premature commit then :oops: How do I undo a commit?
Just delete the .txt file and commit.
jeffwadsworth
Super Tester Elite
 
Posts: 1172
Joined: 20 Oct 2010, 04:47
Location: USA
Has thanked: 287 times
Been thanked: 70 times

Re: Card Contributions

Postby moomarc » 09 Nov 2011, 16:58

I want to add Zombie Assassin, but during cost payment for the ability, once you've exiled the assassin, if you then cancel the rest of the payment, the assassin remains exiled. Is it fine to commit like this?
Zombie Assassin | Open
Code: Select all
Name:Zombie Assassin
ManaCost:4 B
Types:Creature Zombie Assassin
Text:no text
PT:3/2
A:AB$ Destroy | Cost$ T ExileFromGrave<2/Card> Exile<1/CARDNAME> | CostDesc$ T, Exile two cards from your graveyard and Zombie Assassin: | ValidTgts$ Creature.nonBlack | TgtPrompt$ Select target nonblack creature | NoRegen$ True | SpellDescription$ Destroy target nonblack creature. It can't be regenerated.
SVar:Rarity:Common
End
-Marc
User avatar
moomarc
Pixel Commander
 
Posts: 2091
Joined: 04 Jun 2010, 15:22
Location: Johannesburg, South Africa
Has thanked: 371 times
Been thanked: 372 times

Re: Card Contributions

Postby friarsol » 09 Nov 2011, 17:49

moomarc wrote:I want to add Zombie Assassin, but during cost payment for the ability, once you've exiled the assassin, if you then cancel the rest of the payment, the assassin remains exiled. Is it fine to commit like this?
Yea, we don't really have an undoing of certain costs right now. That was part of the reason I wanted to redo the costs when I did, so the "payment" of costs wouldn't happen until after everything has been marked completely paid for. I haven't had time to come back and finish that, but I do plan to get around to it at some point.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Card Contributions

Postby moomarc » 09 Nov 2011, 18:41

friarsol wrote:
moomarc wrote:I want to add Zombie Assassin, but during cost payment for the ability, once you've exiled the assassin, if you then cancel the rest of the payment, the assassin remains exiled. Is it fine to commit like this?
Yea, we don't really have an undoing of certain costs right now. That was part of the reason I wanted to redo the costs when I did, so the "payment" of costs wouldn't happen until after everything has been marked completely paid for. I haven't had time to come back and finish that, but I do plan to get around to it at some point.
So can I comit as is for now or hold off until you,ve managed to sort out the costs? As it stands it won't let you activate the ability unless you have at least 2 cards on your yard, so I think it should be safe.
-Marc
User avatar
moomarc
Pixel Commander
 
Posts: 2091
Joined: 04 Jun 2010, 15:22
Location: Johannesburg, South Africa
Has thanked: 371 times
Been thanked: 372 times

Re: Card Contributions

Postby Sloth » 09 Nov 2011, 19:15

moomarc wrote:So can I comit as is for now or hold off until you,ve managed to sort out the costs? As it stands it won't let you activate the ability unless you have at least 2 cards on your yard, so I think it should be safe.
Yes commit it. The canceling of costs is just a user friendliness feature.
User avatar
Sloth
Programmer
 
Posts: 3498
Joined: 23 Jun 2009, 19:40
Has thanked: 125 times
Been thanked: 507 times

Re: Card Contributions

Postby DracanII » 11 Nov 2011, 11:11

Hi
would like submit my try at Victimize.

Name:Victimize
ManaCost:2 B
Types:Sorcery
Text:no text
A:SP$ ChangeZone | Cost$ 2 B Sac<1/Creature> | Origin$ Graveyard | Destination$ Battlefield | ChangeType$ Creature.YouCtrl | ChangeNum$ 2 | Hidden$ True | SpellDescription$ Choose two target creatues in youre graveyard. Sacrifice a creature. If you do, put the two chosen creaters into play tapped.
SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/Victimize.jpg
SetInfo:USG|Common|http://magiccards.info/us/en/166.html
End
DracanII
 
Posts: 5
Joined: 14 Sep 2011, 08:21
Has thanked: 0 time
Been thanked: 0 time

Re: Card Contributions

Postby Sloth » 11 Nov 2011, 11:53

DracanII wrote:Hi
would like submit my try at Victimize.

Name:Victimize
ManaCost:2 B
Types:Sorcery
Text:no text
A:SP$ ChangeZone | Cost$ 2 B Sac<1/Creature> | Origin$ Graveyard | Destination$ Battlefield | ChangeType$ Creature.YouCtrl | ChangeNum$ 2 | Hidden$ True | SpellDescription$ Choose two target creatues in youre graveyard. Sacrifice a creature. If you do, put the two chosen creaters into play tapped.
SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/Victimize.jpg
SetInfo:USG|Common|http://magiccards.info/us/en/166.html
End
Victimize is a difficult card. The sacrificing of a creature is not a cost, it happens during resolution. Your Opponent can destroy all your creatures while Victimize is on the stack to prevent it from doing anything.
I think it's scriptable though: The spellability should be the sacrificing of a creature and the subability the targeted changezone DB with the condition that something has been sacrificed.
User avatar
Sloth
Programmer
 
Posts: 3498
Joined: 23 Jun 2009, 19:40
Has thanked: 125 times
Been thanked: 507 times

Re: Card Contributions

Postby FabioFLX » 13 Nov 2011, 15:01

This is my contribute to add Steel Hellkite to Forge.
It uses a charge counter which allows this card to be used just like the real one.

Code: Select all
Name:Steel Hellkite
ManaCost:6
Types:Artifact Creature Dragon
Text:no text
PT:5/5
K:Flying
A:AB$ Pump | Cost$ 2 | NumAtt$ +1 | SpellDescription$ CARDNAME gets +1/+0 until end of turn.
T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigPutCounter
SVar:TrigPutCounter:AB$PutCounter | Cost$ 0 | Defined$ Self | CounterType$ CHARGE | CounterNum$ 1
A:AB$ DestroyAll | Cost$ X SubCounter<1/CHARGE> | ValidCards$ Permanent.nonLand+cmcEQX+YouDontCtrl | ActivationLimit$ 1 | CostDesc$ X: | SpellDescription$ Destroy each nonland permanent with converted mana cost X whose controller was dealt combat damage by Steel Hellkite this turn. Activate this ability only once each turn.
SVar:X:Count$xPaid
T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigRemCounter
SVar:TrigRemCounter:AB$RemoveCounter | Cost$ 0 | Defined$ Self | CounterType$ CHARGE | CounterNum$ DamageWasDone | ConditionCheckSVar$ D
SVar:DamageWasDone:Count$CardCounters.CHARGE
SVar:D:Count$Valid Card.Self+counters_GE1_CHARGE
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/steel_hellkite.jpg
SetInfo:SOM|Rare|http://magiccards.info/scans/en/som/205.jpg
Oracle:Flying\n{2}: Steel Hellkite gets +1/+0 until end of turn.\n{X}: Destroy each nonland permanent with converted mana cost X whose controller was dealt combat damage by Steel Hellkite this turn. Activate this ability only once each turn.
End
User avatar
FabioFLX
 
Posts: 78
Joined: 27 Sep 2011, 13:08
Has thanked: 4 times
Been thanked: 7 times

Re: Card Contributions

Postby moomarc » 13 Nov 2011, 15:59

FabioFLX wrote:This is my contribute to add Steel Hellkite to Forge.
It uses a charge counter which allows this card to be used just like the real one.

Code: Select all
Name:Steel Hellkite
ManaCost:6
Types:Artifact Creature Dragon
Text:no text
PT:5/5
K:Flying
A:AB$ Pump | Cost$ 2 | NumAtt$ +1 | SpellDescription$ CARDNAME gets +1/+0 until end of turn.
T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigPutCounter
SVar:TrigPutCounter:AB$PutCounter | Cost$ 0 | Defined$ Self | CounterType$ CHARGE | CounterNum$ 1
A:AB$ DestroyAll | Cost$ X SubCounter<1/CHARGE> | ValidCards$ Permanent.nonLand+cmcEQX+YouDontCtrl | ActivationLimit$ 1 | CostDesc$ X: | SpellDescription$ Destroy each nonland permanent with converted mana cost X whose controller was dealt combat damage by Steel Hellkite this turn. Activate this ability only once each turn.
SVar:X:Count$xPaid
T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigRemCounter
SVar:TrigRemCounter:AB$RemoveCounter | Cost$ 0 | Defined$ Self | CounterType$ CHARGE | CounterNum$ DamageWasDone | ConditionCheckSVar$ D
SVar:DamageWasDone:Count$CardCounters.CHARGE
SVar:D:Count$Valid Card.Self+counters_GE1_CHARGE
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/steel_hellkite.jpg
SetInfo:SOM|Rare|http://magiccards.info/scans/en/som/205.jpg
Oracle:Flying\n{2}: Steel Hellkite gets +1/+0 until end of turn.\n{X}: Destroy each nonland permanent with converted mana cost X whose controller was dealt combat damage by Steel Hellkite this turn. Activate this ability only once each turn.
End
This code would allow you to activate the ability any turn after its damaged a player rather only that turn. There would also be problems with cards like Doubling Season. I'm sure I've seen a restriction somewhere for limiting activations per turn in which case you just need to make the trigger execute the damage AB and take the charge counters out completely.
-Marc
User avatar
moomarc
Pixel Commander
 
Posts: 2091
Joined: 04 Jun 2010, 15:22
Location: Johannesburg, South Africa
Has thanked: 371 times
Been thanked: 372 times

Re: Card Contributions

Postby FabioFLX » 13 Nov 2011, 21:14

moomarc wrote:This code would allow you to activate the ability any turn after its damaged a player rather only that turn. There would also be problems with cards like Doubling Season. I'm sure I've seen a restriction somewhere for limiting activations per turn in which case you just need to make the trigger execute the damage AB and take the charge counters out completely.
I don't think my version has this problem: the code I posted takes out all the charge counters at the end of the turn and uses the ActivationLimit parameter to be used once per turn.
User avatar
FabioFLX
 
Posts: 78
Joined: 27 Sep 2011, 13:08
Has thanked: 4 times
Been thanked: 7 times

Re: Card Contributions

Postby moomarc » 16 Nov 2011, 13:38

Added some of the cards made possible with the new opponent targeting in GainControl. Which of these should be added to svn and which should be left out because they're too unfair to the AI at the moment. My feeling is that Witch engine is a good enough creature on its own, so leave in. Goblin Cadets is mostly fine, but could kill the opponent if it tries to use it as a chump blocker. Measure of Wickedness should also be fine seeing as it would mostly just act as a delayed lose life spell. Sleeper Agent has been converted by Sloth now, but we might consider adding SVar:SacMe:4 to it to help the AI get rid of it.
Goblin Cadets | Open
Name:Goblin Cadets
ManaCost:R
Types:Creature Goblin
Text:no text
PT:2/1
T:Mode$ Blocks | ValidCard$ Card.Self | ValidBlocked$ Creature | Execute$ ChangeControl | TriggerDescription$ Whenever CARDNAME blocks or becomes blocked, target opponent gains control of it. (This removes CARDNAME from combat.)
T:Mode$ Blocks | ValidCard$ Creature | ValidBlocked$ Card.Self | Execute$ ChangeControl | Secondary$ True | TriggerDescription$ Whenever CARDNAME blocks or becomes blocked, target opponent gains control of it. (This removes CARDNAME from combat.)
SVar:ChangeControl:AB$GainControl | Cost$ 0 | Defined$ Self | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | SpellDescription$ Target opponent gains control of CARDNAME. | SubAbility$ RemCombat
SVar:RemCombat:DB$ RemoveFromCombat | Defined$ Self
SVar:SacMe:1
SVar:RemAIDeck:True
SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/goblin_cadets.jpg
SetInfo:USG|Uncommon|http://magiccards.info/scans/en/us/189.jpg
SetInfo:COM|Uncommon|http://magiccards.info/scans/en/cmd/125.jpg
Oracle:Whenever Goblin Cadets blocks or becomes blocked, target opponent gains control of it. (This removes Goblin Cadets from combat.)
End

Script-only Sleeper Agent - Edit: Just saw Sloth beat me to it | Open
Name:Sleeper Agent
ManaCost:B
Types:Creature Minion
Text:no text
PT:3/3
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigGainControl | TriggerDescription$ When CARDNAME enters the battlefield, target opponent gains control of it.
SVar:TrigGainControl:AB$GainControl | Cost$ 0 | Defined$ Self | ValidTgts$ Opponent | TgtPrompt$ Select target opponent
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of your upkeep, CARDNAME deals 2 damage to you.
SVar:TrigDamage:DB$ DealDamage | Defined$ You | NumDmg$ 2
SVar:RemAIDeck:True
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/sleeper_agent.jpg
SetInfo:USG|Rare|http://magiccards.info/scans/en/us/159.jpg
SetInfo:10E|Rare|http://magiccards.info/scans/en/10e/178.jpg
Oracle:When Sleeper Agent enters the battlefield, target opponent gains control of it.\nAt the beginning of your upkeep, Sleeper Agent deals 2 damage to you.
End

Witch Engine | Open
Name:Witch Engine
ManaCost:5 B
Types:Creature Horror
Text:no text
PT:4/4
K:Swampwalk
A:AB$ Mana | Cost$ T | Produced$ B | Amount$ 4 | SubAbility$ ChangeControl | SpellDescription$ Add B B B B to your mana pool.
SVar:ChangeControl:DB$GainControl | Cost$ 0 | Defined$ Self | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | SubAbility$ RemCombat | SpellDescription$ Target opponent gains control of CARDNAME.
SVar:RemCombat:DB$ RemoveFromCombat | Defined$ Self
SVar:RemAIDeck:True
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/witch_engine.jpg
SetInfo:USG|Rare|http://magiccards.info/scans/en/us/169.jpg
Oracle:Swampwalk\n{T}: Add {B}{B}{B}{B} to your mana pool. Target opponent gains control of Witch Engine. (Activate this ability only any time you could cast an instant.)
End

Measure of Wickedness | Open
Name:Measure of Wickedness
ManaCost:3 B
Types:Enchantment
Text:no text
T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigSac | TriggerDescription$ At the beginning of your end step, sacrifice CARDNAME and you lose 8 life.
SVar:TrigSac:DB$Sacrifice | Cost$ 0 | Defined$ Self | SubAbility$ LoseLife
SVar:LoseLife:DB$LoseLife | LifeAmount$ 8
T:Mode$ ChangesZone | Origin$ Any | Destination$ Graveyard | ValidCard$ Card.YouOwn+Other | Execute$ ChangeControl | TriggerZones$ Battlefield | TriggerDescription$ Whenever another card is put into your graveyard from anywhere, target opponent gains control of CARDNAME.
SVar:ChangeControl:AB$GainControl | Cost$ 0 | Defined$ Self | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | SpellDescription$ Target opponent gains control of CARDNAME.
SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/measure_of_wickedness.jpg
SetInfo:SOK|Uncommon|http://magiccards.info/scans/en/sok/82.jpg
Oracle:At the beginning of your end step, sacrifice Measure of Wickedness and you lose 8 life.\nWhenever another card is put into your graveyard from anywhere, target opponent gains control of Measure of Wickedness.
End

Jinxed Choker | Open
Name:Jinxed Choker
ManaCost:3
Types:Artifact
Text:no text
T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ ChangeControl | TriggerDescription$ At the beginning of your end step, target opponent gains control of CARDNAME and puts a charge counter on it.
SVar:ChangeControl:AB$GainControl | Cost$ 0 | Defined$ Self | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | SubAbility$ PutCounter | SpellDescription$ Target opponent gains control of CARDNAME.
SVar:PutCounter:DB$PutCounter | Cost$ 3 | CounterType$ CHARGE | CounterNum$ 1
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ TrigDamage | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of your upkeep, CARDNAME deals damage to you equal to the number of charge counters on it.
SVar:TrigDamage:DB$ DealDamage | Defined$ You | NumDmg$ X
SVar:X:Count$CardCounters.CHARGE
A:AB$ PutCounter | Cost$ 3 | CounterType$ CHARGE | CounterNum$ 1 | SpellDescription$ Put a charge counter on CARDNAME.
A:AB$ RemoveCounter | Cost$ 3 | CounterType$ CHARGE | CounterNum$ 1 | SpellDescription$ Remove a charge counter from CARDNAME.
SVar:SacMe:4
SVar:RemAIDeck:True
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/jinxed_choker.jpg
SetInfo:MRD|Rare|http://magiccards.info/scans/en/mi/189.jpg
Oracle:At the beginning of your end step, target opponent gains control of Jinxed Choker and puts a charge counter on it.\nAt the beginning of your upkeep, Jinxed Choker deals damage to you equal to the number of charge counters on it.\n{3}: Put a charge counter on Jinxed Choker or remove one from it.
End

Jinxed Idol and Jinxed Ring are already commited, but I see the opponent still won't use their ability to get rid of them, even though the AI can target the human now. So should they just be removed until the AI is improved one day, or leave it in for the users? I did add SVar:SacMe:4 to them so that the opponent at least has a chance of getting rid of them.
Jinxed Idol | Open
Name:Jinxed Idol
ManaCost:2
Types:Artifact
Text:no text
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of your upkeep, CARDNAME deals 2 damage to you.
SVar:TrigDamage:DB$ DealDamage | Defined$ You | NumDmg$ 2
A:AB$ GainControl | Cost$ Sac<1/Creature> | Defined$ Self | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | SpellDescription$ Target opponent gains control of CARDNAME.
SVar:SacMe:4
SVar:RemAIDeck:True
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/jinxed_idol.jpg
SetInfo:M11|Rare|http://magiccards.info/scans/en/m11/208.jpg
SetInfo:TMP|Rare|http://magiccards.info/scans/en/tp/283.jpg
Oracle:At the beginning of your upkeep, Jinxed Idol deals 2 damage to you.\nSacrifice a creature: Target opponent gains control of Jinxed Idol.
End

Jinxed Ring | Open
Name:Jinxed Ring
ManaCost:2
Types:Artifact
Text:no text
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Permanent.nonToken+YouOwn | Execute$ TrigDamage | TriggerZones$ Battlefield | TriggerDescription$ Whenever a nontoken permanent is put into your graveyard from the battlefield, CARDNAME deals 1 damage to you.
SVar:TrigDamage:DB$ DealDamage | Defined$ You | NumDmg$ 1
A:AB$ GainControl | Cost$ Sac<1/Creature> | Defined$ Self | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | SpellDescription$ Target opponent gains control of CARDNAME. (This effect lasts indefinitely.)
SVar:SacMe:4
SVar:RemAIDeck:True
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/jinxed_ring.jpg
SetInfo:STH|Rare|http://magiccards.info/scans/en/sh/131.jpg
Oracle:Whenever a nontoken permanent is put into your graveyard from the battlefield, Jinxed Ring deals 1 damage to you.\nSacrifice a creature: Target opponent gains control of Jinxed Ring. (This effect lasts indefinitely.)
End

We could also add Chaos Lord if we could check whether the value returned by an xCount is even or odd and use that as an SVarCompare operand. Maybe something like
Code: Select all
SVarCompare$ EQEven
The remaining similar cards require GainControlAll, or multiple targets per script line.
-Marc
User avatar
moomarc
Pixel Commander
 
Posts: 2091
Joined: 04 Jun 2010, 15:22
Location: Johannesburg, South Africa
Has thanked: 371 times
Been thanked: 372 times

PreviousNext

Return to Developer's Corner

Who is online

Users browsing this forum: No registered users and 67 guests

Main Menu

User Menu

Our Partners


Who is online

In total there are 67 users online :: 0 registered, 0 hidden and 67 guests (based on users active over the past 10 minutes)
Most users ever online was 7967 on 09 Sep 2025, 23:08

Users browsing this forum: No registered users and 67 guests

Login Form