Page 1 of 1

Renegade Doppelganger and Cryptoplasm.

PostPosted: 16 Oct 2012, 16:51
by alexandreonly
Renegade Doppelganger ability work, but just for the 1st time. I don't know why:

Code: Select all
<?xml version='1.0'?>
<CARD_V2>
  <FILENAME text="RENEGADE_DOPPELGANGER_193582" />
  <CARDNAME text="RENEGADE_DOPPELGANGER" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Renegade Doppelganger]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Renegade Doppelganger]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Renegade Doppelganger]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Renegade Doppelganger]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Renegade Doppelganger]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Renegade Doppelganger]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Renegade Doppelganger]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Renegade Doppelganger]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Renegade Doppelganger]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="193582" />
  <ARTID value="193582" />
  <ARTIST name="James Ryman" />
  <CASTING_COST cost="{1}{U}" />
  <FLAVOURTEXT>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[To truly know a creature, slither a mile in its tentacles.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[To truly know a creature, slither a mile in its tentacles.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[To truly know a creature, slither a mile in its tentacles.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[To truly know a creature, slither a mile in its tentacles.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[To truly know a creature, slither a mile in its tentacles.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[To truly know a creature, slither a mile in its tentacles.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[To truly know a creature, slither a mile in its tentacles.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[To truly know a creature, slither a mile in its tentacles.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[To truly know a creature, slither a mile in its tentacles.]]></LOCALISED_TEXT>
  </FLAVOURTEXT>
  <TYPE metaname="Creature" />
  <SUB_TYPE metaname="Shapeshifter" />
  <EXPANSION value="DPG" />
  <RARITY metaname="R" />
  <POWER value="0" />
  <TOUGHNESS value="1" />
  <TRIGGERED_ABILITY filter_zone="ZONE_IN_PLAY">
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Whenever another creature enters the battlefield under your control, you may have Renegade Doppelganger become a copy of that creature until end of turn. |(If it does, it loses this ability for the rest of the turn.)|]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Whenever another creature enters the battlefield under your control, you may have Renegade Doppelganger become a copy of that creature until end of turn. |(If it does, it loses this ability for the rest of the turn.)|]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Whenever another creature enters the battlefield under your control, you may have Renegade Doppelganger become a copy of that creature until end of turn. |(If it does, it loses this ability for the rest of the turn.)|]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Whenever another creature enters the battlefield under your control, you may have Renegade Doppelganger become a copy of that creature until end of turn. |(If it does, it loses this ability for the rest of the turn.)|]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Whenever another creature enters the battlefield under your control, you may have Renegade Doppelganger become a copy of that creature until end of turn. |(If it does, it loses this ability for the rest of the turn.)|]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Whenever another creature enters the battlefield under your control, you may have Renegade Doppelganger become a copy of that creature until end of turn. |(If it does, it loses this ability for the rest of the turn.)|]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Whenever another creature enters the battlefield under your control, you may have Renegade Doppelganger become a copy of that creature until end of turn. |(If it does, it loses this ability for the rest of the turn.)|]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Whenever another creature enters the battlefield under your control, you may have Renegade Doppelganger become a copy of that creature until end of turn. |(If it does, it loses this ability for the rest of the turn.)|]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Whenever another creature enters the battlefield under your control, you may have Renegade Doppelganger become a copy of that creature until end of turn. |(If it does, it loses this ability for the rest of the turn.)|]]></LOCALISED_TEXT>
    <TRIGGER value="ZONECHANGE_END" to_zone="ZONE_IN_PLAY">
    return (TriggerObject():GetCardType():Test( CARD_TYPE_CREATURE ) ~= 0 and TriggerObject():GetPlayer() == EffectController())
    </TRIGGER>
   <RESOLUTION_TIME_ACTION>
    if EffectController():IsAI() == 0 then
       EffectController():BeginNewMultipleChoice()   
       EffectController():AddMultipleChoiceAnswer( "CARD_QUERY_OPTION_YES" )   
       EffectController():AddMultipleChoiceAnswer( "CARD_QUERY_OPTION_NO" )   
       EffectController():AskMultipleChoiceQuestion( "CARD_QUERY_COPY")
    end
    </RESOLUTION_TIME_ACTION>
    <RESOLUTION_TIME_ACTION>
    if EffectController():IsAI() == 0 then
       local decision = Object():GetMultipleChoiceResult()
       if decision == 0 then
          TriggerObject():StoreCopiableValues(EffectDC():Make_Chest(1))
         EffectSource():UseCopiableValues(EffectDC():Get_Chest(1))
         EffectDC():Protect_CardPtr( COMPARTMENT_ID_EFFECT_SOURCE )
       end
    end
    </RESOLUTION_TIME_ACTION>
   <CONTINUOUS_ACTION layer="1">
    if EffectSource() ~= nil and EffectDC():Get_Chest(1) ~= nil then
       EffectSource():UseCopiableValues(EffectDC():Get_Chest(1))
    end
    </CONTINUOUS_ACTION>
  <DURATION simple_duration="UntilEOT" />
  </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>
Cryptoplasm ability just don't work (just the multiple choice show up and nothing more):

Code: Select all
<?xml version='1.0'?>
<CARD_V2>
  <FILENAME text="CRYPTOPLASM_214037" />
  <CARDNAME text="CRYPTOPLASM" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Cryptoplasm]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Cryptoplasm]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Cryptoplasm]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Cryptoplasm]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Cryptoplasm]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Cryptoplasm]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Cryptoplasm]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Cryptoplasm]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Cryptoplasm]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="214037" />
  <ARTID value="214037" />
  <ARTIST name="Eric Deschamps" />
  <CASTING_COST cost="{1}{U}{U}" />
  <FLAVOURTEXT>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[“If left in the enemy’s shape too long, it might be lost to them.”
—Vy Covalt, Neurok agent]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[“If left in the enemy’s shape too long, it might be lost to them.”
—Vy Covalt, Neurok agent]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[“If left in the enemy’s shape too long, it might be lost to them.”
—Vy Covalt, Neurok agent]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[“If left in the enemy’s shape too long, it might be lost to them.”
—Vy Covalt, Neurok agent]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[“If left in the enemy’s shape too long, it might be lost to them.”
—Vy Covalt, Neurok agent]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[“If left in the enemy’s shape too long, it might be lost to them.”
—Vy Covalt, Neurok agent]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[“If left in the enemy’s shape too long, it might be lost to them.”
—Vy Covalt, Neurok agent]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[“If left in the enemy’s shape too long, it might be lost to them.”
—Vy Covalt, Neurok agent]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[“If left in the enemy’s shape too long, it might be lost to them.”
—Vy Covalt, Neurok agent]]></LOCALISED_TEXT>
  </FLAVOURTEXT>
  <TYPE metaname="Creature" />
  <SUB_TYPE metaname="Shapeshifter" />
  <EXPANSION value="DPG" />
  <RARITY metaname="R" />
  <POWER value="2" />
  <TOUGHNESS value="2" />
  <TRIGGERED_ABILITY filter_zone="ZONE_IN_PLAY">
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[At the beginning of your upkeep, you may have Cryptoplasm become a copy of another target creature. If you do, Cryptoplasm gains this ability.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[At the beginning of your upkeep, you may have Cryptoplasm become a copy of another target creature. If you do, Cryptoplasm gains this ability.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[At the beginning of your upkeep, you may have Cryptoplasm become a copy of another target creature. If you do, Cryptoplasm gains this ability.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[At the beginning of your upkeep, you may have Cryptoplasm become a copy of another target creature. If you do, Cryptoplasm gains this ability.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[At the beginning of your upkeep, you may have Cryptoplasm become a copy of another target creature. If you do, Cryptoplasm gains this ability.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[At the beginning of your upkeep, you may have Cryptoplasm become a copy of another target creature. If you do, Cryptoplasm gains this ability.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[At the beginning of your upkeep, you may have Cryptoplasm become a copy of another target creature. If you do, Cryptoplasm gains this ability.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[At the beginning of your upkeep, you may have Cryptoplasm become a copy of another target creature. If you do, Cryptoplasm gains this ability.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[At the beginning of your upkeep, you may have Cryptoplasm become a copy of another target creature. If you do, Cryptoplasm gains this ability.]]></LOCALISED_TEXT>
  <TRIGGER value="BEGINNING_OF_STEP" simple_qualifier="controller">
    return ( EffectController():MyTurn() ~= 0 ) and ( MTG():GetStep() == STEP_UPKEEP )
    </TRIGGER>
   <PLAY_TIME_ACTION>
    local player = EffectController()
    if AtLeastOneTargetFromDefinition(0) == 1 and player ~= nil then
       player:SetCustomQueryInstructionValue(1)
       player:BeginNewMultipleChoice()
       player:AddMultipleChoiceAnswer( "CARD_QUERY_OPTION_YES" )
       player:AddMultipleChoiceAnswer( "CARD_QUERY_OPTION_NO" )
       player:AskMultipleChoiceQuestion( "USE_ABILITY" )
    end
    </PLAY_TIME_ACTION>
  <TARGET_DEFINITION id="0">
    local filter = Object():GetFilter()
    filter:Clear()
    filter:AddCardType( CARD_TYPE_CREATURE )
    filter:SetZone( ZONE_IN_PLAY )
    filter:SetHint( HINT_NEUTRAL, EffectController() )
    filter:May()
    filter:NotTargetted()
    </TARGET_DEFINITION>
   <PLAY_TIME_ACTION target_choosing="1">
    if AtLeastOneTargetFromDefinition(0) == 1 and player ~= nil then
       if Object():GetMultipleChoiceResult() == 0 then
          player:ChooseTarget( 0, "CHOOSE_CREATURE_TO_COPY", EffectDC():Make_Targets(0) )
       end
    end
    </PLAY_TIME_ACTION>
   <RESOLUTION_TIME_ACTION>
    local target_creature = EffectDC():Get_Targets(0):Get_CardPtr(0)
    if ( target_creature ~= nil ) then   
       target_creature:StoreCopiableValues(EffectDC():Make_Chest(1))   -- this grabs the copiable values from the target and puts them into a datachest
       EffectSource():UseCopiableValues(EffectDC():Get_Chest(1))      -- this needs to be here to refire any other transition triggers (e.g. devour)
       EffectDC():Protect_CardPtr( COMPARTMENT_ID_EFFECT_SOURCE )      -- this stops the effect from being wiped when we complete the zonechange
    end
    </RESOLUTION_TIME_ACTION>
    <CONTINUOUS_ACTION layer="1">
    if EffectSource() ~= nil and EffectDC():Get_Chest(1) ~= nil then
       EffectSource():UseCopiableValues(EffectDC():Get_Chest(1))
    end
    </CONTINUOUS_ACTION>
   <CONTINUOUS_ACTION layer="6">
    if EffectSource() ~= nil and EffectDC():Get_Chest(1) ~= nil then
       EffectSource():GetCurrentCharacteristics():GrantAbility(1)
    end
    </CONTINUOUS_ACTION>
    <DURATION>
    return (EffectSource() == nil)
    </DURATION>
  </TRIGGERED_ABILITY>
  <TRIGGERED_ABILITY filter_zone="ZONE_IN_PLAY" resource_id="1" LKI_shield_effect_source="1">
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[At the beginning of your upkeep, you may have Cryptoplasm become a copy of another target creature. If you do, Cryptoplasm gains this ability.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[At the beginning of your upkeep, you may have Cryptoplasm become a copy of another target creature. If you do, Cryptoplasm gains this ability.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[At the beginning of your upkeep, you may have Cryptoplasm become a copy of another target creature. If you do, Cryptoplasm gains this ability.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[At the beginning of your upkeep, you may have Cryptoplasm become a copy of another target creature. If you do, Cryptoplasm gains this ability.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[At the beginning of your upkeep, you may have Cryptoplasm become a copy of another target creature. If you do, Cryptoplasm gains this ability.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[At the beginning of your upkeep, you may have Cryptoplasm become a copy of another target creature. If you do, Cryptoplasm gains this ability.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[At the beginning of your upkeep, you may have Cryptoplasm become a copy of another target creature. If you do, Cryptoplasm gains this ability.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[At the beginning of your upkeep, you may have Cryptoplasm become a copy of another target creature. If you do, Cryptoplasm gains this ability.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[At the beginning of your upkeep, you may have Cryptoplasm become a copy of another target creature. If you do, Cryptoplasm gains this ability.]]></LOCALISED_TEXT>
  <TRIGGER value="BEGINNING_OF_STEP" simple_qualifier="controller">
    return ( EffectController():MyTurn() ~= 0 ) and ( MTG():GetStep() == STEP_UPKEEP )
    </TRIGGER>
   <PLAY_TIME_ACTION>
    local player = EffectController()
    if AtLeastOneTargetFromDefinition(0) == 1 and player ~= nil then
       player:SetCustomQueryInstructionValue(1)
       player:BeginNewMultipleChoice()
       player:AddMultipleChoiceAnswer( "CARD_QUERY_OPTION_YES" )
       player:AddMultipleChoiceAnswer( "CARD_QUERY_OPTION_NO" )
       player:AskMultipleChoiceQuestion( "USE_ABILITY" )
    end
    </PLAY_TIME_ACTION>
  <TARGET_DEFINITION id="0">
    local filter = Object():GetFilter()
    filter:Clear()
    filter:AddCardType( CARD_TYPE_CREATURE )
    filter:SetZone( ZONE_IN_PLAY )
    filter:SetHint( HINT_NEUTRAL, EffectController() )
    filter:May()
    filter:NotTargetted()
    </TARGET_DEFINITION>
   <PLAY_TIME_ACTION target_choosing="1">
    if AtLeastOneTargetFromDefinition(0) == 1 and player ~= nil then
       if Object():GetMultipleChoiceResult() == 0 then
          player:ChooseTarget( 0, "CHOOSE_CREATURE_TO_COPY", EffectDC():Make_Targets(0) )
       end
    end
    </PLAY_TIME_ACTION>
   <RESOLUTION_TIME_ACTION>
    local target_creature = EffectDC():Get_Targets(0):Get_CardPtr(0)
    if ( target_creature ~= nil ) then   
       target_creature:StoreCopiableValues(EffectDC():Make_Chest(1))   -- this grabs the copiable values from the target and puts them into a datachest
       EffectSource():UseCopiableValues(EffectDC():Get_Chest(1))      -- this needs to be here to refire any other transition triggers (e.g. devour)
       EffectDC():Protect_CardPtr( COMPARTMENT_ID_EFFECT_SOURCE )      -- this stops the effect from being wiped when we complete the zonechange
    end
    </RESOLUTION_TIME_ACTION>
    <CONTINUOUS_ACTION layer="1">
    if EffectSource() ~= nil and EffectDC():Get_Chest(1) ~= nil then
       EffectSource():UseCopiableValues(EffectDC():Get_Chest(1))
    end
    </CONTINUOUS_ACTION>
   <CONTINUOUS_ACTION layer="6">
    if EffectSource() ~= nil and EffectDC():Get_Chest(1) ~= nil then
       EffectSource():GetCurrentCharacteristics():GrantAbility(1)
    end
    </CONTINUOUS_ACTION>
    <DURATION>
    return (EffectSource() == nil)
    </DURATION>
  </TRIGGERED_ABILITY>
  <SFX text="COMBAT_CHOP_LARGE_ATTACK" power_boundary_min="4" power_boundary_max="-1" />
<SFX text="COMBAT_CHOP_SMALL_ATTACK" power_boundary_min="1" power_boundary_max="3" />
</CARD_V2>

Re: Renegade Doppelganger and Cryptoplasm.

PostPosted: 17 Oct 2012, 18:24
by alexandreonly
My Shapesharer is working fine, i used it as a base for the other 2 cards:

Code: Select all
<?xml version='1.0'?>
<CARD_V2>
  <FILENAME text="SHAPESHARER_140200" />
  <CARDNAME text="SHAPESHARER" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Shapesharer]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Shapesharer]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Shapesharer]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Shapesharer]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Shapesharer]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Shapesharer]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Shapesharer]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Shapesharer]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Shapesharer]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="140200" />
  <ARTID value="140200" />
  <ARTIST name="Alan Pollack" />
  <CASTING_COST cost="{1}{U}" />
  <FLAVOURTEXT>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[One good mimic deserves another.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[One good mimic deserves another.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[One good mimic deserves another.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[One good mimic deserves another.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[One good mimic deserves another.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[One good mimic deserves another.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[One good mimic deserves another.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[One good mimic deserves another.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[One good mimic deserves another.]]></LOCALISED_TEXT>
  </FLAVOURTEXT>
  <TYPE metaname="Creature" />
  <SUB_TYPE metaname="Shapeshifter" />
  <EXPANSION value="DPG" />
  <RARITY metaname="R" />
  <POWER value="1" />
  <TOUGHNESS value="1" />
  <STATIC_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Changeling]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Changelin]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Cambiaformas.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Wandelwicht]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Cangiante]]></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[Morfoloide]]></LOCALISED_TEXT>
    <CONTINUOUS_ACTION layer="6">
    local characteristics = Object():GetCurrentCharacteristics()
    characteristics:Characteristic_Set( CHARACTERISTIC_CHANGELING, 1 )
    </CONTINUOUS_ACTION>
  </STATIC_ABILITY>
  <ACTIVATED_ABILITY filter_zone="ZONE_IN_PLAY">
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{2}{U}: Target Shapeshifter becomes a copy of target creature until your next turn.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[{2}{U}: Target Shapeshifter becomes a copy of target creature until your next turn.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[{2}{U}: Target Shapeshifter becomes a copy of target creature until your next turn.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[{2}{U}: Target Shapeshifter becomes a copy of target creature until your next turn.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[{2}{U}: Target Shapeshifter becomes a copy of target creature until your next turn.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[{2}{U}: Target Shapeshifter becomes a copy of target creature until your next turn.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[{2}{U}: Target Shapeshifter becomes a copy of target creature until your next turn.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[{2}{U}: Target Shapeshifter becomes a copy of target creature until your next turn.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[{2}{U}: Target Shapeshifter becomes a copy of target creature until your next turn.]]></LOCALISED_TEXT>
  <COST type="Mana" cost="{2}{U}" />
    <TARGET_DEFINITION id="0">
    local filter = Object():GetFilter()
    filter:Clear()
    filter:AddSubType( CREATURE_TYPE_SHAPESHIFTER )
    filter:SetZone( ZONE_IN_PLAY )
    filter:SetHint( HINT_ALLIED_ONLY, EffectController() )
    </TARGET_DEFINITION>
    <TARGET_DEFINITION id="1">
    local filter = Object():GetFilter()
    filter:Clear()
    filter:AddCardType( CARD_TYPE_CREATURE )
    filter:SetZone( ZONE_IN_PLAY )
    filter:SetHint( HINT_ENEMY, EffectController() )
    local target_one = EffectDC():Get_Targets(0):Get_CardPtr(0)
    if target_one ~= nil then
       filter:SetCardInstance( target_one )
       filter:AddExtra( FILTER_EXTRA_FLIP_CARD_INSTANCE )
    end
    </TARGET_DEFINITION>
    <TARGET_DETERMINATION>
    if (AtLeastOneTargetFromDefinition(0) ~= 0) then
       
       local filter = Object():GetFilter()
       filter:Clear()
       filter:AddCardType( CARD_TYPE_CREATURE )
       filter:SetZone( ZONE_IN_PLAY )
       
       if (filter:CountStopAt(2) == 2) then
          return 1
       end
       
    end
    return 0
    </TARGET_DETERMINATION>
    <PLAY_TIME_ACTION target_choosing="1">
    EffectController():ChooseTarget( 0, "CARD_QUERY_CHOOSE_A_SHAPESHIFTER   ", EffectDC():Make_Targets(0) )
    </PLAY_TIME_ACTION>
    <PLAY_TIME_ACTION target_choosing="1">
    EffectController():ChooseTarget( 1, "CARD_QUERY_CHOOSE_ANOTHER_CREATURE", EffectDC():Make_Targets(1) )
    </PLAY_TIME_ACTION>
   <RESOLUTION_TIME_ACTION>
   local target_creaturea = EffectDC():Get_Targets(0):Get_CardPtr(0)
    local target_creature = EffectDC():Get_Targets(1):Get_CardPtr(0)
    if ( target_creature ~= nil ) then   
       target_creature:StoreCopiableValues(EffectDC():Make_Chest(1))
      target_creaturea:UseCopiableValues(EffectDC():Get_Chest(1))
      EffectDC():Protect_CardPtr( COMPARTMENT_ID_EFFECT_SOURCE )
   end
   </RESOLUTION_TIME_ACTION>
    <CONTINUOUS_ACTION layer="1">
   local target_creaturea = EffectDC():Get_Targets(0):Get_CardPtr(0)
    if target_creaturea ~= nil and EffectDC():Get_Chest(1) ~= nil then
       EffectSource():UseCopiableValues(EffectDC():Get_Chest(1))
    end
    </CONTINUOUS_ACTION>
   <DURATION simple_duration="UntilEOT" />
  </ACTIVATED_ABILITY>
  <HELP title="MORE_INFO_BADGE_TITLE_35" body="MORE_INFO_BADGE_BODY_35" zone="ZONE_ANY" />
  <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>
But for some nasty reason i can't code Doppelganger and Cryptoplasm, and i need them to complete my Blue Allies Deck.

Re: Renegade Doppelganger and Cryptoplasm.

PostPosted: 18 Oct 2012, 08:17
by thefiremind
One thing I learned is that the line
Code: Select all
EffectDC():Protect_CardPtr( COMPARTMENT_ID_EFFECT_SOURCE )
must be removed when the card copies something while already in play. That's because you don't need to protect the pointer to EffectSource if the card doesn't make any zone change during the copy.

The problem you found with Renegade Doppelganger is the same that I had while trying to make transform cards in DotP2013 and I don't know why it happens.

About Cryptoplasm, in the PLAY_TIME_ACTION where you choose the card to copy, you are using the player variable but you didn't declare it inside that block.

Re: Renegade Doppelganger and Cryptoplasm.

PostPosted: 18 Oct 2012, 15:22
by alexandreonly
thefiremind wrote:One thing I learned is that the line
Code: Select all
EffectDC():Protect_CardPtr( COMPARTMENT_ID_EFFECT_SOURCE )
must be removed when the card copies something while already in play. That's because you don't need to protect the pointer to EffectSource if the card doesn't make any zone change during the copy.

The problem you found with Renegade Doppelganger is the same that I had while trying to make transform cards in DotP2013 and I don't know why it happens.

About Cryptoplasm, in the PLAY_TIME_ACTION where you choose the card to copy, you are using the player variable but you didn't declare it inside that block.
Cryptoplasm almost fixed. Now the only problem is that he stay as a copy even if he is returned to my hand.

Re: Renegade Doppelganger and Cryptoplasm.

PostPosted: 18 Oct 2012, 16:48
by thefiremind
alexandreonly wrote:Cryptoplasm almost fixed. Now the only problem is that he stay as a copy even if he is returned to my hand.
That's because you have to remove the protection of EffectSource as I wrote in the previous post.

Re: Renegade Doppelganger and Cryptoplasm.

PostPosted: 18 Oct 2012, 17:36
by BlindWillow
My only guess on Renegade Doppelganger is that, when you UseCopiableValues(), everything from the original ability is lost, and that includes the <DURATION> tag. I don't know if switching to a delayed trigger would help (probably just bring up a whole different set of problems). Might be worth a try, though.

Re: Renegade Doppelganger and Cryptoplasm.

PostPosted: 19 Oct 2012, 06:25
by BlindWillow
Well, this seems to work:
Code: Select all
  <TRIGGERED_ABILITY filter_zone="ZONE_IN_PLAY">
    <TRIGGER value="ZONECHANGE_END" to_zone="ZONE_IN_PLAY">
    return (TriggerObject() ~= Object() and TriggerObject():GetCardType():Test( CARD_TYPE_CREATURE ) ~= 0)
    </TRIGGER>
    <RESOLUTION_TIME_ACTION>
    EffectController():BeginNewMultipleChoice()   
    EffectController():AddMultipleChoiceAnswer( "CARD_QUERY_OPTION_YES" )   
    EffectController():AddMultipleChoiceAnswer( "CARD_QUERY_OPTION_NO" )   
    EffectController():AskMultipleChoiceQuestion( "CARD_QUERY_COPY")
    </RESOLUTION_TIME_ACTION>
    <RESOLUTION_TIME_ACTION>
    local decision = Object():GetMultipleChoiceResult()
    if decision == 0 then
   local delayDC = EffectDC():Make_Chest(100)
   delayDC:Set_CardPtr(0, Object())
   MTG():CreateDelayedTrigger(1, delayDC)
   TriggerObject():StoreCopiableValues(EffectDC():Make_Chest(1))
   EffectSource():UseCopiableValues(EffectDC():Get_Chest(1))
    end
    </RESOLUTION_TIME_ACTION>
    <CONTINUOUS_ACTION layer="1">
    if EffectSource() ~= nil and EffectDC():Get_Chest(1) ~= nil then
       EffectSource():UseCopiableValues(EffectDC():Get_Chest(1))
    end
    </CONTINUOUS_ACTION>
    <DURATION simple_duration="UntilEOT" />
  </TRIGGERED_ABILITY>
  <TRIGGERED_ABILITY forced_skip="1" resource_id="1">
    <CLEANUP fire_once="1" />
    <TRIGGER value="BEGINNING_OF_STEP">
    return MTG():GetStep() == STEP_CLEANUP
    </TRIGGER>
    <RESOLUTION_TIME_ACTION>
    if EffectDC():Get_CardPtr(0) ~= nil then
   EffectDC():Get_CardPtr(0):StoreCopiableValues(EffectDC():Make_Chest(2))
   EffectSource():UseCopiableValues(EffectDC():Get_Chest(2))
    end
    </RESOLUTION_TIME_ACTION>
  </TRIGGERED_ABILITY>
Obviously there is something screwy going on with UseCopiableValues() where things don't revert like they should. I guess we just have to manually "reset" it.

Re: Renegade Doppelganger and Cryptoplasm.

PostPosted: 19 Oct 2012, 22:52
by BlindWillow
thefiremind wrote:The problem you found with Renegade Doppelganger is the same that I had while trying to make transform cards in DotP2013 and I don't know why it happens.
I tried adding the following to your ApplyTransformation() function:

local delayDC = EffectDC():Make_Chest(100)
delayDC:Set_CardPtr(0, Object())
MTG():CreateDelayedTrigger(99, delayDC)

And then adding the following delayed trigger on the (front face) card itself:

Code: Select all
  <TRIGGERED_ABILITY internal="1" resource_id="99">
    <CLEANUP fire_once="1" />
    <TRIGGER value="STATE_BASED_EFFECTS">
    return ( IsNotTransformed( Object() ) and TriggeredForMe() )
    </TRIGGER>
    <RESOLUTION_TIME_ACTION>
    if EffectDC():Get_CardPtr(0) ~= nil then
   EffectDC():Get_CardPtr(0):StoreCopiableValues(EffectDC():Make_Chest(99))
   EffectSource():UseCopiableValues(EffectDC():Get_Chest(99))
    end
    </RESOLUTION_TIME_ACTION>
  </TRIGGERED_ABILITY>
And it triggers multiple times appropriately. The delayed trigger will go off repeatedly (up to 50x, in my testing), but as long as it's internal, it doesn't seem to affect gameplay in any way, and no script errors.

(IsNotTransformed is just a minor addition based on your IsTransformed function.)

Re: Renegade Doppelganger and Cryptoplasm.

PostPosted: 30 May 2013, 10:03
by sumomole
When I make Renegade Doppelganger, I find here. DOTP2013 taught us so many things, the problem can't be resolved in last year seems so simple now, I hope DOTP2014 can bring more for us. :D