Page 3 of 7

Re: Aether Revolt Spoiler Season

PostPosted: 07 Jan 2017, 13:21
by Marek14
Corrected Daredevil Dragster:

Code: Select all
Name:Daredevil Dragster
ManaCost:2
Types:Artifact Vehicle
PT:4/4
T:Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | IsPresent$ Card.Self+attackedThisCombat,Card.blocking+Self | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ At end of combat, if CARDNAME attacked or blocked this combat, put a velocity counter on it. Then if it has two or more velocity counters on it, sacrifice it and draw two cards.
SVar:TrigPutCounter:DB$PutCounter | CounterType$ VELOCITY | CounterNum$ 1 | SubAbility$ DBSac
SVar:DBSac:DB$ Sacrifice | SacValid$ Self | ConditionCheckSVar$ X | References$ X | SubAbility$ DBDraw
SVar:DBDraw:DB$ Draw | NumCards$ 2
SVar:X:Count$Valid Card.Self+counters_GE2_VELOCITY
K:Crew:2
SVar:Picture:http://www.wizards.com/global/images/magic/general/daredevil_dragster.jpg
Oracle:At end of combat, if Daredevil Dragster attacked or blocked this combat, put a velocity counter on it. Then if it has two or more velocity counters on it, sacrifice it and draw two cards.\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.)
Hmm, can ChooseSource specify that only sources on the battlefield should be considered?

Re: Aether Revolt Spoiler Season

PostPosted: 07 Jan 2017, 13:29
by Hanmac
@Marek14: about "ConditionCheckSVar$ X" just use "IsPresent$ Card.Self+counters_GE2_VELOCITY" that does save SVars and imo is easier to read.

Re: Aether Revolt Spoiler Season

PostPosted: 07 Jan 2017, 13:43
by Agetian
Marek14 wrote:Hmm, can ChooseSource specify that only sources on the battlefield should be considered?
Not yet, but I think it's an easy addition if necessary. The thing is, though, I'm not sure if it's necessary or if there's just some kind of an issue with the ChooseCard application that makes the card fail :/

EDIT: Found the issue, looks like RememberChosen$ True was missing, now it works fine (just need to fix the activation cost).

- Agetian

Re: Aether Revolt Spoiler Season

PostPosted: 07 Jan 2017, 13:51
by Agetian
Committed batches 1-3 to trunk.
Wasn't sure how to apply the "IsPresent$ Card.Self+counters_GE2_VELOCITY" syntax to DB Sacrifice, so left it as is right now (in my simple test it did not work correctly, maybe it only works on triggers?)

- Agetian

Re: Aether Revolt Spoiler Season

PostPosted: 07 Jan 2017, 13:56
by Hanmac
@Agetian & Marek14:
don't use RememerChosen if used for Effect, the Effect already does copy the Chosen card.

so i think that is better:
Code: Select all
A:AB$ ChooseCard | Cost$ Sac<1/CARDNAME> | Choices$ Creature | AILogic$ NeedsPrevention | SubAbility$ DBEffect | SVars$ DBEffect | SpellDescription$ Prevent all combat damage a creature of your choice would deal this turn.
SVar:DBEffect:DB$ Effect | ReplacementEffects$ RPreventNextFromSource | SVars$ RPreventNextFromSource | SubAbility$ DBCleanup | ConditionDefined$ ChosenCard | ConditionPresent$ Card | ConditionCompare$ GE1
SVar:RPreventNextFromSource:Event$ DamageDone | CombatDamage$ True | ValidSource$ Card.ChoosenCard | Prevent$ True | PreventionEffect$ True | Description$ Prevent all combat damage a creature of your choice would deal this turn.
SVar:DBCleanup:DB$ Cleanup | ClearChosenCard$ True
@Agetian you are right, that part is a SpellAbility, so it does need to be "ConditionPresent"

Re: Aether Revolt Spoiler Season

PostPosted: 07 Jan 2017, 13:59
by Marek14
Batch 4. Contains updated Daredevil Dragster (no IsPresent syntax since Agetian says he didn't make it work) and Ajani's Aid.

Re: Aether Revolt Spoiler Season

PostPosted: 07 Jan 2017, 14:07
by Agetian
Hanmac wrote:don't use RememerChosen if used for Effect, the Effect already does copy the Chosen card.

so i think that is better:
Code: Select all
A:AB$ ChooseCard | Cost$ Sac<1/CARDNAME> | Choices$ Creature | AILogic$ NeedsPrevention | SubAbility$ DBEffect | SVars$ DBEffect | SpellDescription$ Prevent all combat damage a creature of your choice would deal this turn.
SVar:DBEffect:DB$ Effect | ReplacementEffects$ RPreventNextFromSource | SVars$ RPreventNextFromSource | SubAbility$ DBCleanup | ConditionDefined$ ChosenCard | ConditionPresent$ Card | ConditionCompare$ GE1
SVar:RPreventNextFromSource:Event$ DamageDone | CombatDamage$ True | ValidSource$ Card.ChoosenCard | Prevent$ True | PreventionEffect$ True | Description$ Prevent all combat damage a creature of your choice would deal this turn.
SVar:DBCleanup:DB$ Cleanup | ClearChosenCard$ True
Hmm, tried this but unfortunately it didn't prevent damage for some reason :/

- Agetian

Re: Aether Revolt Spoiler Season

PostPosted: 07 Jan 2017, 14:17
by Hanmac
@Agetian: okay that should have been worked, i need to test why not.

@Marek14: Call for Unity from with DescriptionCreatures
otherwise, the Revolt cards should work

Re: Aether Revolt Spoiler Season

PostPosted: 07 Jan 2017, 14:18
by Marek14
Filigree Crawler should get this token ability:
Code: Select all
SVar:TrigToken:AB$ Token | Cost$ 0 | TokenAmount$ 1 | TokenName$ Thopter | TokenTypes$ Artifact,Creature,Thopter | TokenOwner$ You | TokenColors$ Colorless | TokenPower$ 1 | TokenToughness$ 1 | TokenKeywords$ Flying | TokenImage$ c 1 1 thopter KLD | TokenAltImages$ c_1_1_thopter2_KLD,c_1_1_thopter3_KLD
Currently, it uses ORI tokens.

EDIT: Warp Artifact (and possibly other similar cards) uses EnchantedController in both trigger condition and the damage ability. Only the trigger condition should use it (damage ability should use TriggeredPlayer) to work correctly in corner cases when the Aura is moved in response to its ability or the controller of the enchanted permanent changes.

EDIT2: Call for Unity also needs a new token. (Daredevil Dragster doesn't since velocity counters already exist.)

Re: Aether Revolt Spoiler Season

PostPosted: 07 Jan 2017, 15:02
by Marek14
Batch 5, includes correction for Aetherstream Leopard and Call for Unity.

Re: Aether Revolt Spoiler Season

PostPosted: 07 Jan 2017, 15:08
by Agetian
Marek14 wrote:EDIT: Warp Artifact (and possibly other similar cards) uses EnchantedController in both trigger condition and the damage ability. Only the trigger condition should use it (damage ability should use TriggeredPlayer) to work correctly in corner cases when the Aura is moved in response to its ability or the controller of the enchanted permanent changes.
If possible, can you please demonstrate how to write it correctly? I'll see if I can find other similar cards then too. :)

- Agetian

Re: Aether Revolt Spoiler Season

PostPosted: 07 Jan 2017, 15:17
by Marek14
Should be like this:
Code: Select all
Name:Warp Artifact
ManaCost:B B
Types:Enchantment Aura
K:Enchant artifact
A:SP$ Attach | Cost$ B B | ValidTgts$ Artifact | AILogic$ Curse
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted artifact's controller, CARDNAME deals 1 damage to that player.
SVar:TrigDamage:AB$DealDamage | Cost$ 0 | Defined$ TriggeredPlayer | NumDmg$ 1
SVar:Picture:http://www.wizards.com/global/images/magic/general/warp_artifact.jpg
Oracle:Enchant artifact\nAt the beginning of the upkeep of enchanted artifact's controller, Warp Artifact deals 1 damage to that player.
EDIT: Could someone take a look at Gonti's Machinations? It triggers on loss of life, but only on first loss of life during each turn. The notes don't explicitly mention it, but I guess that if you lose life and then get Gonti's Machinations, it won't be able to trigger on that turn.

For Exquisite Archangel, does this work?

If Exquisite Archangel is dealt lethal damage at the same time that you’re dealt damage that brings your life total to 0 or less, its effect applies and your life total becomes equal to your starting life total. You choose whether Exquisite Archangel is moved to exile or to your graveyard.
In a game with two players or two teams, if an effect states that an opponent wins the game, Exquisite Archangel’s ability doesn’t apply.
In a multiplayer game that isn’t between two teams, if an effect states that an opponent wins the game, each player other than that opponent loses the game instead, and Exquisite Archangel’s ability does apply.

Re: Aether Revolt Spoiler Season

PostPosted: 07 Jan 2017, 15:59
by Agetian
Marek14 wrote:Should be like this:
Code: Select all
Name:Warp Artifact
ManaCost:B B
Types:Enchantment Aura
K:Enchant artifact
A:SP$ Attach | Cost$ B B | ValidTgts$ Artifact | AILogic$ Curse
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted artifact's controller, CARDNAME deals 1 damage to that player.
SVar:TrigDamage:AB$DealDamage | Cost$ 0 | Defined$ TriggeredPlayer | NumDmg$ 1
SVar:Picture:http://www.wizards.com/global/images/magic/general/warp_artifact.jpg
Oracle:Enchant artifact\nAt the beginning of the upkeep of enchanted artifact's controller, Warp Artifact deals 1 damage to that player.
Thanks! :) I think I updated most similar effects in r33022, if you have a minute later, please take a look, I don't want to bork something accidentally :)

- Agetian

Re: Aether Revolt Spoiler Season

PostPosted: 07 Jan 2017, 16:04
by Marek14
Not sure if I'll find the time, unfortunately... but I'll at least try to continue coding today :)

Re: Aether Revolt Spoiler Season

PostPosted: 07 Jan 2017, 16:26
by Agetian
Marek14 wrote:Not sure if I'll find the time, unfortunately... but I'll at least try to continue coding today :)
Okie doke, I'll do some testing then :)

- Agetian