Card Development Questions
Post MTG Forge Related Programming Questions Here
Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins
Re: Card Development Questions
by friarsol » 17 Apr 2014, 12:17
I'm aware. But it's still different. We don't treat Platinum Emperion's effect as "You can't lose life and you can't gain life." We treat it as it's own thing.Marek14 wrote:Not in this form, but it IS part of Platinum Emperion's effect.
- friarsol
- Global Moderator
- Posts: 7593
- Joined: 15 May 2010, 04:20
- Has thanked: 243 times
- Been thanked: 965 times
Re: Card Development Questions
by rikkusguardian » 17 Apr 2014, 12:32
Awww, no problem, but thank you for helping, Marek! I'll see if I can change her Ultimate ability to focus on healing in a different way. Hmmm...
EDIT: okie, i was able to do something different, and have that second ability be her ultimate, and have the new 2nd ability be "Creatures you control have lifelink"
And so far, with a bit of copy and editing of Elspeth and Whip of Erbos, the card works! <3
EDIT: okie, i was able to do something different, and have that second ability be her ultimate, and have the new 2nd ability be "Creatures you control have lifelink"
And so far, with a bit of copy and editing of Elspeth and Whip of Erbos, the card works! <3
- Code: Select all
Name:Sympatha, Healing Love
ManaCost:1 W W
Types:Planeswalker Sympatha
Loyalty:2
A:AB$ GainLife | Cost$ AddCounter<1/LOYALTY> | LifeAmount$ 3 | Planeswalker$ True | SpellDescription$ You gain 3 life.
A:AB$ Effect | Cost$ SubCounter<5/LOYALTY> | Name$ Sympatha Emblem 1 | StaticAbilities$ STLifelink | Keywords$ Lifelink | Planeswalker$ True | Stackable$ False | Duration$ Permanent | AILogic$ Always | SpellDescription$ You get an emblem with "Creatures you control have Lifelink."
SVar:STLifelink:Mode$ Continuous | EffectZone$ Command | Affected$ Artifact.YouCtrl,Creature | AffectedZone$ Battlefield | AddKeyword$ Lifelink
SVar:Lifelink:Creatures you control have Lifelink.
A:AB$ Effect | Cost$ SubCounter<9/LOYALTY> | Name$ Sympatha Emblem | Triggers$ TapTrigger | SVars$ TrigGainLife | Planeswalker$ True | Ultimate$ True | Duration$ Permanent | SpellDescription$ You get an emblem with "Whenever a land you control is tapped for mana, gain 2 life."
SVar:TapTrigger:Mode$ TapsForMana | ValidCard$ Land.YouCtrl | TriggerZones$ Command | Execute$ TrigGainLife | TriggerDescription$ Whenever a land you control is tapped for mana, you gain 2 life.
SVar:TrigGainLife:AB$GainLife | Cost$ 0 | Defined$ You | LifeAmount$ 2
- rikkusguardian
- Posts: 15
- Joined: 04 Jul 2013, 10:29
- Has thanked: 7 times
- Been thanked: 0 time
Re: Card Development Questions
by Marek14 » 17 Apr 2014, 15:58
How about if the ultimate simply gave you emblem that would make you unable to lose the game for having 0 or less life?rikkusguardian wrote:Awww, no problem, but thank you for helping, Marek! I'll see if I can change her Ultimate ability to focus on healing in a different way. Hmmm...
EDIT: okie, i was able to do something different, and have that second ability be her ultimate, and have the new 2nd ability be "Creatures you control have lifelink"
And so far, with a bit of copy and editing of Elspeth and Whip of Erbos, the card works! <3
- Code: Select all
Name:Sympatha, Healing Love
ManaCost:1 W W
Types:Planeswalker Sympatha
Loyalty:2
A:AB$ GainLife | Cost$ AddCounter<1/LOYALTY> | LifeAmount$ 3 | Planeswalker$ True | SpellDescription$ You gain 3 life.
A:AB$ Effect | Cost$ SubCounter<5/LOYALTY> | Name$ Sympatha Emblem 1 | StaticAbilities$ STLifelink | Keywords$ Lifelink | Planeswalker$ True | Stackable$ False | Duration$ Permanent | AILogic$ Always | SpellDescription$ You get an emblem with "Creatures you control have Lifelink."
SVar:STLifelink:Mode$ Continuous | EffectZone$ Command | Affected$ Artifact.YouCtrl,Creature | AffectedZone$ Battlefield | AddKeyword$ Lifelink
SVar:Lifelink:Creatures you control have Lifelink.
A:AB$ Effect | Cost$ SubCounter<9/LOYALTY> | Name$ Sympatha Emblem | Triggers$ TapTrigger | SVars$ TrigGainLife | Planeswalker$ True | Ultimate$ True | Duration$ Permanent | SpellDescription$ You get an emblem with "Whenever a land you control is tapped for mana, gain 2 life."
SVar:TapTrigger:Mode$ TapsForMana | ValidCard$ Land.YouCtrl | TriggerZones$ Command | Execute$ TrigGainLife | TriggerDescription$ Whenever a land you control is tapped for mana, you gain 2 life.
SVar:TrigGainLife:AB$GainLife | Cost$ 0 | Defined$ You | LifeAmount$ 2
Re: Card Development Questions
by rikkusguardian » 17 Apr 2014, 17:26
Hmmm, while that is an awesome idea for another Planeswalker, I want my cleric Planeswalker to be based on healing and restoration.
I was thinking storyline wise could do protection spells (prevents player from taking damage) but since the coding wont allow that, I'll just have her be all about white mage healing.
I was thinking storyline wise could do protection spells (prevents player from taking damage) but since the coding wont allow that, I'll just have her be all about white mage healing.
- rikkusguardian
- Posts: 15
- Joined: 04 Jul 2013, 10:29
- Has thanked: 7 times
- Been thanked: 0 time
Re: Card Development Questions
by rikkusguardian » 17 Apr 2014, 22:13
Made a card for a friend, and she liked it and wanted to code it in the game (i did, too <3)
yeah....anything that's NOT a keyword I fail at @_@
EDIT: I'm going to try changing the card to something similar to Dread Wight , but change "paralization" to "frozen"
EDIT 2: Darn, did not work....
yeah....anything that's NOT a keyword I fail at @_@
- Code: Select all
Name:Tari Seregon
ManaCost:2 U U
Types:Legendary Creature Dragon Druid
PT:3/3
K:Flying
T:Mode$ AttackerBlocked | ValidBlocker$ Card.Self | Execute$ TrigPump | TriggerDescription$ Whenever CARDNAME is blocked by a creature, that creature doesn't untap during its controller's next untap step.
SVar:TrigPump:AB$Pump | Cost$ 1 U U | Defined$ TriggeredAttacker | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True
T:Mode$ Blocks | ValidBlocker$ Card.Self | Execute$ TrigPump | TriggerDescription$ Whenever CARDNAME blocks a creature, that creature doesn't untap during its controller's next untap step.
SVar:TrigPump:AB$Pump | Cost$ 0 | Defined$ TriggeredBlocker | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True
A:SP$ Tap | Cost$ 1 U U | TargetMin$ 1 | TargetMax$ 1 | TgtPrompt$ Choose target permanent | ValidTgts$ Permanent | SubAbility$ TrigPump | SpellDescription$ {1} {U} {U} Tap target permanent. That permanent does not untap during it’s controllers untap phase.
EDIT: I'm going to try changing the card to something similar to Dread Wight , but change "paralization" to "frozen"
EDIT 2: Darn, did not work....
Last edited by rikkusguardian on 18 Apr 2014, 05:26, edited 1 time in total.
- rikkusguardian
- Posts: 15
- Joined: 04 Jul 2013, 10:29
- Has thanked: 7 times
- Been thanked: 0 time
Re: Card Development Questions
by Marek14 » 18 Apr 2014, 05:20
Well, "Prevent all damage that would be dealt to you" would be also possible (and arguably more fair than just forbidding life loss). Unconditional Worship would be also in-line for a cleric.rikkusguardian wrote:Hmmm, while that is an awesome idea for another Planeswalker, I want my cleric Planeswalker to be based on healing and restoration.
I was thinking storyline wise could do protection spells (prevents player from taking damage) but since the coding wont allow that, I'll just have her be all about white mage healing.
Re: Card Development Questions
by rikkusguardian » 18 Apr 2014, 05:23
Ah, okie! I'll see if I can do that! <3Marek14 wrote:Well, "Prevent all damage that would be dealt to you" would be also possible (and arguably more fair than just forbidding life loss). Unconditional Worship would be also in-line for a cleric.rikkusguardian wrote:words
Edit: Is that new card? I cant find it in forge

- rikkusguardian
- Posts: 15
- Joined: 04 Jul 2013, 10:29
- Has thanked: 7 times
- Been thanked: 0 time
Re: Card Development Questions
by Marek14 » 18 Apr 2014, 05:47
No, Worship is quite old card, itself a variant of Arabian Nights Ali from Cairo. There are several variants like Elderscale Wurm.rikkusguardian wrote:Ah, okie! I'll see if I can do that! <3Marek14 wrote:Well, "Prevent all damage that would be dealt to you" would be also possible (and arguably more fair than just forbidding life loss). Unconditional Worship would be also in-line for a cleric.rikkusguardian wrote:words
Edit: Is that new card? I cant find it in forge
Re: Card Development Questions
by rikkusguardian » 18 Apr 2014, 05:54
Oooh, I see! I was literally looking for "Unconditional Worship" and not just "Worship". I'm a bit burnt out from struggling with this card, though, So i'll probably find another planeswalker and give it to her.Marek14 wrote:No, Worship is quite old card, itself a variant of Arabian Nights Ali from Cairo. There are several variants like Elderscale Wurm.rikkusguardian wrote:Ah, okie! I'll see if I can do that! <3Marek14 wrote:
Well, "Prevent all damage that would be dealt to you" would be also possible (and arguably more fair than just forbidding life loss). Unconditional Worship would be also in-line for a cleric.
Edit: Is that new card? I cant find it in forge
- rikkusguardian
- Posts: 15
- Joined: 04 Jul 2013, 10:29
- Has thanked: 7 times
- Been thanked: 0 time
Re: Card Development Questions
by timmermac » 24 Apr 2014, 18:40
In order to script Razia, Boros Archangel, would a slight variant of the script for Beacon of Destiny work? Or would something too terribly different be required? Or would Captain's Maneuver be the better way to go?
"I just woke up, haven't had coffee, let alone a pee in 7 days, and I find out you stole my ass and made a ...mini-me! Carter, I should be irked currently, yes?" - Jack O'Neill
Re: Card Development Questions
by moomarc » 27 Apr 2014, 19:37
It's definitely more like Captain's Maneuver, in fact they'd be almost identical in script. But unfortunately we cant script Captain's Maneuver yet eithertimmermac wrote:In order to script Razia, Boros Archangel, would a slight variant of the script for Beacon of Destiny work? Or would something too terribly different be required? Or would Captain's Maneuver be the better way to go?


-Marc
-
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 Development Questions
by swordshine » 30 Apr 2014, 14:32
In a commander deck, I had Conjurer's Closet in play and my commander Zirilan of the Claw searched a dragon. At the beginning of the end step, I flickered that dragon by Conjurer's Closet to avoid the negative effect of Zirilan of the Claw's delayed trigger (it should be a new object and the delayed trigger only affected the original dragon). Unfortunately, it didn't work.
Looks like triggered ability with "Defined$" parameter is the only related ability (activated abilities or spells cannot define a card before resolving). I think we should update forge.game.zone.MagicStack.hasFizzled(SpellAbility, Card, boolean) or forge.game.trigger.WrappedAbility.resolve(). Should the wrappedability store information of the triggered card (timestamp?) and compare if it remains unchanged when resolving?
Looks like triggered ability with "Defined$" parameter is the only related ability (activated abilities or spells cannot define a card before resolving). I think we should update forge.game.zone.MagicStack.hasFizzled(SpellAbility, Card, boolean) or forge.game.trigger.WrappedAbility.resolve(). Should the wrappedability store information of the triggered card (timestamp?) and compare if it remains unchanged when resolving?
- swordshine
- Posts: 682
- Joined: 11 Jul 2010, 02:37
- Has thanked: 116 times
- Been thanked: 87 times
Re: Card Development Questions
by swordshine » 02 May 2014, 08:59
Here are my lists of bugs. I need help to fix them.
a) Scripts contain "YouDontCtrl" (Not working in multiplayer games, usually related to the attacking/blocking codes)
b) "spell's converted mana cost". When I cast Overwhelming Intellect to counter Mikaeus, the Lunarch (X = 2), I only draw 1 card (when the spell was on the stack, the stackdescription told me I would draw three cards, but when the subability was resolved, that card was sent to graveyard and the amount of card's cmc became 1). Looks like we didn't have a specific method to store spell's converted mana cost.
a) Scripts contain "YouDontCtrl" (Not working in multiplayer games, usually related to the attacking/blocking codes)
- "YouDontCtrl" | Open
b) "spell's converted mana cost". When I cast Overwhelming Intellect to counter Mikaeus, the Lunarch (X = 2), I only draw 1 card (when the spell was on the stack, the stackdescription told me I would draw three cards, but when the subability was resolved, that card was sent to graveyard and the amount of card's cmc became 1). Looks like we didn't have a specific method to store spell's converted mana cost.
- "spell's converted mana cost" - Counter effect | Open
- "spell's converted mana cost" - other cases | Open
Last edited by swordshine on 10 May 2014, 07:33, edited 2 times in total.
- swordshine
- Posts: 682
- Joined: 11 Jul 2010, 02:37
- Has thanked: 116 times
- Been thanked: 87 times
Re: Card Development Questions
by swordshine » 07 May 2014, 14:33
Another major bug in Forge: linked abilities (usually triggered abilities) are not implemented. If I copy Oblivion Ring's ETB trigger by Strionic Resonator, only the second card was remembered. The first one is exiled forever, because "RememberTargets$ True | ForgetOtherTargets$ True" is in our script. If I change the script omitting the "ForgetOtherTargets" part and do a cleanup in the LTB trigger, the card would not be compatible with Stifle. Any ideas to implement these linked abilities?
- swordshine
- Posts: 682
- Joined: 11 Jul 2010, 02:37
- Has thanked: 116 times
- Been thanked: 87 times
Re: Card Development Questions
by Marek14 » 08 May 2014, 05:38
Well, Forge has cards that can remember multiple cards at once, so maybe changing the first ability to add the card to remembered cards and not replace? (With checks so it wouldn't remember tokens or commanders that went to command zone.)
And forgetting might not be bound to any ability on the card but simply to the card leaving the exile zone, for whatever reason. Or to the card being re-exiled (example: Pull from Eternity on exiled card when Leyline of the Void is on the battlefield) -- rules say that in this case the card is also treated as a new object in exile.
Linked abilities are complex partly because of copy effects and ability copying like Quicksilver Elemental; ultimately, the solution would be to not have remembered cards as part of a card, but rather as a part of specific ability to deal with corner cases like Quicksilver Elemental copying Sisters of Stone Death twice.
And forgetting might not be bound to any ability on the card but simply to the card leaving the exile zone, for whatever reason. Or to the card being re-exiled (example: Pull from Eternity on exiled card when Leyline of the Void is on the battlefield) -- rules say that in this case the card is also treated as a new object in exile.
Linked abilities are complex partly because of copy effects and ability copying like Quicksilver Elemental; ultimately, the solution would be to not have remembered cards as part of a card, but rather as a part of specific ability to deal with corner cases like Quicksilver Elemental copying Sisters of Stone Death twice.
Who is online
Users browsing this forum: No registered users and 16 guests