It is currently 14 Sep 2025, 17:28
   
Text Size

Formal Request Thread

Moderator: CCGHQ Admins

Re: Formal Request Thread

Postby thefiremind » 03 Oct 2013, 14:16

jacque wrote:Using what u've made, how should I add in the Hexproof part?
As I wrote earlier, Vines of Vastwood doesn't grant hexproof (Gatherer rulings tell that as well). But if you have a spell with a part that always happens, and another part that happens only when it's been kicked, the process is always the same: save the result of WasKicked somehow (for example with an integer), then do the second part of the spell only if WasKicked was true. In my Vines of Vastwood I save 4 into register #1 if the spell was kicked and use it as a bonus for the continuous action, so that the spell gives +4/+4 only if it was kicked (otherwise it gives +0/+0). If it's not a P/T change, save whatever number you like in whatever register you like (as long as it's not used anywhere else in the ability):
Code: Select all
    <RESOLUTION_TIME_ACTION>
    if EffectSource():WasKicked() then
       EffectDC():Set_Int(123, 321)
    end
    </RESOLUTION_TIME_ACTION>
    <CONTINUOUS_ACTION layer="6">
    -- ...do what you always need to do (the layer is just an example, it might not be 6 in your card)
    </CONTINUOUS_ACTION>
    <CONTINUOUS_ACTION layer="6">
    if EffectDC():Get_Int(123) == 321 then
       -- ...do what you need to do when the spell is kicked (the layer is just an example here as well)
    end
    </CONTINUOUS_ACTION>
    <DURATION simple_duration="UntilEOT" />
Note that you always need to save WasKicked somehow (unless you need to do just 1 thing immediately as in AEther Figment), because as soon as the card changes zone, EffectSource won't be accessible anymore.
< Former DotP 2012/2013/2014 modder >
Currently busy with life...
User avatar
thefiremind
Programmer
 
Posts: 3515
Joined: 07 Nov 2011, 10:55
Has thanked: 118 times
Been thanked: 722 times

Re: Formal Request Thread

Postby MC Brodie » 03 Oct 2013, 14:27

I had Leyline of Vitality leying around.
Leyline of Vitality | Open
Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
  <FILENAME text="LEYLINE_OF_VITALITY_239205031" />
  <CARDNAME text="LEYLINE_OF_VITALITY" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Leyline of Vitality]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Ligne ley de vitalité]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Línea mística del vigor]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Ley-Linie der Lebenskraft]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Leyline della Vitalità]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[活力の力線]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Leyline of Vitality]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Лучи Жизнеспособности]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Linha de Força da Vitalidade]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="239205031" />
  <ARTID value="239205031" />
  <ARTIST name="Jim Nelson" />
  <CASTING_COST cost="{2}{G}{G}" />
  <TYPE metaname="Enchantment" />
  <EXPANSION value="M11" />
  <RARITY metaname="R" />
  <TRIGGERED_ABILITY active_zone="ZONE_HAND">
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[If Leyline of Vitality is in your opening hand, you may begin the game with it on the battlefield.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Si la Ligne ley de vitalité est dans votre main de départ, vous pouvez l’avoir sur le champ de bataille au début de la partie.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Si la Línea mística del vigor está en tu mano inicial, puedes comenzar el juego con ella en el campo de batalla.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Falls die Ley-Linie der Lebenskraft auf deiner Anfangshand ist, kannst du sie vor Spielbeginn ins Spiel bringen.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Se la Leyline della Vitalità è nella tua mano iniziale, puoi cominciare la partita con essa sul campo di battaglia.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[活力の力線があなたのゲーム開始時の手札にある場合、あなたはそれが戦場に出ている状態でゲームを開始してもよい。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[If Leyline of Vitality is in your opening hand, you may begin the game with it on the battlefield.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Если Лучи Жизнеспособности находятся в вашей начальной руке, вы можете начать партию с ними на поле битвы.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Se Linha de Força da Vitalidade estiver em sua mão de abertura, você poderá começar o jogo com ela no campo de batalha.]]></LOCALISED_TEXT>
   <TRIGGER value="BEGINNING_OF_STEP">
    return  MTG():GetStep() == STEP_UPKEEP and MTG():GetTurnNumber() == 0
    </TRIGGER>
   <MAY />
   <RESOLUTION_TIME_ACTION>
    EffectSource():PutOntoBattlefield( EffectController() )
    </RESOLUTION_TIME_ACTION>
   <AUTO_SKIP always="1" />
  </TRIGGERED_ABILITY>
  <STATIC_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Creatures you control get +0/+1.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Les créatures que vous contrôlez gagnent +0/+1.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Las criaturas que controlas obtienen +0/+1.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Kreaturen, die du kontrollierst, erhalten +0/+1.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Le creature che controlli prendono +0/+1.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[あなたがコントロールするクリーチャーは+0/+1の修整を受ける。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Creatures you control get +0/+1.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Существа под вашим контролем получают +0/+1.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[As criaturas que você controla recebem +0/+1.]]></LOCALISED_TEXT>
   <FILTER filter_id="0">
    local filter = ClearFilter()
    filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE  )
    filter:Add( FE_CONTROLLER, OP_IS, EffectController())
    </FILTER>
   <CONTINUOUS_ACTION layer="7C" filter_id="0">
    if FilteredCard() ~= nil then
       local characteristics = FilteredCard():GetCurrentCharacteristics()
       characteristics:Toughness_Add( 1 )
    end
    </CONTINUOUS_ACTION>
   <DURATION>
    return (EffectSource() == nil)
    </DURATION>
  </STATIC_ABILITY>
  <TRIGGERED_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Whenever a creature enters the battlefield under your control, you may gain 1 life.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[À chaque fois qu’une créature arrive sur le champ de bataille sous votre contrôle, vous pouvez gagner 1 point de vie.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Siempre que una criatura entre al campo de batalla bajo tu control, puedes ganar 1 vida.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Immer wenn eine Kreatur unter deiner Kontrolle ins Spiel kommt, kannst du 1 Lebenspunkt dazuerhalten.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Ogniqualvolta una creatura entra nel campo di battaglia sotto il tuo controllo, puoi guadagnare 1 punto vita.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[クリーチャーが1体あなたのコントロール下で戦場に出るたび、あなたは1点のライフを得てもよい。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Whenever a creature enters the battlefield under your control, you may gain 1 life.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Каждый раз когда существо выходит на поле битвы под вашим контролем, вы можете получить 1 жизнь.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Toda vez que uma criatura entra no campo de batalha sob o seu controle, você pode ganhar 1 ponto de vida.]]></LOCALISED_TEXT>
   <TRIGGER value="ZONECHANGE_END" to_zone="ZONE_BATTLEFIELD" from_zone="ZONE_ANY" simple_qualifier="objectyoucontrol">
    return TriggerObject():GetCardType():Test( CARD_TYPE_CREATURE ) and TriggerObject() ~= EffectSource()
    </TRIGGER>
   <RESOLUTION_TIME_ACTION>
    EffectController():GainLife(1 )
    </RESOLUTION_TIME_ACTION>
   <MAY />
  </TRIGGERED_ABILITY>
</CARD_V2>
-----------------------------------------------------------------------
Song of the Day: 46 and 2 (cover)
MC Brodie
 
Posts: 310
Joined: 01 Jun 2013, 00:10
Has thanked: 44 times
Been thanked: 34 times

Re: Formal Request Thread

Postby jacque » 03 Oct 2013, 16:03

thefiremind wrote:Note that you always need to save WasKicked somehow (unless you need to do just 1 thing immediately as in AEther Figment), because as soon as the card changes zone, EffectSource won't be accessible anymore.
Now I see what you did back there... sorta slowly digesting it in xD Thanks for explaining it in such a detailed manner =) Really appreciate it =)
Learn making your own cards today!!!

Click on Image if a post/reply helped you.

I stitch old cards together to make new ones...

~ Jacque, the confused
jacque
 
Posts: 217
Joined: 07 Jun 2013, 20:11
Has thanked: 26 times
Been thanked: 44 times

Re: Formal Request Thread

Postby loookaz » 03 Oct 2013, 16:30

loookaz
 
Posts: 131
Joined: 01 Dec 2012, 10:56
Location: Warsaw, Poland
Has thanked: 22 times
Been thanked: 2 times

Re: Formal Request Thread

Postby thefiremind » 03 Oct 2013, 18:10

loookaz wrote:how about Heroes' Reunion and Rest for the Weary?
Heroes' Reunion is identical to the first mode in Primal Command...
Code: Select all
  <SPELL_ABILITY>
    -- Localised text omitted
    <TARGET tag="CARD_QUERY_CHOOSE_PLAYER_GAIN_7" definition="0" compartment="0" count="1" />
    <TARGET_DEFINITION id="0">
    local filter = ClearFilter()
    filter:SetFilterType(FILTER_TYPE_PLAYERS)
    </TARGET_DEFINITION>
    <RESOLUTION_TIME_ACTION>
    local target_player = EffectDC():Get_Targets(0):Get_PlayerPtr(0)
    if target_player ~= nil then
       target_player:GainLife(7)
    end
    </RESOLUTION_TIME_ACTION>
    <AI_SIMPLIFIED_TARGETING compartment="0" hint="HINT_ALLIED_ONLY" />
  </SPELL_ABILITY>
  <AI_AVAILABILITY window_step="declare_blockers" type="window" />
  <AI_AVAILABILITY window_step="end_of_turn" window_turn="their_turn" type="window" />
  <AI_AVAILABILITY type="in_response" response_source="1" />
Rest for the Weary needs an interrogation, the same used for Groundswell:
Code: Select all
  <SPELL_ABILITY>
    -- Localised text omitted
    <TARGET tag="CARD_QUERY_CHOOSE_PLAYER_GAIN_LIFE" definition="0" compartment="0" count="1" />
    <TARGET_DEFINITION id="0">
    local filter = ClearFilter()
    filter:SetFilterType(FILTER_TYPE_PLAYERS)
    </TARGET_DEFINITION>
    <RESOLUTION_TIME_ACTION>
    local target_player = EffectDC():Get_Targets(0):Get_PlayerPtr(0)
    if target_player ~= nil then
       local life = 4
       local interrogation = MTG():ClearInterrogationQuery()
       interrogation:SetPlayer( EffectController() )
       interrogation:SetType( CARD_TYPE_LAND )
       interrogation:SetToZone( ZONE_BATTLEFIELD )
       if interrogation:Test( INTERROGATE_CARDS_MOVED_ZONE, INTERROGATE_THIS_TURN ) then
          life = 8
       end
       target_player:GainLife(life)
    end
    </RESOLUTION_TIME_ACTION>
    <AI_SIMPLIFIED_TARGETING compartment="0" hint="HINT_ALLIED_ONLY" />
  </SPELL_ABILITY>
  <AI_AVAILABILITY window_step="declare_blockers" type="window" />
  <AI_AVAILABILITY window_step="end_of_turn" window_turn="their_turn" type="window" />
  <AI_AVAILABILITY type="in_response" response_source="1" />
(They are instants, so they need AI_AVAILABILITY blocks, and I copied them from Angel's Mercy.)
< Former DotP 2012/2013/2014 modder >
Currently busy with life...
User avatar
thefiremind
Programmer
 
Posts: 3515
Joined: 07 Nov 2011, 10:55
Has thanked: 118 times
Been thanked: 722 times

Re: Formal Request Thread

Postby loookaz » 03 Oct 2013, 18:49

one last request - Krosan Verge. This card is sick with landfall. Lotus Cobra for example:)
loookaz
 
Posts: 131
Joined: 01 Dec 2012, 10:56
Location: Warsaw, Poland
Has thanked: 22 times
Been thanked: 2 times

Re: Formal Request Thread

Postby SystemSCSnake » 03 Oct 2013, 19:18

I'm a complete noob so I don't know how to coding :oops:

But thanks anyway! I really like the feedback at this forum =D>

The important one I need is Invigorate so if someone could help with It'd be much appreciated. Thanks again!
SystemSCSnake
 
Posts: 7
Joined: 02 Oct 2013, 16:35
Has thanked: 4 times
Been thanked: 0 time

Re: Formal Request Thread

Postby thefiremind » 03 Oct 2013, 19:49

SystemSCSnake wrote:The important one I need is Invigorate
Oh, I missed that one from your list. Here it is.
Invigorate (untested) | Open
Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
  <FILENAME text="INVIGORATE_247332" />
  <CARDNAME text="INVIGORATE" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Invigorate]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Revigoration]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Vigorizar]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Ertüchtigung]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Corroborare]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[激励]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Invigorate]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Invigorate]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Invigorate]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="247332" />
  <ARTID value="247332" />
  <ARTIST name="Dan Frazier" />
  <CASTING_COST cost="{2}{G}" />
  <TYPE metaname="Instant" />
  <EXPANSION value="CMD" />
  <RARITY metaname="C" />
  <UTILITY_ABILITY qualifier="Alternate">
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[If you control a Forest, rather than pay Invigorate’s mana cost, you may have an opponent gain 3 life.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Si vous contrôlez une forêt, à la place de payer le coût de mana de la Revigoration, vous pouvez faire qu’un adversaire gagne 3 points de vie.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Si controlas un bosque, en lugar de pagar el coste de maná de Vigorizar, puedes hacer que un oponente gane 3 vidas.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Wenn du einen Wald kontrollierst, kannst du einen Gegner 3 Lebenspunkte dazuerhalten lassen, anstatt die Manakosten von Ertüchtigung zu bezahlen.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Se controlli una Foresta, puoi far guadagnare 3 punti vita a un avversario anziché pagare il costo di mana del Corroborare.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[あなたが森をコントロールしている場合、あなたは激励のマナ・コストを支払うのではなく、「対戦相手1人は3点のライフを得る。」を選んでもよい。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[If you control a Forest, rather than pay Invigorate’s mana cost, you may have an opponent gain 3 life.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[If you control a Forest, rather than pay Invigorate’s mana cost, you may have an opponent gain 3 life.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[If you control a Forest, rather than pay Invigorate’s mana cost, you may have an opponent gain 3 life.]]></LOCALISED_TEXT>
    <COST type="generic">
      <PREREQUISITE>
      local filter = ClearFilter()
      filter:Add(FE_SUBTYPE, OP_IS, LAND_TYPE_FOREST)
      filter:Add( FE_CONTROLLER, OP_IS, EffectController() )
      return filter:CountStopAt(1) == 1
      </PREREQUISITE>
      <RESOLUTION_TIME_ACTION>
      local filter = ClearFilter()
      filter:SetFilterType(FILTER_TYPE_PLAYERS)
      filter:Add( FE_TEAM, OP_NOT, EffectController():GetTeam() )
      EffectController():ChooseItem( "CARD_QUERY_CHOOSE_OPPONENT", EffectDC():Make_Targets(6) )
      </RESOLUTION_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
      local opponent = EffectDC():Get_Targets(6):Get_PlayerPtr(0)
      if opponent ~= nil then
         opponent:GainLife(3)
      end
      </RESOLUTION_TIME_ACTION>
    </COST>
    <ABILITY_TEXT tag="ALTERNATE_COST_OPPONENT_GAINS_3" />
  </UTILITY_ABILITY>
  <SPELL_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Target creature gets +4/+4 until end of turn.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[La créature ciblée gagne +4/+4 jusqu’à la fin du tour.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[La criatura objetivo obtiene +4/+4 hasta el final del turno.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Eine Kreatur deiner Wahl erhält +4/+4 bis zum Ende des Zuges.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Una creatura bersaglio prende +4/+4 fino alla fine del turno.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[クリーチャー1体を対象とする。それはターン終了時まで+4/+4の修整を受ける。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[생물 한 개를 목표로 정한다. 그 생물은 턴종료까지 +4/+4을 받는다.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Целевое существо получает +4/+4 до конца хода.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[A criatura alvo recebe +4/+4 até o final do turno.]]></LOCALISED_TEXT>
    <TARGET tag="CARD_QUERY_CHOOSE_CREATURE_TO_GET_4_4" definition="0" compartment="0" count="1" />
    <TARGET_DEFINITION id="0">
    local filter = ClearFilter()
    filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
    </TARGET_DEFINITION>
    <CONTINUOUS_ACTION layer="7C">
    local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
    if target ~= nil then
       local characteristics = target:GetCurrentCharacteristics()
       characteristics:Power_Add(4)
       characteristics:Toughness_Add(4)
    end
    </CONTINUOUS_ACTION>
    <DURATION simple_duration="UntilEOT" />
    <AI_SIMPLIFIED_TARGETING compartment="0" hint="HINT_ALLIED_ONLY" />
  </SPELL_ABILITY>
  <AI_AVAILABILITY window_step="declare_blockers" type="window" />
  <AI_AVAILABILITY type="in_response" response_target="1" />
  <AI_AVAILABILITY type="in_response" response_source="1" />
  <AI_BASE_SCORE score="900" zone="ZONE_HAND" />
</CARD_V2>
Attachments
INVIGORATE_247332.zip
Unprefixed, untested, illustration included
(117.15 KiB) Downloaded 238 times
< Former DotP 2012/2013/2014 modder >
Currently busy with life...
User avatar
thefiremind
Programmer
 
Posts: 3515
Joined: 07 Nov 2011, 10:55
Has thanked: 118 times
Been thanked: 722 times

Re: Formal Request Thread

Postby Vasht » 03 Oct 2013, 21:29

Hi,

i would like to request Soldier of the Pantheon and Fanatic of Mogis. THX
Vasht
 
Posts: 33
Joined: 05 Jan 2013, 10:28
Has thanked: 20 times
Been thanked: 0 time

Re: Formal Request Thread

Postby loookaz » 03 Oct 2013, 21:55

jacque wrote:
loookaz wrote:hi, dear friends.
i would like to kindly request Sun Droplet.
i am tinkering with some lifegain decks combos and this card would be really great:)
thanks in advance
lucas
Here you go... enjoy =)

@SystemSCSnake: Tried coding Vines of Vastwood... got stuck at Kicker's ability... =(
Sun Droplet doesn't seem to work properly. it gives you one life per turn, even if it has zero counters on itself...
i just wanted to report that:)
loookaz
 
Posts: 131
Joined: 01 Dec 2012, 10:56
Location: Warsaw, Poland
Has thanked: 22 times
Been thanked: 2 times

Re: Formal Request Thread

Postby thefiremind » 03 Oct 2013, 22:24

loookaz wrote:Sun Droplet doesn't seem to work properly. it gives you one life per turn, even if it has zero counters on itself...
i just wanted to report that:)
Yeah, calling RemoveCounters when there are no counters to remove won't stop the ability: the number of counters should be checked before doing anything else. This is one of the few scenarios where <MAY /> isn't enough to get a good interaction with the card: you need a custom query, as in Path to Exile. Here's how I would code the second triggered ability:
Code: Select all
  <TRIGGERED_ABILITY>
    -- Localised text omitted
    <TRIGGER value="BEGINNING_OF_STEP">
    return MTG():GetStep() == STEP_UPKEEP
    </TRIGGER>
    <RESOLUTION_TIME_ACTION>
    local source = EffectSource()
    local counters = source:CountCounters( MTG():GetCountersType("Charge") )
    local player = EffectController()
    if player ~= nil and source ~= nil and counters &gt; 0 and player:GetAlwaysUseOptionalAbilitiesSetting() == false then
       player:BeginNewMultipleChoice()
       player:AddMultipleChoiceAnswer( "UI_CONDITIONAL_QUESTION_YES", counters &gt; 0 )
       player:AddMultipleChoiceAnswer( "UI_CONDITIONAL_QUESTION_NO" )
       player:AskMultipleChoiceQuestion( "OPTIONAL_ABILITY_QUESTION" )
    end
    </RESOLUTION_TIME_ACTION>
    <RESOLUTION_TIME_ACTION>
    local source = EffectSource()
    local counters = source:CountCounters( MTG():GetCountersType("Charge") )
    local player = EffectController()
    if player ~= nil and source ~= nil and counters &gt; 0 and
    ( player:GetAlwaysUseOptionalAbilitiesSetting() or player:GetMultipleChoiceResult() == 0 ) then
       source:RemoveCounters( MTG():GetCountersType("Charge"), 1 )
       player:GainLife(1)
    end
    </RESOLUTION_TIME_ACTION>
    <AUTO_SKIP>
    local source = EffectSource()
    local counters = source:CountCounters( MTG():GetCountersType("Charge") )
    local player = EffectController()
    local life = player:GetLifeTotal()
    return source == nil or counters == 0 or life &gt; 29 or
    (player:GetTeam():IsSharedLifeTotal() == false and life &gt; 19)
    </AUTO_SKIP>
  </TRIGGERED_ABILITY>
< Former DotP 2012/2013/2014 modder >
Currently busy with life...
User avatar
thefiremind
Programmer
 
Posts: 3515
Joined: 07 Nov 2011, 10:55
Has thanked: 118 times
Been thanked: 722 times

Re: Formal Request Thread

Postby jacque » 04 Oct 2013, 02:07

loookaz wrote:Sun Droplet doesn't seem to work properly. it gives you one life per turn, even if it has zero counters on itself... i just wanted to report that:)
My bad... I just tested on the life-gain/damage part, totally forgot about the 0 counters check... xD

TFM: Thanks for pointing it out... =)

Updated Sun Droplet...
Attachments
SUN_DROPLET_220530.rar
Tested: 0 counters, Inferno, conditional counter removal...
(242.58 KiB) Downloaded 202 times
Learn making your own cards today!!!

Click on Image if a post/reply helped you.

I stitch old cards together to make new ones...

~ Jacque, the confused
jacque
 
Posts: 217
Joined: 07 Jun 2013, 20:11
Has thanked: 26 times
Been thanked: 44 times

Re: Formal Request Thread

Postby Vervandi » 04 Oct 2013, 02:34

How would I do the <Continuous Action> for An-Havva Constable? He is supposed to have 1+* toughness, where * = the number of green creatures in play. I can't find a card similar enough to know how the code would look.
Vervandi
 
Posts: 12
Joined: 18 Nov 2012, 04:52
Has thanked: 10 times
Been thanked: 0 time

Re: Formal Request Thread

Postby jacque » 04 Oct 2013, 03:05

Vervandi wrote:How would I do the <Continuous Action> for An-Havva Constable? He is supposed to have 1+* toughness, where * = the number of green creatures in play. I can't find a card similar enough to know how the code would look.
I'd do it like this...

AN-HAVVA CONSTABLE TESTED | Open
Code: Select all
  <STATIC_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[An-Havva Constable’s toughness is equal to 1 plus the number of green creatures on the battlefield.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[An-Havva Constable’s toughness is equal to 1 plus the number of green creatures on the battlefield.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[An-Havva Constable’s toughness is equal to 1 plus the number of green creatures on the battlefield.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[An-Havva Constable’s toughness is equal to 1 plus the number of green creatures on the battlefield.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[La costituzione del Connestabile di An-Havva è pari a 1 più il numero di creature verdi sul campo di battaglia.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[An-Havva Constable’s toughness is equal to 1 plus the number of green creatures on the battlefield.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[An-Havva Constable’s toughness is equal to 1 plus the number of green creatures on the battlefield.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[An-Havva Constable’s toughness is equal to 1 plus the number of green creatures on the battlefield.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[An-Havva Constable’s toughness is equal to 1 plus the number of green creatures on the battlefield.]]></LOCALISED_TEXT>
    <CONTINUOUS_ACTION layer="7A">
    if EffectSource() ~= nil then
       local filter = ClearFilter()
        filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
        filter:Add( FE_COLOUR, OP_IS, COLOUR_GREEN )
       local total = filter:Count()
       local characteristics = EffectSource():GetCurrentCharacteristics()
        characteristics:Toughness_Set( total+1 )
    end
    </CONTINUOUS_ACTION>
  </STATIC_ABILITY>

Learn making your own cards today!!!

Click on Image if a post/reply helped you.

I stitch old cards together to make new ones...

~ Jacque, the confused
jacque
 
Posts: 217
Joined: 07 Jun 2013, 20:11
Has thanked: 26 times
Been thanked: 44 times

Re: Formal Request Thread

Postby Vervandi » 04 Oct 2013, 04:14

Jacque,

That worked perfectly, thank you very much. I couldn't figure out the "filter:Add( FE_COLOUR, OP_IS, COLOUR_GREEN )" part.
Vervandi
 
Posts: 12
Joined: 18 Nov 2012, 04:52
Has thanked: 10 times
Been thanked: 0 time

PreviousNext

Return to 2014

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 7967 on 09 Sep 2025, 23:08

Users browsing this forum: No registered users and 22 guests

Login Form