It is currently 27 Aug 2025, 13:47
   
Text Size

Dark Ascension spoiler season

Post MTG Forge Related Programming Questions Here

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

Re: Dark Ascension spoiler season

Postby friarsol » 10 Jan 2012, 13:22

Since "Cast from" seems to be a thing in Dark Ascension we should take the time to nail down recording of the location spells were cast from. It should be easy enough: When an SA moves to the Stack, if it's a spell, we can overwrite the SVar "CastFrom" to the string version of that Zone (Hand, Graveyard, Exile, Library, etc.) or it can be a new variable of Zone type.

Either way it would be accessible from there.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Dark Ascension spoiler season

Postby Hellfish » 10 Jan 2012, 14:27

I actually have code in place for that in my private build. I'm using it to implement Rebound too. Granted the location is not saved in an SVar, but still..
So now you're
Screaming for the blood of the cookie monster
Evil puppet demon of obesity
Time to change the tune of his fearful ballad
C is for "Lettuce," that's good enough for me
User avatar
Hellfish
Programmer
 
Posts: 1297
Joined: 07 Jun 2009, 10:41
Location: South of the Pumphouse
Has thanked: 110 times
Been thanked: 169 times

Re: Dark Ascension spoiler season

Postby ZzzzSleep » 10 Jan 2012, 21:31

Ghoultree and Drogskol Reaver
Code: Select all
Name:Ghoultree
ManaCost:7 G
Types:Creature Zombie Treefolk
Text:CARDNAME costs 1 less to cast for each creature card in your graveyard.
PT:10/10
K:CostChange:Player:Less:X:Self:All:All:NoSpecial
SVar:X:Count$TypeInYourYard.Creature
SVar:Rarity:Rare
Oracle:Ghouldtree costs {1} less to cast for each creature card in your graveyard.
End
Code: Select all
Name:Drogskol Reaver
ManaCost:5 W U
Types:Creature Spirit
Text:no text
PT:3/5
K:Flying
K:Double Strike
K:Lifelink
T:Mode$ LifeGained | ValidPlayer$ You | TriggerZones$ Battlefield  |Execute$ TrigDraw | TriggerDescription$ Whenever you gain life, draw a card.
SVar:TrigDraw:AB$Draw | Cost$ 0 | Defined$ You | NumCards$ 1
Oracle:Flying, doublestrike, lifelink\nWhenever you gain life, draw a card.
End
ZzzzSleep
 
Posts: 182
Joined: 29 Oct 2010, 02:19
Has thanked: 18 times
Been thanked: 18 times

Re: Dark Ascension spoiler season

Postby Doublestrike » 11 Jan 2012, 02:12

ArsenalNut wrote:...here's a mini how-to in Eclipse...
Quite helpful - I added this to the dev wiki: http://www.slightlymagic.net/wiki/Forge:How_to_Get_Started_Developing_Forge#Branches
---
A joke is a very serious thing.
User avatar
Doublestrike
UI Programmer
 
Posts: 715
Joined: 08 Aug 2011, 09:07
Location: Bali
Has thanked: 183 times
Been thanked: 161 times

Re: Dark Ascension spoiler season

Postby ArsenalNut » 11 Jan 2012, 02:53

If I claim a card, script it, then check it into the DKA branch, should I still post it here?
So many cards, so little time
User avatar
ArsenalNut
 
Posts: 512
Joined: 08 Jul 2011, 03:49
Has thanked: 27 times
Been thanked: 121 times

Re: Dark Ascension spoiler season

Postby friarsol » 11 Jan 2012, 03:01

ArsenalNut wrote:If I claim a card, script it, then check it into the DKA branch, should I still post it here?
I say still post them for now to maximize how much visibility they get.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Dark Ascension spoiler season

Postby ArsenalNut » 11 Jan 2012, 03:14

I had to add EYEBALL to the counters enumeration list for this card.
Jar of Eyeballs | Open
Name:Jar of Eyeballs
ManaCost:3
Types:Artifact
Text:no text
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Creature.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever a creature you control dies, put two eyeball counters on CARDNAME.
SVar:TrigPutCounter:AB$PutCounter | Cost$ 0 | Defined$ Self | CounterType$ EYEBALL | CounterNum$ 2
A:AB$ Dig | Cost$ 3 T SubCounter<All/EYEBALL> | DigNum$ X | ChangeNum$ 1 | DestinationZone$ Hand | DestinationZone2$ Library | LibraryPosition$ -1 | SpellDescription$ Look at the top X cards of your library where X is the number of eyeball counters removed this way. Put one of them into your hand and the rest on the bottom of your library in any order.
SVar:X:SVar$CostCountersRemoved
SVar:Picture:http://www.wizards.com/global/images/magic/general/jar_of_eyeballs.jpg
End

Curse of Thirst | Open
Name:Curse of Thirst
ManaCost:4 B
Types:Enchantment Aura Curse
Text:Enchant player
A:SP$ Attach | Cost$ 4 B | ValidTgts$ Player | AILogic$ Curse
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedPlayer | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of enchanted player's upkeep, CARDNAME deals damage to that player equal to the number of Curses attached to him or her.
SVar:TrigDamage:AB$ DealDamage | Cost$ 0 | Defined$ EnchantedPlayer | NumDmg$ X
SVar:X:Count$Valid Curse.AttachedTo Player.EnchantedBy
SVar:Picture:http://www.wizards.com/global/images/magic/general/curse_of_thirst.jpg
End

Moonveil Dragon | Open
Name:Moonveil Dragon
ManaCost:3 R R R
Types:Creature Dragon
Text:no text
PT:5/5
K:Flying
A:AB$ PumpAll | Cost$ R | NumAtt$ +1 | ValidCards$ Creature.YouCtrl |SpellDescription$ Each creature you control gets +1/+0 until end of turn.
SVar:Picture:http://www.wizards.com/global/images/magic/general/moonveil_dragon.jpg
End

Sorin, Lord of Innistrad | Open
Name:Sorin, Lord of Innistrad
ManaCost:2 W B
Types:Planeswalker Sorin
Text:no text
Loyalty:3
A:AB$ Token | Cost$ AddCounter<1/LOYALTY> | TokenAmount$ 1 | TokenName$ Vampire | TokenColors$ Black | TokenTypes$ Creature,Vampire | TokenOwner$ You | TokenPower$ 1 | TokenToughness$ 1 | TokenKeywords$ Lifelink | Planeswalker$ True | SpellDescription$ Put a 1/1 black Vampire creature token with lifelink onto the battlefield.
A:AB$ Effect | Cost$ SubCounter<2/LOYALTY> | Name$ Sorin, Lord of Innistrad emblem | StaticAbilities$ STPump | Planeswalker$ True | Duration$ Permanent | SpellDescription$ You get an emblem with "Creatures you control get +1/+0."
SVar:STPump:Mode$ Continuous | Affected$ Creature.YouCtrl | AffectedZone$ Battlefield | AddPower$ 1
A:AB$ Destroy | Cost$ SubCounter<6/LOYALTY> | Planeswalker$ True | Ultimate$ True | ValidTgts$ Creature,Planeswalker.Other | TargetMin$ 0 | TargetMax$ 3 | TgtPrompt$ Select target creatures or other planeswalkers | RememberTargets$ True | ForgetOtherTargets$ True | SubAbility$ DBChangeZoneAll | SpellDescription$ Destroy up to 3 target creatures and/or other planeswalkers. Return each card put into a graveyard this way to the battlefield under your control.
SVar:DBChangeZoneAll:DB$ ChangeZoneAll | Cost$ 0 | ChangeType$ Remembered | Origin$ Graveyard | Destination$ Battlefield | GainControl$ True | SubAbility$ DBCleanup
SVar:DBCleanup:DB$Cleanup | ClearRemembered$ True
SVar:Rarity:Mythic
SVar:Picture:http://www.wizards.com/global/images/magic/general/sorin_lord_of_innistrad.jpg
End

Loyal Cathar // Unhallowed Cathar | Open
Name:Loyal Cathar
ManaCost:W W
Types:Creature Human Soldier
Text:no text
PT:2/2
K:Vigilance
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigDelay | TriggerDescription$ When CARDNAME dies, return it to the battlefield transformed under your control at the beginning of the next end step.
SVar:TrigDelay:AB$ DelayedTrigger | Cost$ 0 | Mode$ Phase | Phase$ End of Turn | Execute$ TrigReturn | TriggerDescription$ return CARDNAME to the battlefield transformed
SVar:TrigReturn:AB$ ChangeZone | Cost$ 0 | Defined$ Self | Origin$ Graveyard | Destination$ Battlefield | SubAbility$ TrigTransform
SVar:TrigTransform:DB$ SetState | Cost$ 0 | Defined$ Self | Mode$ Transform
SVar:Picture:http://www.wizards.com/global/images/magic/general/loyal_cathar.jpg
AlternateMode:DoubleFaced

ALTERNATE

Name:Unhallowed Cathar
ManaCost:no cost
Colors:black
Types:Creature Zombie Soldier
Text:no text
PT:2/1
K:CARDNAME can't block.
SVar:Picture1:http://www.wizards.com/global/images/magic/general/unhallowed_cathar.jpg

End

Increasing Confusion | Open
Name:Increasing Confusion
ManaCost:X U
Types:Sorcery
Text:no text
K:Flashback X U
A:SP$ Mill | Cost$ X U | NumCards$ X | ValidTgts$ Player | TgtPrompt$ Choose a player | SpellDescription$ Target player puts the top X cards of his or her library into his or her graveyard. If CARDNAME was cast from a graveyard, that player puts twice as many cards into his or her graveyard instead.
SVar:X:Count$xPaid/Times.Y
SVar:Y:wasCastFromGraveyard.2.1
End


Edit 1: Added Moonveil and Sorin
Edit 2: Added Loyal Cathar // Unhallowed Cathar
Edit 3: Added Increasing Confusion
Last edited by ArsenalNut on 12 Jan 2012, 05:36, edited 4 times in total.
So many cards, so little time
User avatar
ArsenalNut
 
Posts: 512
Joined: 08 Jul 2011, 03:49
Has thanked: 27 times
Been thanked: 121 times

Re: Dark Ascension spoiler season

Postby moomarc » 11 Jan 2012, 06:08

bg_splash.jpg
DKA splash
I've created a themed skin for when we release the Dark Ascension beta. I've modified my layout so please test in your games and let me know if I should change anything. Play areas are borderless, but I've left a slight overlay to help distinguish sections.

Also attached the splash image because the game loads so quickly these days that you can't appreciate it properly.
Attachments
darkascension.zip
Themed skin for DKA release
(979.22 KiB) Downloaded 307 times
-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: Dark Ascension spoiler season

Postby Doublestrike » 11 Jan 2012, 06:59

Boss. Nice work moomarc!

Eventually I'll get all the buttons into the sprite (like the "start" one) to make it that much better. Mana symbols, and a few other things, also.
---
A joke is a very serious thing.
User avatar
Doublestrike
UI Programmer
 
Posts: 715
Joined: 08 Aug 2011, 09:07
Location: Bali
Has thanked: 183 times
Been thanked: 161 times

Re: Dark Ascension spoiler season

Postby moomarc » 11 Jan 2012, 07:12

Doublestrike wrote:Boss. Nice work moomarc!

Eventually I'll get all the buttons into the sprite (like the "start" one) to make it that much better. Mana symbols, and a few other things, also.
Glad you like it :mrgreen: We should also move the logo into the skins folder so that we can use alternatives in different skins.

And then (so as not to waste a post) here's Falkenrath Aristocrat:
Falkenrath Aristocrat | Open
Code: Select all
Name:Falkenrath Aristocrat
ManaCost:2 B R
Types:Creature Vampire
Text:no text
PT:4/1
K:Flying
K:Haste
A:AB$ Pump | Cost$ Sac<1/Creature> | KW$ HIDDEN Indestructible | SubAbility$ DBPutCounter | SpellDescription$ CARDNAME is indestructible this turn. If the sacrificed creature was a Human, put a +1/+1 counter on CARDNAME.
SVar:DBPutCounter:DB$PutCounter | CounterNum$ X | CounterType$ P1P1
SVar:X:Sacrificed$Valid Human
SVar:RemAIDeck:True
SVar:Rarity:Mythic
SVar:Picture:http://www.wizards.com/global/images/magic/general/falkenrath_aristocrat.jpg
Oracle:Flying, haste\nSacrifice a creature: Falkenrath Aristocrat is indestructible this turn. If the sacrificed creature was a Human, put a +1/+1 counter on Falkenrath Aristocrat.
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: Dark Ascension spoiler season

Postby ArsenalNut » 11 Jan 2012, 07:50

moomarc wrote:
And then (so as not to waste a post) here's Falkenrath Aristocrat:
Falkenrath Aristocrat | Open
Code: Select all
Name:Falkenrath Aristocrat
ManaCost:2 B R
Types:Creature Vampire
Text:no text
PT:4/1
K:Flying
K:Haste
A:AB$ Pump | Cost$ Sac<1/Creature> | KW$ HIDDEN Indestructible | SubAbility$ DBPutCounter | SpellDescription$ CARDNAME is indestructible this turn. If the sacrificed creature was a Human, put a +1/+1 counter on CARDNAME.
SVar:DBPutCounter:DB$PutCounter | CounterNum$ X | CounterType$ P1P1
SVar:X:Sacrificed$Valid Human
SVar:RemAIDeck:True
SVar:Rarity:Mythic
SVar:Picture:http://www.wizards.com/global/images/magic/general/falkenrath_aristocrat.jpg
Oracle:Flying, haste\nSacrifice a creature: Falkenrath Aristocrat is indestructible this turn. If the sacrificed creature was a Human, put a +1/+1 counter on Falkenrath Aristocrat.
End
I would make the PutCounter subability
Code: Select all
SVar:DBPutCounter:DB$PutCounter | ConditionCheckSVar$ X | ConditionSVarCompare$ EQ1 | CounterNum$ 1 | CounterType$ P1P1
This avoids possible interactions with CounterAdded triggers and also doesn't call the drawback resolve method unnecessarily.
So many cards, so little time
User avatar
ArsenalNut
 
Posts: 512
Joined: 08 Jul 2011, 03:49
Has thanked: 27 times
Been thanked: 121 times

Re: Dark Ascension spoiler season

Postby moomarc » 11 Jan 2012, 08:20

ArsenalNut wrote:
moomarc wrote:I would make the PutCounter subability
Code: Select all
SVar:DBPutCounter:DB$PutCounter | ConditionCheckSVar$ X | ConditionSVarCompare$ EQ1 | CounterNum$ 1 | CounterType$ P1P1
This avoids possible interactions with CounterAdded triggers and also doesn't call the drawback resolve method unnecessarily.
That was the first method I tried, but the subability fired regardless. That's why I used this method used by Lyzolda, the Blood Witch and Ebon Praetor. Any ideas?

Edit: Nevermind. Just realized you used ConditionCheckSVar whereas I'd used the normal CheckSVar. I'll fix the script as well as the two I mentioned above. Thanks for the help.

Edit 2: I used ConditionSVarCompare$ GE1 instead of EQ1 just in case there's ever a replacement effect where if you would sacrifice a creature, sacrifice another one as well.
-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: Dark Ascension spoiler season

Postby moomarc » 11 Jan 2012, 11:01

@Hellfish: I saw you just added the CastFrom... checks. Thanks! Now the blue spoilers can get some love too. 8)
-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: Dark Ascension spoiler season

Postby Hellfish » 11 Jan 2012, 11:05

You're welcome. :)
Blue needs more cards spoiled, if anything. Come on,Wizards! *shakes fist*

EDIT:Btw, Marc, if you're still looking at token pics, I just added Nomad's Assembly if that needs anything.

EDIT again: Increasing Devotion;
Code: Select all
Name:Increasing Devotion
ManaCost:3 W W
Types:Sorcery
Text:no text
K:Flashback 7 W W
A:SP$Token | Cost$ 3 W W | TokenAmount$ X | TokenName$ Human | TokenTypes$ Creature,Human | TokenColors$ White | TokenPower$ 1 | TokenToughness$ 1 | TokenOwner$ You | SpellDescription$ Put five 1/1 white Human creature tokens onto the battlefield. If CARDNAME was cast from a graveyard, put ten of those tokens onto the battlefield instead.
SVar:X:Count$wasCastFromGraveyard.10.5
End
So now you're
Screaming for the blood of the cookie monster
Evil puppet demon of obesity
Time to change the tune of his fearful ballad
C is for "Lettuce," that's good enough for me
User avatar
Hellfish
Programmer
 
Posts: 1297
Joined: 07 Jun 2009, 10:41
Location: South of the Pumphouse
Has thanked: 110 times
Been thanked: 169 times

Re: Dark Ascension spoiler season

Postby ArsenalNut » 11 Jan 2012, 13:48

moomarc wrote:Edit: Nevermind. Just realized you used ConditionCheckSVar whereas I'd used the normal CheckSVar. I'll fix the script as well as the two I mentioned above. Thanks for the help.

Edit 2: I used ConditionSVarCompare$ GE1 instead of EQ1 just in case there's ever a replacement effect where if you would sacrifice a creature, sacrifice another one as well.
I believe conditionals in subabilities was something that got fixed with in the last 6 months. I bet there are other older cards with "if" clauses that could be updated.
So many cards, so little time
User avatar
ArsenalNut
 
Posts: 512
Joined: 08 Jul 2011, 03:49
Has thanked: 27 times
Been thanked: 121 times

PreviousNext

Return to Developer's Corner

Who is online

Users browsing this forum: No registered users and 22 guests

Main Menu

User Menu

Our Partners


Who is online

In total there are 22 users online :: 0 registered, 0 hidden and 22 guests (based on users active over the past 10 minutes)
Most users ever online was 7303 on 15 Jul 2025, 20:46

Users browsing this forum: No registered users and 22 guests

Login Form