It is currently 29 Nov 2020, 01:04
   
Text Size

Card Development Questions

Post MTG Forge Related Programming Questions Here

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

Re: Card Development Questions

Postby friarsol » 17 Apr 2014, 12:17

Marek14 wrote:Not in this form, but it IS part of Platinum Emperion's effect.
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.
friarsol
Global Moderator
 
Posts: 7556
Joined: 15 May 2010, 04:20
Has thanked: 242 times
Been thanked: 952 times

Re: Card Development Questions

Postby 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
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
Attachments
Sympatha, Healing Love.full.jpg
rikkusguardian
 
Posts: 15
Joined: 04 Jul 2013, 10:29
Has thanked: 6 times
Been thanked: 0 time

Re: Card Development Questions

Postby Marek14 » 17 Apr 2014, 15:58

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
How about if the ultimate simply gave you emblem that would make you unable to lose the game for having 0 or less life?
Marek14
Tester
 
Posts: 2679
Joined: 07 Jun 2008, 07:54
Has thanked: 0 time
Been thanked: 271 times

Re: Card Development Questions

Postby 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.
rikkusguardian
 
Posts: 15
Joined: 04 Jul 2013, 10:29
Has thanked: 6 times
Been thanked: 0 time

Re: Card Development Questions

Postby 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 @_@

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.
Tried to take cards from Trial/Error, Frost Titan, Frost Breath, Wall of Frost, and so many more...but all the card did was either ask me to play it as a sorcery, or she'd freeze herself in ice when blocked or blocking (her ability triggers herself and she cant untap.)

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....
Attachments
Tari Seregon.full.png
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: 6 times
Been thanked: 0 time

Re: Card Development Questions

Postby Marek14 » 18 Apr 2014, 05:20

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.
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.
Marek14
Tester
 
Posts: 2679
Joined: 07 Jun 2008, 07:54
Has thanked: 0 time
Been thanked: 271 times

Re: Card Development Questions

Postby rikkusguardian » 18 Apr 2014, 05:23

Marek14 wrote:
rikkusguardian wrote:words
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.
Ah, okie! I'll see if I can do that! <3

Edit: Is that new card? I cant find it in forge :(
rikkusguardian
 
Posts: 15
Joined: 04 Jul 2013, 10:29
Has thanked: 6 times
Been thanked: 0 time

Re: Card Development Questions

Postby Marek14 » 18 Apr 2014, 05:47

rikkusguardian wrote:
Marek14 wrote:
rikkusguardian wrote:words
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.
Ah, okie! I'll see if I can do that! <3

Edit: Is that new card? I cant find it in forge :(
No, Worship is quite old card, itself a variant of Arabian Nights Ali from Cairo. There are several variants like Elderscale Wurm.
Marek14
Tester
 
Posts: 2679
Joined: 07 Jun 2008, 07:54
Has thanked: 0 time
Been thanked: 271 times

Re: Card Development Questions

Postby rikkusguardian » 18 Apr 2014, 05:54

Marek14 wrote:
rikkusguardian wrote:
Marek14 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.
Ah, okie! I'll see if I can do that! <3

Edit: Is that new card? I cant find it in forge :(
No, Worship is quite old card, itself a variant of Arabian Nights Ali from Cairo. There are several variants like Elderscale Wurm.
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.
rikkusguardian
 
Posts: 15
Joined: 04 Jul 2013, 10:29
Has thanked: 6 times
Been thanked: 0 time

Re: Card Development Questions

Postby 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
User avatar
timmermac
Tester
 
Posts: 1512
Joined: 17 May 2010, 20:36
Has thanked: 18 times
Been thanked: 94 times

Re: Card Development Questions

Postby moomarc » 27 Apr 2014, 19:37

timmermac 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?
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 either :roll: #-o
-Marc
User avatar
moomarc
Pixel Commander
 
Posts: 2091
Joined: 04 Jun 2010, 15:22
Location: Johannesburg, South Africa
Has thanked: 371 times
Been thanked: 371 times

Re: Card Development Questions

Postby 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?
swordshine
 
Posts: 682
Joined: 11 Jul 2010, 02:37
Has thanked: 116 times
Been thanked: 87 times

Re: Card Development Questions

Postby 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)
"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

Postby 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

Postby 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.
Marek14
Tester
 
Posts: 2679
Joined: 07 Jun 2008, 07:54
Has thanked: 0 time
Been thanked: 271 times

PreviousNext

Return to Developer's Corner

Who is online

Users browsing this forum: No registered users and 7 guests


Who is online

In total there are 7 users online :: 0 registered, 0 hidden and 7 guests (based on users active over the past 10 minutes)
Most users ever online was 1371 on 09 Feb 2020, 16:22

Users browsing this forum: No registered users and 7 guests

Login Form