It is currently 17 Sep 2025, 22:30
   
Text Size

MTG - BORN OF THE GODS - COMPLETE SET - UPDATE DXT1

Moderator: CCGHQ Admins

Re: BORN OF THE GODS - CARDS SPOILER - 20 CARDS CODED

Postby thefiremind » 22 Jan 2014, 09:35

NeoAnderson wrote:So do you think that his ability means that if a creature is unable to block it shouldn't be counted.
I was meaning the exact opposite: if you could avoid counting it, it wouldn't be necessary to check if the creature can block. You need to check that ALL creatures can block Tromokratis: if so, then you give it CHARACTERISTIC_ALL_CREATURES_MUST_BLOCK_THIS_IF_ABLE; otherwise, you give it unblockable. But that's all theory because you can't check.
< 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: BORN OF THE GODS - SPOILER 69 CARDS +7 TOKENS +7 ANIMATI

Postby NeoAnderson » 22 Jan 2014, 17:11

22th JANUARY 2014 :
NEW SPOILER CARDS (Coded and included into new download WAD)
UPDATED ALL THE TOKENS WITH OFFICIAL BORN OF THE GODS TOKENS.

Plea for Guidance | Open
Image
Oracle of Bones | Open
Image
Hunter's Prowess | Open
Image
Nyxborn Triton | Open
Image
Nyxborn Eidolon | Open
Image
Nyxborn Rollicker | Open
Image
Nyxborn Wolf | Open
Image
Meletis Astronomer | Open
Image
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: BORN OF THE GODS - CARDS SPOILER - 20 CARDS CODED

Postby NeoAnderson » 22 Jan 2014, 18:16

thefiremind wrote:
NeoAnderson wrote:So do you think that his ability means that if a creature is unable to block it shouldn't be counted.
I was meaning the exact opposite: if you could avoid counting it, it wouldn't be necessary to check if the creature can block. You need to check that ALL creatures can block Tromokratis: if so, then you give it CHARACTERISTIC_ALL_CREATURES_MUST_BLOCK_THIS_IF_ABLE; otherwise, you give it unblockable. But that's all theory because you can't check.
I was just making some tests i would ask to you if do you know how this trigger works :

Code: Select all
 <TRIGGERED_ABILITY replacement_effect="1">
    <TRIGGER value="CANT_BLOCK_TEST" pre_trigger="1" /> 
<RESOLUTION_TIME_ACTION>
        if  EffectController():MyTurn() and EffectSource():IsAttacking() then
            local trname = TriggerObject():GetCardName()
            EffectController():DisplayMessage("TR-NAME :"..trname)
        end
  </RESOLUTION_TIME_ACTION>
 </TRIGGERED_ABILITY>
With this code when i attack with this creature it returns to me all the opponent creatures.
Do you know if it also return a value that we can use? Surely it doesn't have a SecondaryObject() because i tried and it generates a script log.
I have another supposition this trigger could interact with the follow Object functions :
CanBlock_Set
CantBlock_Set
CanOnlyBlock_Set
CanBlock_Clear
CantBlock_Clear
CanOnlyBlock_Clear
CantBeBlockedBy_Set
CantBeBlockedExceptBy_Set
CantBeBlockedBy_Clear
CanOnlyBeBlockedBy_Clear


For Example it checks if the creature can be block by the opponent creature if not it set CantBeBlockedBy_Set(Opponent_Creature_pointer)
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: BORN OF THE GODS - SPOILER 69 CARDS +7 TOKENS +7 ANIMATI

Postby thefiremind » 22 Jan 2014, 19:11

Do you really think that nobody would have found the solution if it were so easy? :P

The CANT_BLOCK_TEST trigger is used to prevent a creature from blocking in a certain situation (Goblin Goon uses it in DotP2013). "TEST" means that the test is what you write in the trigger, the game doesn't have a test of its own to run.

The other functions were previously used to define a subset of the restrictions that we can now define with the EVASION_TEST trigger. In DotP2012 they were required even for simple things such as flying, in DotP2013 they were still required for shadow, in DotP2014 someone tried to use them for shadow and they didn't work at all, so I guess they can't be used anymore. Their parameter isn't a pointer, but an EVASION_... constant. Note that they end with "Set" or "Clear" but there's no "Get", so you couldn't check their effects on a creature even when they were working.
< 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: BORN OF THE GODS - SPOILER 69 CARDS +7 TOKENS +7 ANIMATI

Postby NeoAnderson » 22 Jan 2014, 20:08

thefiremind wrote:Do you really think that nobody would have found the solution if it were so easy? :P

The CANT_BLOCK_TEST trigger is used to prevent a creature from blocking in a certain situation (Goblin Goon uses it in DotP2013). "TEST" means that the test is what you write in the trigger, the game doesn't have a test of its own to run.

The other functions were previously used to define a subset of the restrictions that we can now define with the EVASION_TEST trigger. In DotP2012 they were required even for simple things such as flying, in DotP2013 they were still required for shadow, in DotP2014 someone tried to use them for shadow and they didn't work at all, so I guess they can't be used anymore. Their parameter isn't a pointer, but an EVASION_... constant. Note that they end with "Set" or "Clear" but there's no "Get", so you couldn't check their effects on a creature even when they were working.
Thanks for the explaination my friend, i haven't followed previous versions of dotp so it is a little bit harder to have a complete knowledge of all these functions.
I was not supposing that it is so easy, i know that there are many skilled person, like you that already studied many of these situatios.
So considering what we have said until now is impossible to make a custom function to check the block capability.
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: BORN OF THE GODS - CARDS SPOILER - 27 CARDS 4 TOKENS

Postby sumomole » 23 Jan 2014, 02:11

NeoAnderson wrote:Also because it shouldn't counter the effect who gives the ability, it should override the ability. So the effect is normally played but it does nothing because of the Archetype ability.
unfortunately, BNG FQAs released, it's prevent, not override. :(
User avatar
sumomole
Programmer
 
Posts: 611
Joined: 07 Jun 2011, 08:34
Has thanked: 51 times
Been thanked: 234 times

Re: BORN OF THE GODS - CARDS SPOILER - 27 CARDS 4 TOKENS

Postby NeoAnderson » 23 Jan 2014, 02:22

sumomole wrote:
NeoAnderson wrote:Also because it shouldn't counter the effect who gives the ability, it should override the ability. So the effect is normally played but it does nothing because of the Archetype ability.
unfortunately, BNG FQAs released, it's prevent, not override. :(
I have just seen :( , this make the things really complicated, expecially because how can we enstabilish if an effect is continuous or for a determined period?.
Have you any suggestion?

UPDATE : I am thinking about a possible solution, i found an idea but i still don't know if it will work is just a little bit complicated.
I try to explain the concept so you guys could help me to understand if it could be a good option.

As I have coded the ARCHETYPES, I overwrite the value of the targeted ability of the creatures under opponents' control.
With this trigger :
Code: Select all
<TRIGGERED_ABILITY replacement_effect="1">
  <TRIGGER value="STATE_BASED_EFFECTS">
  local filter = ClearFilter()
  filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
  filter:Add(FE_CHARACTERISTIC, OP_HAS, CHARACTERISTIC_FLYING)
  filter:Add( FE_TEAM, OP_NOT, EffectController():GetTeam() )
  if filter:CountStopAt(1) == 1 then
     return true
  end
 </TRIGGER>
    <FILTER filter_id="1">
      local filter = ClearFilter()
      filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE  )
      filter:Add( FE_TEAM, OP_NOT, EffectController():GetTeam())
    </FILTER>
    <RESOLUTION_TIME_ACTION filter_id="1">
      if FilteredCard() ~= nil then
         local characteristics = FilteredCard():GetCurrentCharacteristics()
        characteristics:Bool_Set( CHARACTERISTIC_FLYING, 0 )
      end
    </RESOLUTION_TIME_ACTION>
    <CONTINUOUS_ACTION layer="6" filter_id="1">
      if FilteredCard() ~= nil then
         local characteristics = FilteredCard():GetCurrentCharacteristics()
           characteristics:Bool_Set( CHARACTERISTIC_FLYING, 0 )
      end
    </CONTINUOUS_ACTION>
 <DURATION>
  if EffectSource() ~= nil then
     return (EffectSource():GetZone() ~= ZONE_BATTLEFIELD)
  else
     return true
  end
 </DURATION>
</TRIGGERED_ABILITY>
As sumomole said we have a problem if a creature's gains the ability while the ARCHETYPE is on the battlefield, because when it leaves the battlefield if that effect is still in play the creature will regain that ability.
For example the opponent use Flying Carpet on a creature controlled by him while i have the archetype of imagination on the battlefield, the creature will not gain fly, but if the Archetype leave the battlefield that turn it will gain that ability.


Here i try to explain how we can avoid this.
The Trigger above is part of the code of the Archetype because it avoid that a creature could "GAINS" the ability while he is in play. This means that it will act only on the creatures who are targeted by a spell or an ability that tried to give them that ability while he is in play.
We could use this information for our intentions, we could save into a chest these creatures' pointers, when we override their ability value. In this way we will have a list of all the creature who tried to "gain" that ability while the Archetype is in play.
Now when the Archetype is going to leave the battlefield we could make a make a delayed trigger for each creature into that chest : delayed trigger still continue to override that ability for the creatures, with a continuos action with undefined duration, but just once time applied to them.
It means that if another ability or spell will target again one of these creatures the last effect will be considered and the ability could be gain.


I know that problably i am explaining in a bad way but i hope you received the main concept.

Do you think it could work?

UPDATE : I made a modified version now it seems to works compliant to the MTG rules, but i need help to check if i have considered any situations.


Test condition :
Opponent with 3 creatures onto battlefield (1th creature with intrinsic flying, 2th and 3th without flying)
I have flying carpet to give flying ability for test.


Scenario 1 :
1. I cast Archetype of Immagination
2. The only creature with flying ability of my opponent lose flying.
3. I give flying with Flying Carpet to the 2th creature (nothing happen)
4. I return Archetype of Immagination in my hand
5. Only the 1th creature have back the flying ability

Scenario 2 :
1. I give flying with Flying Carpet to the 2th creature (It gains flying)
2. I cast Archetype of Immagination (each opponent creatures lose flying)
3. I return Archetype of Immagination in my hand
4. 1th creature and 2th creature have back the flying ability

Archetype of Imagination REVISED | Open
Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
  <FILENAME text="ARCHETYPE_OF_IMAGINATION_9988771" />
  <CARDNAME text="ARCHETYPE_OF_IMAGINATION" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Archetype of Imagination]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Archetype of Imagination]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Archetype of Imagination]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Archetype of Imagination]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Archetipo dell'Immaginazione]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Archetype of Imagination]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Archetype of Imagination]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Archetype of Imagination]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Archetype of Imagination]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="9988771" />
  <ARTID value="9988771" />
  <ARTIST name="Robbie Trevino" />
  <CASTING_COST cost="{4}{U}{U}" />
  <FLAVOURTEXT>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA["Is it not the embodiment of our aspirations?"
-Prokopios, astronomer of Meletis]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA["Is it not the embodiment of our aspirations?"
-Prokopios, astronomer of Meletis]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA["Is it not the embodiment of our aspirations?"
-Prokopios, astronomer of Meletis]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA["Is it not the embodiment of our aspirations?"
-Prokopios, astronomer of Meletis]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA["Non è forse l'incarnazione delle nostre aspirazioni?"
-Filastrio, astronomo di Meletis]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA["Is it not the embodiment of our aspirations?"
-Prokopios, astronomer of Meletis]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA["Is it not the embodiment of our aspirations?"
-Prokopios, astronomer of Meletis]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA["Is it not the embodiment of our aspirations?"
-Prokopios, astronomer of Meletis]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA["Is it not the embodiment of our aspirations?"
-Prokopios, astronomer of Meletis]]></LOCALISED_TEXT>
  </FLAVOURTEXT>
  <TYPE metaname="Enchantment" />
  <TYPE metaname="Creature" />
  <SUB_TYPE metaname="Human" />
  <SUB_TYPE metaname="Wizard" />
  <EXPANSION value="BNG" />
  <RARITY metaname="U" />
  <POWER value="3" />
  <TOUGHNESS value="2" />


<TRIGGERED_ABILITY replacement_effect="1" active_zone="ZONE_BATTLEFIELD">
  <TRIGGER value="STATE_BASED_EFFECTS">
  local filter = ClearFilter()
  filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
  filter:Add(FE_CHARACTERISTIC, OP_HAS, CHARACTERISTIC_FLYING)
  filter:Add( FE_TEAM, OP_NOT, EffectController():GetTeam() )
  local filter_count = filter:EvaluateObjects()
  if filter_count &gt; 0 then
        local delayDC = EffectDC():Make_Chest(1)
        delayDC:Set_Int(0,filter_count)
        for i=0, (filter_count-1) do
            local permanent = filter:GetNthEvaluatedObject(i)
            if permanent ~= nil then
               delayDC:Set_CardPtr(i+1, permanent)
            end
        end     
        MTG():CreateDelayedTrigger(1, delayDC)
     return true
  end
 </TRIGGER>
    <FILTER filter_id="1">
     local filter = ClearFilter()
     filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
     filter:Add(FE_CHARACTERISTIC, OP_HAS, CHARACTERISTIC_FLYING)
     filter:Add( FE_TEAM, OP_NOT, EffectController():GetTeam() )
    </FILTER>
    <RESOLUTION_TIME_ACTION filter_id="1">
      if FilteredCard() ~= nil then
         local characteristics = FilteredCard():GetCurrentCharacteristics()
        characteristics:Bool_Set( CHARACTERISTIC_FLYING, 0 )
      end
    </RESOLUTION_TIME_ACTION>
    <CONTINUOUS_ACTION layer="6" filter_id="1">
      if FilteredCard() ~= nil then
         local characteristics = FilteredCard():GetCurrentCharacteristics()
           characteristics:Bool_Set( CHARACTERISTIC_FLYING, 0 )
      end
    </CONTINUOUS_ACTION>
 <DURATION>
  if EffectSource() ~= nil then
     return (EffectSource():GetZone() ~= ZONE_BATTLEFIELD)
  else
     return true
  end
 </DURATION>
</TRIGGERED_ABILITY>

<TRIGGERED_ABILITY resource_id="1" replacement_effect="1">
    <TRIGGER value="ZONECHANGE_CONSIDERED" simple_qualifier="self" to_zone="ZONE_ANY" from_zone="ZONE_BATTLEFIELD" pre_trigger="1" />
    <CLEANUP fire_once="1" />
    <FILTER filter_id="1">
      MTG():ClearFilterMark()
      local filter = ClearFilter()
      local count = EffectDC():Get_Int(0)
      for i=1, (count) do
       local permanent = EffectDC():Get_CardPtr(i)
       if permanent ~= nil then
          permanent:MarkForFilter()
       end
      end 
      filter:SetMarkedObjectsOnly()   
    </FILTER>

    <CONTINUOUS_ACTION layer="6" filter_id="1">
      if FilteredCard() ~= nil then
         local characteristics = FilteredCard():GetCurrentCharacteristics()
           characteristics:Bool_Set( CHARACTERISTIC_FLYING, 0 )
      end
    </CONTINUOUS_ACTION>
  <DURATION>
     return false
 </DURATION>
</TRIGGERED_ABILITY>


  <STATIC_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Creatures you control have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Creatures you control have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Creatures you control have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Creatures you control have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Le creature che controlli hanno volare.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Creatures you control have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Creatures you control have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Creatures you control have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Creatures you control have flying.]]></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="6" filter_id="0">
    if FilteredCard() ~= nil then
       local characteristics = FilteredCard():GetCurrentCharacteristics()
       characteristics:Bool_Set( CHARACTERISTIC_FLYING, 1 )
    end
    </CONTINUOUS_ACTION>
  </STATIC_ABILITY>
  <STATIC_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Creatures your opponents control lose flying and can't have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Creatures your opponents control lose flying and can't have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Creatures your opponents control lose flying and can't have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Creatures your opponents control lose flying and can't have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Le creature controllate dai tuoi avversari perdono volare e non possono avere volare.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Creatures your opponents control lose flying and can't have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Creatures your opponents control lose flying and can't have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Creatures your opponents control lose flying and can't have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Creatures your opponents control lose flying and can't have flying.]]></LOCALISED_TEXT>
     <FILTER filter_id="1">
    local filter = ClearFilter()
    filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE  )
    filter:Add( FE_TEAM, OP_NOT, EffectController():GetTeam())
    </FILTER>
    <CONTINUOUS_ACTION layer="6" filter_id="1">
    if FilteredCard() ~= nil  then
       local characteristics = FilteredCard():GetCurrentCharacteristics()
       characteristics:Bool_Set( CHARACTERISTIC_FLYING, 0 )
    end
    </CONTINUOUS_ACTION>
  </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>
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: BORN OF THE GODS - CARDS SPOILER - 27 CARDS 4 TOKENS

Postby sumomole » 23 Jan 2014, 15:11

NeoAnderson wrote:I made a modified version now it seems to works compliant to the MTG rules, but i need help to check if i have considered any situations.
how about a flying creature gains flying, like Ornithopter.
User avatar
sumomole
Programmer
 
Posts: 611
Joined: 07 Jun 2011, 08:34
Has thanked: 51 times
Been thanked: 234 times

Re: BORN OF THE GODS - CARDS SPOILER - 27 CARDS 4 TOKENS

Postby NeoAnderson » 23 Jan 2014, 15:28

sumomole wrote:
NeoAnderson wrote:I made a modified version now it seems to works compliant to the MTG rules, but i need help to check if i have considered any situations.
how about a flying creature gains flying, like Ornithopter.
You're right this create problems, because if an ability try o give flying toa creature who already have it while Archetype is in play, when it leaves the battlefield that creature doesn't gain back flying ability also if it is an intrisic ability.
But i think i can resolve this problem.


UPDATE : Following your pointing i made another modify, while the archetype is entering the battlefield i store into a linkedDC chest all the creatures (controlled by opponents) that already has flying ability, then when i have to add them to the delayed trigger i check first if they are into that chest, if the creature is in the chest i just remove flying ability, without insert it into the delayed trigger, so when the archetype leave the battlefield it gains back his ability.

Archetype of Imagination REV 2.0 | Open
CODE REMOVED STILL HAVE SOMETHING TO ADJUST PLEASE LOOK FOR THE REV 3.0
Last edited by NeoAnderson on 23 Jan 2014, 16:30, edited 1 time in total.
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: BORN OF THE GODS - CARDS SPOILER - 27 CARDS 4 TOKENS

Postby RiiakShiNal » 23 Jan 2014, 15:57

NeoAnderson wrote:UPDATE : Following your pointing i made another modify, while the archetype is entering the battlefield i store into a linkedDC chest all the creatures (controlled by opponents) that already has flying ability, then when i have to add them to the delayed trigger i check first if they are into that chest, if the creature is in the chest i just remove flying ability, without insert it into the delayed trigger, so when the archetype leave the battlefield it gains back his ability.
But then you have a problem if the opponent gains control of say an Ornithopter you controlled. Additionally because the Archetypes are permanents your opponent could gain control of your Archetype which further complicates issues.
RiiakShiNal
Programmer
 
Posts: 2189
Joined: 16 May 2011, 21:37
Has thanked: 75 times
Been thanked: 497 times

Re: BORN OF THE GODS - CARDS SPOILER - 27 CARDS 4 TOKENS

Postby NeoAnderson » 23 Jan 2014, 16:07

RiiakShiNal wrote:
NeoAnderson wrote:UPDATE : Following your pointing i made another modify, while the archetype is entering the battlefield i store into a linkedDC chest all the creatures (controlled by opponents) that already has flying ability, then when i have to add them to the delayed trigger i check first if they are into that chest, if the creature is in the chest i just remove flying ability, without insert it into the delayed trigger, so when the archetype leave the battlefield it gains back his ability.
But then you have a problem if the opponent gains control of say an Ornithopter you controlled. Additionally because the Archetypes are permanents your opponent could gain control of your Archetype which further complicates issues.
These issues i think could be resolved storing all the creatures with flying into the linkedDC chest also the creature controlled by my team. I think this should work.

Please Riiak, i know you generally you don't test the card just look the code, but i need to understand if something is missing.
Now the card seem to work properly. Please try to think some combinations could create problems and i will make specified tests.

The new code:

Archetype of Imagination REV 3.0 | Open
Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
  <FILENAME text="ARCHETYPE_OF_IMAGINATION_9988771" />
  <CARDNAME text="ARCHETYPE_OF_IMAGINATION" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Archetype of Imagination]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Archetype of Imagination]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Archetype of Imagination]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Archetype of Imagination]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Archetipo dell'Immaginazione]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Archetype of Imagination]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Archetype of Imagination]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Archetype of Imagination]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Archetype of Imagination]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="9988771" />
  <ARTID value="9988771" />
  <ARTIST name="Robbie Trevino" />
  <CASTING_COST cost="{4}{U}{U}" />
  <FLAVOURTEXT>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA["Is it not the embodiment of our aspirations?"
-Prokopios, astronomer of Meletis]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA["Is it not the embodiment of our aspirations?"
-Prokopios, astronomer of Meletis]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA["Is it not the embodiment of our aspirations?"
-Prokopios, astronomer of Meletis]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA["Is it not the embodiment of our aspirations?"
-Prokopios, astronomer of Meletis]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA["Non è forse l'incarnazione delle nostre aspirazioni?"
-Filastrio, astronomo di Meletis]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA["Is it not the embodiment of our aspirations?"
-Prokopios, astronomer of Meletis]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA["Is it not the embodiment of our aspirations?"
-Prokopios, astronomer of Meletis]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA["Is it not the embodiment of our aspirations?"
-Prokopios, astronomer of Meletis]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA["Is it not the embodiment of our aspirations?"
-Prokopios, astronomer of Meletis]]></LOCALISED_TEXT>
  </FLAVOURTEXT>
  <TYPE metaname="Enchantment" />
  <TYPE metaname="Creature" />
  <SUB_TYPE metaname="Human" />
  <SUB_TYPE metaname="Wizard" />
  <EXPANSION value="BNG" />
  <RARITY metaname="U" />
  <POWER value="3" />
  <TOUGHNESS value="2" />

<TRIGGERED_ABILITY linked_ability_group="1" replacement_effect="1" active_zone="ZONE_TRANSITION">
    <TRIGGER value="ZONECHANGE_TRANSITION" simple_qualifier="self" to_zone="ZONE_BATTLEFIELD" from_zone="ZONE_ANY" >
   local filter = ClearFilter()
  filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
  filter:Add(FE_CHARACTERISTIC, OP_HAS, CHARACTERISTIC_FLYING)
  local filter_count = filter:EvaluateObjects()
  if filter_count &gt; 0 then
        LinkedDC():Set_Int(0,filter_count)
        for i=0, (filter_count-1) do
            local permanent = filter:GetNthEvaluatedObject(i)
            if permanent ~= nil then
               LinkedDC():Set_CardPtr(i+1, permanent)
            end
        end     
  end
 </TRIGGER>
</TRIGGERED_ABILITY>


<TRIGGERED_ABILITY linked_ability_group="1" replacement_effect="1" active_zone="ZONE_BATTLEFIELD">
  <TRIGGER value="STATE_BASED_EFFECTS">
  local filter = ClearFilter()
  filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
  filter:Add(FE_CHARACTERISTIC, OP_HAS, CHARACTERISTIC_FLYING)
  filter:Add( FE_TEAM, OP_NOT, EffectController():GetTeam() )
  local filter_count = filter:EvaluateObjects()
  if filter_count &gt; 0 then
        local delayDC = EffectDC():Make_Chest(1)
        delayDC:Set_Int(0,filter_count)
        local j = 0
        for i=0, (filter_count-1) do
            local permanent = filter:GetNthEvaluatedObject(i)
            if permanent ~= nil then
               local index = LinkedDC():Get_Int(0)
               local foundvalue = 0
               for k=1, index do
                   local card = LinkedDC():Get_CardPtr(k)
                   if card  ~= nil then
                      if permanent == card  then
                         foundvalue = 1
                      end
                   end
               end
               if foundvalue == 0 then
                  j = j + 1   
                  delayDC:Set_CardPtr(j, permanent)
               end
            end
        end
        delayDC:Set_Int(0, j)     
        MTG():CreateDelayedTrigger(1, delayDC)
     return true
  end
 </TRIGGER>
    <FILTER filter_id="1">
     local filter = ClearFilter()
     filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
     filter:Add(FE_CHARACTERISTIC, OP_HAS, CHARACTERISTIC_FLYING)
     filter:Add( FE_TEAM, OP_NOT, EffectController():GetTeam() )
    </FILTER>
    <RESOLUTION_TIME_ACTION filter_id="1">
      if FilteredCard() ~= nil then
         local characteristics = FilteredCard():GetCurrentCharacteristics()
        characteristics:Bool_Set( CHARACTERISTIC_FLYING, 0 )
      end
    </RESOLUTION_TIME_ACTION>
    <CONTINUOUS_ACTION layer="6" filter_id="1">
      if FilteredCard() ~= nil then
         local characteristics = FilteredCard():GetCurrentCharacteristics()
           characteristics:Bool_Set( CHARACTERISTIC_FLYING, 0 )
      end
    </CONTINUOUS_ACTION>
 <DURATION>
  if EffectSource() ~= nil then
     return (EffectSource():GetZone() ~= ZONE_BATTLEFIELD)
  else
     return true
  end
 </DURATION>
</TRIGGERED_ABILITY>

<TRIGGERED_ABILITY resource_id="1" replacement_effect="1">
    <TRIGGER value="ZONECHANGE_CONSIDERED" simple_qualifier="self" to_zone="ZONE_ANY" from_zone="ZONE_BATTLEFIELD" pre_trigger="1" />
    <CLEANUP fire_once="1" />
    <FILTER filter_id="1">
      MTG():ClearFilterMark()
      local filter = ClearFilter()
      local count = EffectDC():Get_Int(0)
      for i=1, (count) do
       local permanent = EffectDC():Get_CardPtr(i)
       if permanent ~= nil then
          permanent:MarkForFilter()
       end
      end 
      filter:SetMarkedObjectsOnly()   
    </FILTER>

    <CONTINUOUS_ACTION layer="6" filter_id="1">
      if FilteredCard() ~= nil then
         local characteristics = FilteredCard():GetCurrentCharacteristics()
           characteristics:Bool_Set( CHARACTERISTIC_FLYING, 0 )
      end
    </CONTINUOUS_ACTION>
  <DURATION>
     return false
 </DURATION>
</TRIGGERED_ABILITY>


  <STATIC_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Creatures you control have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Creatures you control have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Creatures you control have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Creatures you control have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Le creature che controlli hanno volare.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Creatures you control have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Creatures you control have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Creatures you control have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Creatures you control have flying.]]></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="6" filter_id="0">
    if FilteredCard() ~= nil then
       local characteristics = FilteredCard():GetCurrentCharacteristics()
       characteristics:Bool_Set( CHARACTERISTIC_FLYING, 1 )
    end
    </CONTINUOUS_ACTION>
  </STATIC_ABILITY>
  <STATIC_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Creatures your opponents control lose flying and can't have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Creatures your opponents control lose flying and can't have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Creatures your opponents control lose flying and can't have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Creatures your opponents control lose flying and can't have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Le creature controllate dai tuoi avversari perdono volare e non possono avere volare.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Creatures your opponents control lose flying and can't have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Creatures your opponents control lose flying and can't have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Creatures your opponents control lose flying and can't have flying.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Creatures your opponents control lose flying and can't have flying.]]></LOCALISED_TEXT>
     <FILTER filter_id="1">
    local filter = ClearFilter()
    filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE  )
    filter:Add( FE_TEAM, OP_NOT, EffectController():GetTeam())
    </FILTER>
    <CONTINUOUS_ACTION layer="6" filter_id="1">
    if FilteredCard() ~= nil  then
       local characteristics = FilteredCard():GetCurrentCharacteristics()
       characteristics:Bool_Set( CHARACTERISTIC_FLYING, 0 )
    end
    </CONTINUOUS_ACTION>
  </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>
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: BORN OF THE GODS - CARDS SPOILER - 27 CARDS 4 TOKENS

Postby RiiakShiNal » 23 Jan 2014, 17:27

NeoAnderson wrote:These issues i think could be resolved storing all the creatures with flying into the linkedDC chest also the creature controlled by my team. I think this should work.
Except if the creature with flying (and a condition) enters the battlefield after the Archetype or the condition activates afterwards. For example Snapsail Glider.
RiiakShiNal
Programmer
 
Posts: 2189
Joined: 16 May 2011, 21:37
Has thanked: 75 times
Been thanked: 497 times

Re: BORN OF THE GODS - CARDS SPOILER - 27 CARDS 4 TOKENS

Postby NeoAnderson » 23 Jan 2014, 17:45

RiiakShiNal wrote:
NeoAnderson wrote:These issues i think could be resolved storing all the creatures with flying into the linkedDC chest also the creature controlled by my team. I think this should work.
Except if the creature with flying (and a condition) enters the battlefield after the Archetype or the condition activates afterwards. For example Snapsail Glider.
This is the reason why i am asking to you and the other guys to help me to debug this ability.
Unfotunately dotp doesn't give us a lot of possibilities with all his limitations.
Anyway, About the first issue i can add new creatures, into LinkedDC() chest if they have flying, should be easy with another trigger.
But about the conditions that can be activated while it is in play i am not sure how to resolve..I need help guys.
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: BORN OF THE GODS - SPOILER 69 CARDS +7 TOKENS +7 ANIMATI

Postby drleg3nd » 23 Jan 2014, 22:19

hey neo I got this from Phenax:
[lua] [string "PHENAX_GOD_OF_DECEPTION_9988821_TITLE (RESOLUTION_TIME_ACTION)~0x0000046e"]:4: attempt to index a nil value

also when I play any of these gods and cast nightveil specter, specter gets stuck in front of my screen and wont resolve
drleg3nd
 
Posts: 528
Joined: 14 May 2012, 20:05
Has thanked: 5 times
Been thanked: 30 times

Re: BORN OF THE GODS - SPOILER 69 CARDS +7 TOKENS +7 ANIMATI

Postby NeoAnderson » 24 Jan 2014, 00:06

drleg3nd wrote:hey neo I got this from Phenax:
[lua] [string "PHENAX_GOD_OF_DECEPTION_9988821_TITLE (RESOLUTION_TIME_ACTION)~0x0000046e"]:4: attempt to index a nil value

also when I play any of these gods and cast nightveil specter, specter gets stuck in front of my screen and wont resolve
Hi my friend i checked your game scenario, but it works without any problems for me.
Look the follow screenshoots :

1. Casting Nightveil specter, Phenax is on the upper right corner considered as enchantment.
Image
2. Nightveil specter normally resolve into stack
Image
3. Nightveil specter enter the battlefield its dual devotion is counted for 3, and phenax becomes a creature
Image

So what i can suggest to you is to first check which version you have of my wad file, be sure is the latest.
Then better check other mod installed can have some conflicts.
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

PreviousNext

Return to 2014

Who is online

Users browsing this forum: No registered users and 23 guests

Main Menu

User Menu

Our Partners


Who is online

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

Login Form