It is currently 21 Jul 2025, 00:35
   
Text Size

Formal Request Thread

Moderator: CCGHQ Admins

Re: Formal Request Thread

Postby AngelLestat » 30 Jul 2014, 21:38

RiiakShiNal wrote:This happens because you have not made TEXT_PERMANENT strings for the question and are using other strings.
  • CARD_QUERY_INTET_PAY_MANA_COST
  • CARD_QUERY_INTET_DO_NOT_PAY_MANA
  • CARD_QUERY_INTET_QUESTION
These strings were customized for Intet, the Dreamer and not for Genesis which is why it shows up as {2} {U} instead of {2} {G}.

To fix it you need to define some new TEXT_PERMANENT strings and reference those in the card rather than these.
Thanks RiiakShinal for your fast responce. This card is not coded by me, in fact, it was the first card that I build (using the sumomole code), so my knowledge in the topic is almost null.

I try to saw how to solve it or understand the things that you mention, but well... I can live with that, is not a big issue after all, the card works.

Now I remember, I had a big question to make you personally about the deck editor (but not here, in the deck editor topic)
AngelLestat
 
Posts: 68
Joined: 02 Sep 2012, 23:09
Has thanked: 1 time
Been thanked: 1 time

Re: Formal Request Thread

Postby fallenangle » 30 Jul 2014, 22:20

I decided to try making a Disciple of Deceit today, but it didn't seem to work properly. Is there a way to get it to check properly for the converted mana cost of the discarded card, or is this outside the DOTP engine's capabilities? Here's the (very faulty) code I spliced together from various cards. If anyone could take a look at it and tell me where I'm going wrong, I would be very grateful.

Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
  <FILENAME text="DISCIPLE_OF_DECEIT_380404" />
  <CARDNAME text="DISCIPLE_OF_DECEIT" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Disciple of Deceit]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Disciple de la tromperie]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Discípula del engaño]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Schülerin der Täuschung]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Discepola dell’Inganno]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[欺瞞の信奉者]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[속임수의 사도]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Ученица Обмана]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Discípulo da Enganação]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="380404" />
  <ARTID value="380404" />
  <ARTIST name="Daarken" />
  <CASTING_COST cost="{U}{B}" />
  <TYPE metaname="Creature" />
  <SUB_TYPE metaname="Human" />
  <SUB_TYPE metaname="Rogue" />
  <EXPANSION value="JOU" />
  <RARITY metaname="U" />
  <POWER value="1" />
  <TOUGHNESS value="3" />
  <STATIC_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Inspired — Whenever Disciple of Deceit becomes untapped, you may discard a nonland card. If you do, search your library for a card with the same converted mana cost as that card, reveal it, put it into your hand, then shuffle your library.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Inspiration — À chaque fois que la Disciple de la tromperie devient dégagée, vous pouvez vous défausser d’une carte non-terrain. Si vous faites ainsi, cherchez dans votre bibliothèque une carte ayant le même coût converti de mana que cette carte, révélez-la, mettez-la dans votre main et mélangez ensuite votre bibliothèque.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Inspiración — Siempre que la Discípula del engaño se enderece, puedes descartar una carta que no sea tierra. Si lo haces, busca en tu biblioteca una carta con el mismo coste de maná convertido que esa carta, muéstrala, ponla en tu mano y luego baraja tu biblioteca.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Inspiriert — Immer wenn die Schülerin der Täuschung enttappt wird, kannst du eine Karte, die kein Land ist, aus deiner Hand abwerfen. Falls du dies tust, durchsuche deine Bibliothek nach einer Karte mit den gleichen umgewandelten Manakosten wie diese Karte, zeige sie offen vor, nimm sie auf deine Hand und mische dann deine Bibliothek.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Ispirazione — Ogniqualvolta la Discepola dell’Inganno viene STAPpata, puoi scartare una carta non terra. Se lo fai, passa in rassegna il tuo grimorio per una carta con lo stesso costo di mana convertito di quella carta, rivelala e aggiungila alla tua mano, poi rimescola il tuo grimorio.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[神啓 ― 欺瞞の信奉者がアンタップ状態になるたび、あなたは土地でないカードを1枚捨ててもよい。そうしたなら、あなたのライブラリーからそのカードと同じ点数で見たマナ・コストを持つカードを1枚探し、それを公開してあなたの手札に加え、その後あなたのライブラリーを切り直す。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[영감 — 속임수의 사도가 언탭될 때마다, 당신은 대지가 아닌 카드 한 장을 버릴 수 있다. 그렇게 하면, 당신의 서고에서 그 카드와 전환마나비용이 같은 카드 한 장을 찾아서 공개한 후, 당신의 손으로 가져간 다음 당신의 서고를 섞는다.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Одухотворение — Каждый раз, когда Ученица Обмана становится развернутой, вы можете сбросить карту, не являющуюся землей. Если вы это делаете, найдите в вашей библиотеке карту с такой же конвертированной мана-стоимостью, что и у той карты, покажите ее и положите в вашу руку, затем перетасуйте вашу библиотеку.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Inspirado — Toda vez que Discípulo da Enganação é desvirado, você pode descartar um card que não seja terreno. Se fizer isso, procure em seu grimório um card com o mesmo custo de mana convertido daquele card, revele-o e coloque-o em sua mão. Depois, embaralhe o seu grimório.]]></LOCALISED_TEXT>
<TRIGGERED_ABILITY>
      <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Inspired — Whenever Disciple of Deceit becomes untapped, you may discard a nonland card. If you do, search your library for a card with the same converted mana cost as that card, reveal it, put it into your hand, then shuffle your library.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Inspiration — À chaque fois que la Disciple de la tromperie devient dégagée, vous pouvez vous défausser d’une carte non-terrain. Si vous faites ainsi, cherchez dans votre bibliothèque une carte ayant le même coût converti de mana que cette carte, révélez-la, mettez-la dans votre main et mélangez ensuite votre bibliothèque.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Inspiración — Siempre que la Discípula del engaño se enderece, puedes descartar una carta que no sea tierra. Si lo haces, busca en tu biblioteca una carta con el mismo coste de maná convertido que esa carta, muéstrala, ponla en tu mano y luego baraja tu biblioteca.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Inspiriert — Immer wenn die Schülerin der Täuschung enttappt wird, kannst du eine Karte, die kein Land ist, aus deiner Hand abwerfen. Falls du dies tust, durchsuche deine Bibliothek nach einer Karte mit den gleichen umgewandelten Manakosten wie diese Karte, zeige sie offen vor, nimm sie auf deine Hand und mische dann deine Bibliothek.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Ispirazione — Ogniqualvolta la Discepola dell’Inganno viene STAPpata, puoi scartare una carta non terra. Se lo fai, passa in rassegna il tuo grimorio per una carta con lo stesso costo di mana convertito di quella carta, rivelala e aggiungila alla tua mano, poi rimescola il tuo grimorio.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[神啓 ― 欺瞞の信奉者がアンタップ状態になるたび、あなたは土地でないカードを1枚捨ててもよい。そうしたなら、あなたのライブラリーからそのカードと同じ点数で見たマナ・コストを持つカードを1枚探し、それを公開してあなたの手札に加え、その後あなたのライブラリーを切り直す。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[영감 — 속임수의 사도가 언탭될 때마다, 당신은 대지가 아닌 카드 한 장을 버릴 수 있다. 그렇게 하면, 당신의 서고에서 그 카드와 전환마나비용이 같은 카드 한 장을 찾아서 공개한 후, 당신의 손으로 가져간 다음 당신의 서고를 섞는다.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Одухотворение — Каждый раз, когда Ученица Обмана становится развернутой, вы можете сбросить карту, не являющуюся землей. Если вы это делаете, найдите в вашей библиотеке карту с такой же конвертированной мана-стоимостью, что и у той карты, покажите ее и положите в вашу руку, затем перетасуйте вашу библиотеку.]]></LOCALISED_TEXT>
      <TRIGGER value="BECAME_UNTAPPED" simple_qualifier="self" />
<RESOLUTION_TIME_ACTION>
    local filter = ClearFilter()
    filter:SetZone( ZONE_HAND, EffectController())
    filter:Add( FE_TYPE, OP_NOT, CARD_TYPE_LAND )
    EffectController():SetItemCount( 1 )
    for i = 0,(1-1) do
      EffectController():SetItemPrompt (i, "CARD_QUERY_CHOOSE_CARD_TO_DISCARD" )
    end
    EffectController():ChooseItems( EffectDC():Make_Targets(0), QUERY_FLAG_MAY )
    </RESOLUTION_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
    local target_card = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(0)
    if target_card ~= nil  then
       target_card:Discard()
      <RESOLUTION_TIME_ACTION>
    local filter = ClearFilter()
    local effectController = EffectController()
    filter:SetZone( ZONE_LIBRARY, effectController )
    effectController:SetItemCount( 1 )
    for i = 0, (1-1) do
       effectController:SetItemPrompt(i, "CARD_QUERY_CHOOSE_A_CARD_TO_PUT_INTO_YOUR_HAND" )
    end       
    effectController:ChooseItems( EffectDC():Make_Targets(0) )
    </RESOLUTION_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
    local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
    if target ~= nil then
if target():GetConvertedManaCost() == card:GetConvertedManaCost() then
       target:PutInHand()
    end 
    </RESOLUTION_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
    EffectController():ShuffleLibrary()
    </RESOLUTION_TIME_ACTION>
 </RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
</STATIC_ABILITY>
  <SFX text="COMBAT_BLUNT_LARGE_ATTACK" power_boundary_min="4" power_boundary_max="-1" />
  <SFX text="COMBAT_BLUNT_SMALL_ATTACK" power_boundary_min="1" power_boundary_max="3" />
</CARD_V2>
fallenangle
 
Posts: 319
Joined: 20 Jul 2013, 02:31
Has thanked: 73 times
Been thanked: 41 times

Re: Formal Request Thread

Postby volrathxp » 31 Jul 2014, 10:54

fallenangle wrote:I decided to try making a Disciple of Deceit today, but it didn't seem to work properly. Is there a way to get it to check properly for the converted mana cost of the discarded card, or is this outside the DOTP engine's capabilities? Here's the (very faulty) code I spliced together from various cards. If anyone could take a look at it and tell me where I'm going wrong, I would be very grateful.

Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
  <FILENAME text="DISCIPLE_OF_DECEIT_380404" />
  <CARDNAME text="DISCIPLE_OF_DECEIT" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Disciple of Deceit]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Disciple de la tromperie]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Discípula del engaño]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Schülerin der Täuschung]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Discepola dell’Inganno]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[欺瞞の信奉者]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[속임수의 사도]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Ученица Обмана]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Discípulo da Enganação]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="380404" />
  <ARTID value="380404" />
  <ARTIST name="Daarken" />
  <CASTING_COST cost="{U}{B}" />
  <TYPE metaname="Creature" />
  <SUB_TYPE metaname="Human" />
  <SUB_TYPE metaname="Rogue" />
  <EXPANSION value="JOU" />
  <RARITY metaname="U" />
  <POWER value="1" />
  <TOUGHNESS value="3" />
  <STATIC_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Inspired — Whenever Disciple of Deceit becomes untapped, you may discard a nonland card. If you do, search your library for a card with the same converted mana cost as that card, reveal it, put it into your hand, then shuffle your library.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Inspiration — À chaque fois que la Disciple de la tromperie devient dégagée, vous pouvez vous défausser d’une carte non-terrain. Si vous faites ainsi, cherchez dans votre bibliothèque une carte ayant le même coût converti de mana que cette carte, révélez-la, mettez-la dans votre main et mélangez ensuite votre bibliothèque.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Inspiración — Siempre que la Discípula del engaño se enderece, puedes descartar una carta que no sea tierra. Si lo haces, busca en tu biblioteca una carta con el mismo coste de maná convertido que esa carta, muéstrala, ponla en tu mano y luego baraja tu biblioteca.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Inspiriert — Immer wenn die Schülerin der Täuschung enttappt wird, kannst du eine Karte, die kein Land ist, aus deiner Hand abwerfen. Falls du dies tust, durchsuche deine Bibliothek nach einer Karte mit den gleichen umgewandelten Manakosten wie diese Karte, zeige sie offen vor, nimm sie auf deine Hand und mische dann deine Bibliothek.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Ispirazione — Ogniqualvolta la Discepola dell’Inganno viene STAPpata, puoi scartare una carta non terra. Se lo fai, passa in rassegna il tuo grimorio per una carta con lo stesso costo di mana convertito di quella carta, rivelala e aggiungila alla tua mano, poi rimescola il tuo grimorio.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[神啓 ― 欺瞞の信奉者がアンタップ状態になるたび、あなたは土地でないカードを1枚捨ててもよい。そうしたなら、あなたのライブラリーからそのカードと同じ点数で見たマナ・コストを持つカードを1枚探し、それを公開してあなたの手札に加え、その後あなたのライブラリーを切り直す。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[영감 — 속임수의 사도가 언탭될 때마다, 당신은 대지가 아닌 카드 한 장을 버릴 수 있다. 그렇게 하면, 당신의 서고에서 그 카드와 전환마나비용이 같은 카드 한 장을 찾아서 공개한 후, 당신의 손으로 가져간 다음 당신의 서고를 섞는다.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Одухотворение — Каждый раз, когда Ученица Обмана становится развернутой, вы можете сбросить карту, не являющуюся землей. Если вы это делаете, найдите в вашей библиотеке карту с такой же конвертированной мана-стоимостью, что и у той карты, покажите ее и положите в вашу руку, затем перетасуйте вашу библиотеку.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Inspirado — Toda vez que Discípulo da Enganação é desvirado, você pode descartar um card que não seja terreno. Se fizer isso, procure em seu grimório um card com o mesmo custo de mana convertido daquele card, revele-o e coloque-o em sua mão. Depois, embaralhe o seu grimório.]]></LOCALISED_TEXT>
<TRIGGERED_ABILITY>
      <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Inspired — Whenever Disciple of Deceit becomes untapped, you may discard a nonland card. If you do, search your library for a card with the same converted mana cost as that card, reveal it, put it into your hand, then shuffle your library.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Inspiration — À chaque fois que la Disciple de la tromperie devient dégagée, vous pouvez vous défausser d’une carte non-terrain. Si vous faites ainsi, cherchez dans votre bibliothèque une carte ayant le même coût converti de mana que cette carte, révélez-la, mettez-la dans votre main et mélangez ensuite votre bibliothèque.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Inspiración — Siempre que la Discípula del engaño se enderece, puedes descartar una carta que no sea tierra. Si lo haces, busca en tu biblioteca una carta con el mismo coste de maná convertido que esa carta, muéstrala, ponla en tu mano y luego baraja tu biblioteca.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Inspiriert — Immer wenn die Schülerin der Täuschung enttappt wird, kannst du eine Karte, die kein Land ist, aus deiner Hand abwerfen. Falls du dies tust, durchsuche deine Bibliothek nach einer Karte mit den gleichen umgewandelten Manakosten wie diese Karte, zeige sie offen vor, nimm sie auf deine Hand und mische dann deine Bibliothek.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Ispirazione — Ogniqualvolta la Discepola dell’Inganno viene STAPpata, puoi scartare una carta non terra. Se lo fai, passa in rassegna il tuo grimorio per una carta con lo stesso costo di mana convertito di quella carta, rivelala e aggiungila alla tua mano, poi rimescola il tuo grimorio.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[神啓 ― 欺瞞の信奉者がアンタップ状態になるたび、あなたは土地でないカードを1枚捨ててもよい。そうしたなら、あなたのライブラリーからそのカードと同じ点数で見たマナ・コストを持つカードを1枚探し、それを公開してあなたの手札に加え、その後あなたのライブラリーを切り直す。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[영감 — 속임수의 사도가 언탭될 때마다, 당신은 대지가 아닌 카드 한 장을 버릴 수 있다. 그렇게 하면, 당신의 서고에서 그 카드와 전환마나비용이 같은 카드 한 장을 찾아서 공개한 후, 당신의 손으로 가져간 다음 당신의 서고를 섞는다.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Одухотворение — Каждый раз, когда Ученица Обмана становится развернутой, вы можете сбросить карту, не являющуюся землей. Если вы это делаете, найдите в вашей библиотеке карту с такой же конвертированной мана-стоимостью, что и у той карты, покажите ее и положите в вашу руку, затем перетасуйте вашу библиотеку.]]></LOCALISED_TEXT>
      <TRIGGER value="BECAME_UNTAPPED" simple_qualifier="self" />
<RESOLUTION_TIME_ACTION>
    local filter = ClearFilter()
    filter:SetZone( ZONE_HAND, EffectController())
    filter:Add( FE_TYPE, OP_NOT, CARD_TYPE_LAND )
    EffectController():SetItemCount( 1 )
    for i = 0,(1-1) do
      EffectController():SetItemPrompt (i, "CARD_QUERY_CHOOSE_CARD_TO_DISCARD" )
    end
    EffectController():ChooseItems( EffectDC():Make_Targets(0), QUERY_FLAG_MAY )
    </RESOLUTION_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
    local target_card = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(0)
    if target_card ~= nil  then
       target_card:Discard()
      <RESOLUTION_TIME_ACTION>
    local filter = ClearFilter()
    local effectController = EffectController()
    filter:SetZone( ZONE_LIBRARY, effectController )
    effectController:SetItemCount( 1 )
    for i = 0, (1-1) do
       effectController:SetItemPrompt(i, "CARD_QUERY_CHOOSE_A_CARD_TO_PUT_INTO_YOUR_HAND" )
    end       
    effectController:ChooseItems( EffectDC():Make_Targets(0) )
    </RESOLUTION_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
    local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
    if target ~= nil then
if target():GetConvertedManaCost() == card:GetConvertedManaCost() then
       target:PutInHand()
    end 
    </RESOLUTION_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
    EffectController():ShuffleLibrary()
    </RESOLUTION_TIME_ACTION>
 </RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
</STATIC_ABILITY>
  <SFX text="COMBAT_BLUNT_LARGE_ATTACK" power_boundary_min="4" power_boundary_max="-1" />
  <SFX text="COMBAT_BLUNT_SMALL_ATTACK" power_boundary_min="1" power_boundary_max="3" />
</CARD_V2>
The obvious thing that sticks out at me is you need to change <STATIC_ABILITY> to <TRIGGERED_ABILITY>, get rid of the <TRIGGERED_ABILITY> tag in the middle of your LOCALISED_TEXT blocks, and get rid of the </STATIC_ABILITY> tag at the end.

You can't have <TRIGGERED_ABILITY> tags inside <STATIC_ABILITY> tags.

You also have an if block that has no "end" to it. If blocks always look like this:

Code: Select all
      if <condition> then
         ....
      end
volrathxp
User avatar
volrathxp
 
Posts: 362
Joined: 23 Jul 2014, 17:34
Has thanked: 9 times
Been thanked: 17 times

Re: Formal Request Thread

Postby Xander9009 » 31 Jul 2014, 11:28

volrathxp wrote:
fallenangle wrote:...
The obvious thing that sticks out at me is you need to change <STATIC_ABILITY> to <TRIGGERED_ABILITY>, get rid of the <TRIGGERED_ABILITY> tag in the middle of your LOCALISED_TEXT blocks, and get rid of the </STATIC_ABILITY> tag at the end.

You can't have <TRIGGERED_ABILITY> tags inside <STATIC_ABILITY> tags.

You also have an if block that has no "end" to it. If blocks always look like this:

Code: Select all
      if <condition> then
         ....
      end
There's also a resolution block nested inside another resolution block. These aren't allowed (then again, I haven't coded cards in a few weeks, but I don't think I've forgotten that much).
_______________________________
Community Wad - Community Wad Website - How to Help and Report Bugs
Discord: discord.gg/4AXvHzW
User avatar
Xander9009
Programmer
 
Posts: 2905
Joined: 29 Jun 2013, 07:44
Location: Indiana, United States
Has thanked: 121 times
Been thanked: 445 times

Re: Formal Request Thread

Postby fallenangle » 31 Jul 2014, 16:17

All right. I've cleaned up the card, but now I don't know how to properly add the filter for converted mana cost that I need. I think there's still an unclosed "end" somewhere, but I can't seem to find it. If anyone can take a look at my code again and give me some pointers, particularly about the CMC, I would be very grateful.

Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
  <FILENAME text="DISCIPLE_OF_DECEIT_380404" />
  <CARDNAME text="DISCIPLE_OF_DECEIT" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Disciple of Deceit]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Disciple de la tromperie]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Discípula del engaño]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Schülerin der Täuschung]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Discepola dell’Inganno]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[欺瞞の信奉者]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[속임수의 사도]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Ученица Обмана]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Discípulo da Enganação]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="380404" />
  <ARTID value="380404" />
  <ARTIST name="Daarken" />
  <CASTING_COST cost="{U}{B}" />
  <TYPE metaname="Creature" />
  <SUB_TYPE metaname="Human" />
  <SUB_TYPE metaname="Rogue" />
  <EXPANSION value="JOU" />
  <RARITY metaname="U" />
  <POWER value="1" />
  <TOUGHNESS value="3" />
<TRIGGERED_ABILITY>
      <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Inspired — Whenever Disciple of Deceit becomes untapped, you may discard a nonland card. If you do, search your library for a card with the same converted mana cost as that card, reveal it, put it into your hand, then shuffle your library.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Inspiration — À chaque fois que la Disciple de la tromperie devient dégagée, vous pouvez vous défausser d’une carte non-terrain. Si vous faites ainsi, cherchez dans votre bibliothèque une carte ayant le même coût converti de mana que cette carte, révélez-la, mettez-la dans votre main et mélangez ensuite votre bibliothèque.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Inspiración — Siempre que la Discípula del engaño se enderece, puedes descartar una carta que no sea tierra. Si lo haces, busca en tu biblioteca una carta con el mismo coste de maná convertido que esa carta, muéstrala, ponla en tu mano y luego baraja tu biblioteca.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Inspiriert — Immer wenn die Schülerin der Täuschung enttappt wird, kannst du eine Karte, die kein Land ist, aus deiner Hand abwerfen. Falls du dies tust, durchsuche deine Bibliothek nach einer Karte mit den gleichen umgewandelten Manakosten wie diese Karte, zeige sie offen vor, nimm sie auf deine Hand und mische dann deine Bibliothek.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Ispirazione — Ogniqualvolta la Discepola dell’Inganno viene STAPpata, puoi scartare una carta non terra. Se lo fai, passa in rassegna il tuo grimorio per una carta con lo stesso costo di mana convertito di quella carta, rivelala e aggiungila alla tua mano, poi rimescola il tuo grimorio.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[神啓 ― 欺瞞の信奉者がアンタップ状態になるたび、あなたは土地でないカードを1枚捨ててもよい。そうしたなら、あなたのライブラリーからそのカードと同じ点数で見たマナ・コストを持つカードを1枚探し、それを公開してあなたの手札に加え、その後あなたのライブラリーを切り直す。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[영감 — 속임수의 사도가 언탭될 때마다, 당신은 대지가 아닌 카드 한 장을 버릴 수 있다. 그렇게 하면, 당신의 서고에서 그 카드와 전환마나비용이 같은 카드 한 장을 찾아서 공개한 후, 당신의 손으로 가져간 다음 당신의 서고를 섞는다.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Одухотворение — Каждый раз, когда Ученица Обмана становится развернутой, вы можете сбросить карту, не являющуюся землей. Если вы это делаете, найдите в вашей библиотеке карту с такой же конвертированной мана-стоимостью, что и у той карты, покажите ее и положите в вашу руку, затем перетасуйте вашу библиотеку.]]></LOCALISED_TEXT>
      <TRIGGER value="BECAME_UNTAPPED" simple_qualifier="self" />
<RESOLUTION_TIME_ACTION>
    local filter = ClearFilter()
    filter:SetZone( ZONE_HAND, EffectController())
    filter:Add( FE_TYPE, OP_NOT, CARD_TYPE_LAND )
    EffectController():SetItemCount( 1 )
    for i = 0,(1-1) do
      EffectController():SetItemPrompt (i, "CARD_QUERY_CHOOSE_CARD_TO_DISCARD" )
    end
    EffectController():ChooseItems( EffectDC():Make_Targets(0), QUERY_FLAG_MAY )
    </RESOLUTION_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
    local target_card = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(0)
    if target_card ~= nil  then
       target_card:Discard()
    else
       EffectSource():QueueZoneChange( ZONE_GRAVEYARD, EffectController() )
    end
    </RESOLUTION_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
    local filter = ClearFilter()
    filter:SetZone( ZONE_LIBRARY, EffectController() )
    if EffectDC():Get_Int(1) == 1 then
       filter:Add( FE_CARD_NAME, OP_IS, EffectDC():Get_Targets(0):Get_CardPtr(0) )
    end
       
    EffectController():ChooseItem( "CARD_QUERY_CHOOSE_A_CARD_TO_PUT_INTO_YOUR_HAND", EffectDC():Make_Targets(2) )
    </RESOLUTION_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
    local card = EffectDC():Get_Targets(2):Get_CardPtr(0)
    if EffectDC():Get_Int(1) == 1 then
       if card ~= nil then
 if card():GetConvertedManaCost() == card:GetConvertedManaCost() then
          card:Reveal()
          card:PutInHand()
       end
    </RESOLUTION_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
    EffectController():ShuffleLibrary()
    </RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
  <SFX text="COMBAT_BLUNT_LARGE_ATTACK" power_boundary_min="4" power_boundary_max="-1" />
  <SFX text="COMBAT_BLUNT_SMALL_ATTACK" power_boundary_min="1" power_boundary_max="3" />
</CARD_V2>
fallenangle
 
Posts: 319
Joined: 20 Jul 2013, 02:31
Has thanked: 73 times
Been thanked: 41 times

Re: Formal Request Thread

Postby thefiremind » 31 Jul 2014, 19:50

Here's how I would fix it. I hope the comments will help.
Code: Select all
    <RESOLUTION_TIME_ACTION>
    local filter = ClearFilter()
    filter:SetZone( ZONE_HAND, EffectController() )
    filter:Add( FE_TYPE, OP_NOT, CARD_TYPE_LAND )
    -- In DotP2014 you can use query flags in the single-item query
    EffectController():ChooseItem( "CARD_QUERY_CHOOSE_CARD_TO_DISCARD", EffectDC():Make_Targets(0), QUERY_FLAG_MAY )
    </RESOLUTION_TIME_ACTION>
    <RESOLUTION_TIME_ACTION>
    local target_card = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(0)
    if target_card ~= nil then
       -- this means we actually chose a card, but we need to remember its cmc before discarding it, or else it will be too late
       EffectDC():Set_Int( 1, target_card:GetConvertedManaCost() )
       target_card:Discard()
    else
       -- let's put -1 instead of the cmc, so we know we chose no card at all
       EffectDC():Set_Int(1, -1)
    end
    </RESOLUTION_TIME_ACTION>
    <RESOLUTION_TIME_ACTION>
    -- Did we discard a card? We just need to check the saved cmc, it's ok if it's greater than -1
    local cmc = EffectDC():Get_Int(1)
    if cmc &gt; -1 then
       local filter = ClearFilter()
       filter:SetZone( ZONE_LIBRARY, EffectController() )
       filter:Add(FE_CMC, OP_EQUALS, cmc)
       -- Choosing a card from a library must always be optional, it's a Magic rule (hence why QUERY_FLAG_MAY here)
       EffectController():ChooseItem( "CARD_QUERY_CHOOSE_A_CARD_TO_PUT_INTO_YOUR_HAND", EffectDC():Make_Targets(2), QUERY_FLAG_MAY )
    end
    </RESOLUTION_TIME_ACTION>
    <RESOLUTION_TIME_ACTION>
    -- At this point we need the nil check again: target chest number 2 will be nil if we didn't discard a card
    local card = EffectDC():Get_Targets(2) and EffectDC():Get_Targets(2):Get_CardPtr(0)
    if card ~= nil then
       card:Reveal()
    end
    </RESOLUTION_TIME_ACTION>
    <RESOLUTION_TIME_ACTION>
    -- Official cards reveal and move in separate actions, so I do it too
    local card = EffectDC():Get_Targets(2) and EffectDC():Get_Targets(2):Get_CardPtr(0)
    if card ~= nil then
       card:PutInHand()
    end
    </RESOLUTION_TIME_ACTION>
    <RESOLUTION_TIME_ACTION>
    -- We need to shuffle the library only if we searched for a card, in other words if we discarded a card, so let's check cmc again
    local cmc = EffectDC():Get_Int(1)
    if cmc &gt; -1 then
       EffectController():ShuffleLibrary()
    end
    </RESOLUTION_TIME_ACTION>
< 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 » 01 Aug 2014, 18:22

can i kindly request Æther Membrane?
it should be quite easy for an experienced programmer.
Unfortunately, not for me:(

lucas
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 » 01 Aug 2014, 19:48

loookaz wrote:can i kindly request Æther Membrane?
it should be quite easy for an experienced programmer.
Unfortunately, not for me:(
It can be made easy if you look for similar cards. There's Crumbling Colossus as an official card, from which you can get the whole "whenever something happens, something else happens at end of combat". However what happens doesn't affect the creature itself, but the creature blocked by the Membrane, so that will be the pointer to save into the chest for the delayed trigger. And of course, it returns to hand rather than being sacrificed. Put it all together and you obtain this:
Code: Select all
  <TRIGGERED_ABILITY>
    -- Localised text omitted
    <TRIGGER value="BLOCKS_A_CREATURE" simple_qualifier="self" />
    <RESOLUTION_TIME_ACTION>
    local blocked_creature = SecondaryObject()
    if blocked_creature ~= nil then
       local delayDC = EffectDC():Make_Chest(1)
       delayDC:Set_CardPtr(0, blocked_creature)
       MTG():CreateDelayedTrigger(2, delayDC)
    end
    </RESOLUTION_TIME_ACTION>
  </TRIGGERED_ABILITY>
  <TRIGGERED_ABILITY resource_id="2">
    <TRIGGER value="BEGINNING_OF_STEP">
    return MTG():GetStep() == STEP_END_OF_COMBAT
    </TRIGGER>
    <RESOLUTION_TIME_ACTION>
    local target = EffectDC():Get_CardPtr(0)   
    if target ~= nil then
       target:PutInHand()
    end
    </RESOLUTION_TIME_ACTION>
    <CLEANUP fire_once="1" />
  </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 loookaz » 02 Aug 2014, 12:19

hi guys. i am making mean control deck and i would like to include in it 2 copies of Punish Ignorance, but i cannot find it in any other mods.
Could someone try to make it or maybe it is in some mod that i don't know of?

I know that it is like Undermine and Absorb together, but i have 0 coding skills:(

lucas
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 OnduVampire » 02 Aug 2014, 14:24

I have problem with coding Giant Ambush Beetle. I am quite new and I cant find similar cards in mods.
OnduVampire
 
Posts: 1
Joined: 02 Aug 2014, 13:55
Has thanked: 0 time
Been thanked: 0 time

Re: Formal Request Thread

Postby fallenangle » 02 Aug 2014, 14:56

I guess I don't fully understand the concept behind chests. I was trying to make Jalira, Master Polymorphist, but I've never been able to make anything happen after the creature is sacrificed. I've been trying to get ideas from Polymorph and Heroes' Podium, but I can't seem to make anything happen after I sacrifice a creature. Can someone look at my code and point out where I'm going wrong? I'm totally new to coding, so any help you could give me would be greatly appreciated.

Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
  <FILENAME text="JALIRA_MASTER_POLYMORPHIST_383287" />
  <CARDNAME text="JALIRA_MASTER_POLYMORPHIST" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Jalira, Master Polymorphist]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Jalira, maîtresse polymorphiste]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Jalira, maestra de la transmutación]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Jalira, Meisterpolymorphistin]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Jalira, Maestra Polimorfista]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[練達の変身術士、ジャリラ]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[변환술의 대가 잘리라]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Джалира, Мастер Изменений]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Jalira, Polimorfista-mestre]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="383287" />
  <ARTID value="383287" />
  <ARTIST name="Steve Prescott" />
  <CASTING_COST cost="{3}{U}" />
  <FLAVOURTEXT>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[“You can become anything if I just put my mind to it.”]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[« Vous pouvez devenir ce que vous voulez si j’y mets un peu du mien. »]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[“Puedes convertirte en cualquier cosa con solo concentrarme en ello”.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[„Du kannst alles werden, wenn ich es nur will.”]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[“Con impegno e costanza, potrai diventare qualunque cosa io desideri.”]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[「私がその気になりさえすれば、お前は何にだってなれるさ。」]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[“내가 생각만 하면 넌 뭐로든 변할 수 있어.”]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[«Ты можешь стать чем угодно, если я приложу к этому старания».]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[“Você pode se tornar qualquer coisa se eu realmente quiser.”]]></LOCALISED_TEXT>
  </FLAVOURTEXT>
  <SUPERTYPE metaname="Legendary" />
  <TYPE metaname="Creature" />
  <SUB_TYPE metaname="Human" />
  <SUB_TYPE metaname="Wizard" />
  <EXPANSION value="M15" />
  <RARITY metaname="R" />
  <POWER value="2" />
  <TOUGHNESS value="2" />
  <ACTIVATED_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{2}{U}, {T}, Sacrifice another creature: Reveal cards from the top of your library until you reveal a nonlegendary creature card. Put that card onto the battlefield and the rest on the bottom of your library in a random order.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[{2}{U}, {T}, sacrifiez une autre créature : Révélez les cartes du dessus de votre bibliothèque jusqu’à ce que vous révéliez une carte de créature non-légendaire. Mettez cette carte sur le champ de bataille et le reste au-dessous de votre bibliothèque dans un ordre aléatoire.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[{2}{U}, {T}, sacrificar otra criatura: Muestra las primeras cartas de tu biblioteca hasta que muestres una carta de criatura que no sea legendaria. Pon esa carta en el campo de batalla y el resto en el fondo de tu biblioteca en un orden aleatorio.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[{2}{U}, {T}, opfere eine andere Kreatur: Decke Karten oben von deiner Bibliothek auf, bis du eine nichtlegendäre Kreaturenkarte aufdeckst. Bringe diese Karte ins Spiel und lege den Rest in zufälliger Reihenfolge unter deine Bibliothek.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[{2}{U}, {T}, Sacrifica un’altra creatura: Rivela carte dalla cima del tuo grimorio finché non riveli una carta creatura non leggendaria. Metti quella carta sul campo di battaglia e il resto in fondo al tuo grimorio in ordine casuale.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[{2}{U}, {T}, 他のクリーチャーを1体生け贄に捧げる:あなたのライブラリーの一番上から、伝説でないクリーチャー・カードが公開されるまでカードを公開する。そのカードを戦場に出し、残りをあなたのライブラリーの一番下に無作為の順番で置く。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[{2}{U}, {T}, 다른 생물을 희생한다: 전설이 아닌 생물 카드가 공개될 때까지 당신의 서고 맨 위의 카드를 공개한다. 그 카드를 전장에 놓고 나머지 카드들은 당신의 서고 맨 밑에 무작위로 놓는다.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[{2}{U}, {T}, пожертвуйте другое существо: показывайте карты с верха вашей библиотеки до тех пор, пока вы не покажете карту существа, не являющегося легендарным. Положите ту карту на поле битвы, а остальные в низ вашей библиотеки в случайном порядке.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[{2}{U}, {T}, Sacrifique outra criatura: Revele cards do topo de seu grimório até revelar um card de criatura não lendária. Coloque aquele card no campo de batalha e o restante no fundo de seu grimório em ordem aleatória.]]></LOCALISED_TEXT>
<COST mana_cost="{2}{U}" type="Mana" />
      <COST type="TapSelf" />
<COST type="Sacrifice" definition="0" compartment="1" query_tag="CARD_QUERY_CHOOSE_CREATURE_TO_SACRIFICE" item_count="1" LKI_shield="1" />
      <COST_DEFINITION id="0">
    local filter = ClearFilter()
    filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
    filter:Add(FE_CARD_INSTANCE, OP_NOT, EffectSource())
    </COST_DEFINITION>
<RESOLUTION_TIME_ACTION>
    local answerDC = EffectDC():Make_Targets(0)
    local queryDC = EffectDC():Make_Chest(1)
    local player = EffectController()
    local revealed_cards = EffectDC():Make_Chest(0)
    local cardsInLibrary = EffectController():Library_Count()
    for i = 0, (cardsInLibrary-1) do
       local card = EffectController():Library_GetNth(i)
       card:Reveal()
       revealed_cards:Set_CardPtr(i, card)
       if (card:GetSuperType():Test( SUPERTYPE_LEGENDARY ) == false and card:GetCardType():Test(CARD_TYPE_CREATURE) == true) then
          break
       end
    end
    </RESOLUTION_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
    local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
    if target ~= nil then
       target:Reveal()
    end 
    </RESOLUTION_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
    local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
    if target ~= nil then
       target: PutOntoBattlefield()
    end 
    </RESOLUTION_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
    local queryDC = EffectDC():Get_Chest(1)
    local num_cards = queryDC:Count()
    for i=0,num_cards-1 do
       local card = queryDC:Remove_RandomCardPtr()
          if card ~= nil then
             card:PutOnBottomOfLibrary()
          else
             break
          end
    end
    </RESOLUTION_TIME_ACTION>
</ACTIVATED_ABILITY>
  <SFX text="COMBAT_BLUNT_LARGE_ATTACK" power_boundary_min="4" power_boundary_max="-1" />
  <SFX text="COMBAT_BLUNT_SMALL_ATTACK" power_boundary_min="1" power_boundary_max="3" />
</CARD_V2>
fallenangle
 
Posts: 319
Joined: 20 Jul 2013, 02:31
Has thanked: 73 times
Been thanked: 41 times

Re: Formal Request Thread

Postby RiiakShiNal » 02 Aug 2014, 15:29

OnduVampire wrote:I have problem with coding Giant Ambush Beetle. I am quite new and I cant find similar cards in mods.
Unfortunately, Giant Ambush Beetle can't be made because in DotP 2014 we have no way to force a creature to block another creature. You can force a creature to block (CHARACTERISTIC_MUST_BLOCK), but you can't choose what it blocks, or you can force a specific creature to be blocked by at least one possible creature (CHARACTERISTIC_MUST_BE_BLOCKED_IF_ABLE) or all possible creatures (CHARACTERISTIC_ALL_CREATURES_MUST_BLOCK_THIS_IF_ABLE). But there are no combinations to do what Giant Ambush Beetle does.

fallenangle wrote:I guess I don't fully understand the concept behind chests. I was trying to make Jalira, Master Polymorphist, but I've never been able to make anything happen after the creature is sacrificed. I've been trying to get ideas from Polymorph and Heroes' Podium, but I can't seem to make anything happen after I sacrifice a creature. Can someone look at my code and point out where I'm going wrong? I'm totally new to coding, so any help you could give me would be greatly appreciated.

Jalira, Master Polymorphist | Open
Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
  <FILENAME text="JALIRA_MASTER_POLYMORPHIST_383287" />
  <CARDNAME text="JALIRA_MASTER_POLYMORPHIST" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Jalira, Master Polymorphist]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Jalira, maîtresse polymorphiste]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Jalira, maestra de la transmutación]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Jalira, Meisterpolymorphistin]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Jalira, Maestra Polimorfista]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[練達の変身術士、ジャリラ]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[변환술의 대가 잘리라]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Джалира, Мастер Изменений]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Jalira, Polimorfista-mestre]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="383287" />
  <ARTID value="383287" />
  <ARTIST name="Steve Prescott" />
  <CASTING_COST cost="{3}{U}" />
  <FLAVOURTEXT>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[“You can become anything if I just put my mind to it.”]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[« Vous pouvez devenir ce que vous voulez si j’y mets un peu du mien. »]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[“Puedes convertirte en cualquier cosa con solo concentrarme en ello”.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[„Du kannst alles werden, wenn ich es nur will.”]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[“Con impegno e costanza, potrai diventare qualunque cosa io desideri.”]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[「私がその気になりさえすれば、お前は何にだってなれるさ。」]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[“내가 생각만 하면 넌 뭐로든 변할 수 있어.”]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[«Ты можешь стать чем угодно, если я приложу к этому старания».]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[“Você pode se tornar qualquer coisa se eu realmente quiser.”]]></LOCALISED_TEXT>
  </FLAVOURTEXT>
  <SUPERTYPE metaname="Legendary" />
  <TYPE metaname="Creature" />
  <SUB_TYPE metaname="Human" />
  <SUB_TYPE metaname="Wizard" />
  <EXPANSION value="M15" />
  <RARITY metaname="R" />
  <POWER value="2" />
  <TOUGHNESS value="2" />
  <ACTIVATED_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{2}{U}, {T}, Sacrifice another creature: Reveal cards from the top of your library until you reveal a nonlegendary creature card. Put that card onto the battlefield and the rest on the bottom of your library in a random order.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[{2}{U}, {T}, sacrifiez une autre créature : Révélez les cartes du dessus de votre bibliothèque jusqu’à ce que vous révéliez une carte de créature non-légendaire. Mettez cette carte sur le champ de bataille et le reste au-dessous de votre bibliothèque dans un ordre aléatoire.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[{2}{U}, {T}, sacrificar otra criatura: Muestra las primeras cartas de tu biblioteca hasta que muestres una carta de criatura que no sea legendaria. Pon esa carta en el campo de batalla y el resto en el fondo de tu biblioteca en un orden aleatorio.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[{2}{U}, {T}, opfere eine andere Kreatur: Decke Karten oben von deiner Bibliothek auf, bis du eine nichtlegendäre Kreaturenkarte aufdeckst. Bringe diese Karte ins Spiel und lege den Rest in zufälliger Reihenfolge unter deine Bibliothek.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[{2}{U}, {T}, Sacrifica un’altra creatura: Rivela carte dalla cima del tuo grimorio finché non riveli una carta creatura non leggendaria. Metti quella carta sul campo di battaglia e il resto in fondo al tuo grimorio in ordine casuale.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[{2}{U}, {T}, 他のクリーチャーを1体生け贄に捧げる:あなたのライブラリーの一番上から、伝説でないクリーチャー・カードが公開されるまでカードを公開する。そのカードを戦場に出し、残りをあなたのライブラリーの一番下に無作為の順番で置く。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[{2}{U}, {T}, 다른 생물을 희생한다: 전설이 아닌 생물 카드가 공개될 때까지 당신의 서고 맨 위의 카드를 공개한다. 그 카드를 전장에 놓고 나머지 카드들은 당신의 서고 맨 밑에 무작위로 놓는다.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[{2}{U}, {T}, пожертвуйте другое существо: показывайте карты с верха вашей библиотеки до тех пор, пока вы не покажете карту существа, не являющегося легендарным. Положите ту карту на поле битвы, а остальные в низ вашей библиотеки в случайном порядке.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[{2}{U}, {T}, Sacrifique outra criatura: Revele cards do topo de seu grimório até revelar um card de criatura não lendária. Coloque aquele card no campo de batalha e o restante no fundo de seu grimório em ordem aleatória.]]></LOCALISED_TEXT>
<COST mana_cost="{2}{U}" type="Mana" />
      <COST type="TapSelf" />
<COST type="Sacrifice" definition="0" compartment="1" query_tag="CARD_QUERY_CHOOSE_CREATURE_TO_SACRIFICE" item_count="1" LKI_shield="1" />
      <COST_DEFINITION id="0">
    local filter = ClearFilter()
    filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
    filter:Add(FE_CARD_INSTANCE, OP_NOT, EffectSource())
    </COST_DEFINITION>
<RESOLUTION_TIME_ACTION>
    local answerDC = EffectDC():Make_Targets(0)
    local queryDC = EffectDC():Make_Chest(1)
    local player = EffectController()
    local revealed_cards = EffectDC():Make_Chest(0)
    local cardsInLibrary = EffectController():Library_Count()
    for i = 0, (cardsInLibrary-1) do
       local card = EffectController():Library_GetNth(i)
       card:Reveal()
       revealed_cards:Set_CardPtr(i, card)
       if (card:GetSuperType():Test( SUPERTYPE_LEGENDARY ) == false and card:GetCardType():Test(CARD_TYPE_CREATURE) == true) then
          break
       end
    end
    </RESOLUTION_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
    local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
    if target ~= nil then
       target:Reveal()
    end 
    </RESOLUTION_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
    local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
    if target ~= nil then
       target: PutOntoBattlefield()
    end 
    </RESOLUTION_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
    local queryDC = EffectDC():Get_Chest(1)
    local num_cards = queryDC:Count()
    for i=0,num_cards-1 do
       local card = queryDC:Remove_RandomCardPtr()
          if card ~= nil then
             card:PutOnBottomOfLibrary()
          else
             break
          end
    end
    </RESOLUTION_TIME_ACTION>
</ACTIVATED_ABILITY>
  <SFX text="COMBAT_BLUNT_LARGE_ATTACK" power_boundary_min="4" power_boundary_max="-1" />
  <SFX text="COMBAT_BLUNT_SMALL_ATTACK" power_boundary_min="1" power_boundary_max="3" />
</CARD_V2>
Well, part of your problem is you are using a register twice, you have defined answerDC to use register 0 then you overwrite that by creating a chest in register 0 for revealed_cards.

Another part is that you find a non-legendary creature then you break without storing the creature anywhere except the revealed_cards (as the last card). Then in the next two actions you try to access Targets instead of a Chest so that likely fails and even then you were looking at the first card instead of the last (which is the one you want).

In the last action you ask for the number of cards in the queryDC to put on the bottom in random order, but since you didn't put any cards into that chest object you only get a 0 count.

So in essence you never use answerDC or queryDC and you try to access the chest in register 0 as a Targets object instead of a Chest.
RiiakShiNal
Programmer
 
Posts: 2188
Joined: 16 May 2011, 21:37
Has thanked: 75 times
Been thanked: 497 times

Re: Formal Request Thread

Postby fallenangle » 02 Aug 2014, 16:48

Then in the next two actions you try to access Targets instead of a Chest so that likely fails and even then you were looking at the first card instead of the last (which is the one you want).

In the last action you ask for the number of cards in the queryDC to put on the bottom in random order, but since you didn't put any cards into that chest object you only get a 0 count.
How do I fix these problems? I'm not sure how to store the values properly or to try to access a chest instead of cards. Could anyone be so kind as to provide more guidance, or fix my bad code with notations at the relevant points? I'm trying to learn how to code cards by doing more than just splicing them together, but I really don't know enough about coding and functions to get some of the more complex cards to work yet. Thank you very much for all of your help; I really feel like I can learn something from all of your kind advice.
fallenangle
 
Posts: 319
Joined: 20 Jul 2013, 02:31
Has thanked: 73 times
Been thanked: 41 times

Re: Formal Request Thread

Postby RiiakShiNal » 02 Aug 2014, 19:13

fallenangle wrote:How do I fix these problems? I'm not sure how to store the values properly or to try to access a chest instead of cards. Could anyone be so kind as to provide more guidance, or fix my bad code with notations at the relevant points? I'm trying to learn how to code cards by doing more than just splicing them together, but I really don't know enough about coding and functions to get some of the more complex cards to work yet. Thank you very much for all of your help; I really feel like I can learn something from all of your kind advice.
With notes:
Jalira, Master Polymorphist | Open
Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
  <FILENAME text="JALIRA_MASTER_POLYMORPHIST_383287" />
  <CARDNAME text="JALIRA_MASTER_POLYMORPHIST" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Jalira, Master Polymorphist]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Jalira, maîtresse polymorphiste]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Jalira, maestra de la transmutación]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Jalira, Meisterpolymorphistin]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Jalira, Maestra Polimorfista]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[練達の変身術士、ジャリラ]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[변환술의 대가 잘리라]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Джалира, Мастер Изменений]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Jalira, Polimorfista-mestre]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="383287" />
  <ARTID value="383287" />
  <ARTIST name="Steve Prescott" />
  <CASTING_COST cost="{3}{U}" />
  <FLAVOURTEXT>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[“You can become anything if I just put my mind to it.”]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[« Vous pouvez devenir ce que vous voulez si j’y mets un peu du mien. »]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[“Puedes convertirte en cualquier cosa con solo concentrarme en ello”.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[„Du kannst alles werden, wenn ich es nur will.”]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[“Con impegno e costanza, potrai diventare qualunque cosa io desideri.”]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[「私がその気になりさえすれば、お前は何にだってなれるさ。」]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[“내가 생각만 하면 넌 뭐로든 변할 수 있어.”]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[«Ты можешь стать чем угодно, если я приложу к этому старания».]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[“Você pode se tornar qualquer coisa se eu realmente quiser.”]]></LOCALISED_TEXT>
  </FLAVOURTEXT>
  <SUPERTYPE metaname="Legendary" />
  <TYPE metaname="Creature" />
  <SUB_TYPE metaname="Human" />
  <SUB_TYPE metaname="Wizard" />
  <EXPANSION value="M15" />
  <RARITY metaname="R" />
  <POWER value="2" />
  <TOUGHNESS value="2" />
  <ACTIVATED_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{2}{U}, {T}, Sacrifice another creature: Reveal cards from the top of your library until you reveal a nonlegendary creature card. Put that card onto the battlefield and the rest on the bottom of your library in a random order.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[{2}{U}, {T}, sacrifiez une autre créature : Révélez les cartes du dessus de votre bibliothèque jusqu’à ce que vous révéliez une carte de créature non-légendaire. Mettez cette carte sur le champ de bataille et le reste au-dessous de votre bibliothèque dans un ordre aléatoire.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[{2}{U}, {T}, sacrificar otra criatura: Muestra las primeras cartas de tu biblioteca hasta que muestres una carta de criatura que no sea legendaria. Pon esa carta en el campo de batalla y el resto en el fondo de tu biblioteca en un orden aleatorio.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[{2}{U}, {T}, opfere eine andere Kreatur: Decke Karten oben von deiner Bibliothek auf, bis du eine nichtlegendäre Kreaturenkarte aufdeckst. Bringe diese Karte ins Spiel und lege den Rest in zufälliger Reihenfolge unter deine Bibliothek.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[{2}{U}, {T}, Sacrifica un’altra creatura: Rivela carte dalla cima del tuo grimorio finché non riveli una carta creatura non leggendaria. Metti quella carta sul campo di battaglia e il resto in fondo al tuo grimorio in ordine casuale.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[{2}{U}, {T}, 他のクリーチャーを1体生け贄に捧げる:あなたのライブラリーの一番上から、伝説でないクリーチャー・カードが公開されるまでカードを公開する。そのカードを戦場に出し、残りをあなたのライブラリーの一番下に無作為の順番で置く。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[{2}{U}, {T}, 다른 생물을 희생한다: 전설이 아닌 생물 카드가 공개될 때까지 당신의 서고 맨 위의 카드를 공개한다. 그 카드를 전장에 놓고 나머지 카드들은 당신의 서고 맨 밑에 무작위로 놓는다.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[{2}{U}, {T}, пожертвуйте другое существо: показывайте карты с верха вашей библиотеки до тех пор, пока вы не покажете карту существа, не являющегося легендарным. Положите ту карту на поле битвы, а остальные в низ вашей библиотеки в случайном порядке.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[{2}{U}, {T}, Sacrifique outra criatura: Revele cards do topo de seu grimório até revelar um card de criatura não lendária. Coloque aquele card no campo de batalha e o restante no fundo de seu grimório em ordem aleatória.]]></LOCALISED_TEXT>
    <COST mana_cost="{2}{U}" type="Mana" />
    <COST type="TapSelf" />
    <COST type="Sacrifice" definition="0" compartment="1" query_tag="CARD_QUERY_CHOOSE_CREATURE_TO_SACRIFICE" item_count="1" LKI_shield="1" />
    <COST_DEFINITION id="0">
    local filter = ClearFilter()
    filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
    filter:Add(FE_CARD_INSTANCE, OP_NOT, EffectSource())
    </COST_DEFINITION>
    <RESOLUTION_TIME_ACTION>
    local player = EffectController()
    local revealed_cards = EffectDC():Make_Chest(0)
    local cardsInLibrary = EffectController():Library_Count()
    for i = 0, (cardsInLibrary-1) do
       local card = EffectController():Library_GetNth(i)
       card:Reveal()
       -- Check to see if this is a non-legendary creature.
       if (card:GetSuperType():Test( SUPERTYPE_LEGENDARY ) == false and card:GetCardType():Test(CARD_TYPE_CREATURE) == true) then
          -- Yes, so we need to save that card so we can bring it to the battlefield.
          --  We save it in register 1 because 0 is already used by our "revealed cards".
          EffectDC():Set_CardPtr(1, card)
          break
       end
       -- If we reached here then we still haven't found a non-legendary creature so just record the cards we have revealed so far.
       revealed_cards:Set_CardPtr(i, card)
    end
    </RESOLUTION_TIME_ACTION>
    <RESOLUTION_TIME_ACTION>
    -- Get our saved target from register 1.
    --  We don't need to reveal it again because we have already revealed it in the first action.
    local target = EffectDC():Get_CardPtr(1)
    if target ~= nil then
       target: PutOntoBattlefield()
    end
    </RESOLUTION_TIME_ACTION>
    <RESOLUTION_TIME_ACTION>
    -- Get the revealed cards chest from register 0.
    local queryDC = EffectDC():Get_Chest(0)
    local num_cards = queryDC:Count()
    for i=0,num_cards-1 do
       local card = queryDC:Remove_RandomCardPtr()
       if card ~= nil then
          card:PutOnBottomOfLibrary()
       end
    end
    </RESOLUTION_TIME_ACTION>
  </ACTIVATED_ABILITY>
  <SFX text="COMBAT_BLUNT_LARGE_ATTACK" power_boundary_min="4" power_boundary_max="-1" />
  <SFX text="COMBAT_BLUNT_SMALL_ATTACK" power_boundary_min="1" power_boundary_max="3" />
</CARD_V2>
You will notice I didn't change much (still mostly your code):
  • Took out a couple of useless variables.
  • Moved the storage of revealed cards.
  • Added a line to store the non-legendary creature.
  • Removed a pointless action.
  • Changed where we get the target from.
  • Changed the register you get the revealed cards from.
  • Removed a pointless break.
  • Added comments.
RiiakShiNal
Programmer
 
Posts: 2188
Joined: 16 May 2011, 21:37
Has thanked: 75 times
Been thanked: 497 times

Re: Formal Request Thread

Postby loookaz » 03 Aug 2014, 13:37

any chance for Punish Ignorance?
loookaz
 
Posts: 131
Joined: 01 Dec 2012, 10:56
Location: Warsaw, Poland
Has thanked: 22 times
Been thanked: 2 times

PreviousNext

Return to 2014

Who is online

Users browsing this forum: No registered users and 3 guests

Main Menu

User Menu

Our Partners


Who is online

In total there are 3 users online :: 0 registered, 0 hidden and 3 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 3 guests

Login Form