It is currently 01 Sep 2025, 03:05
   
Text Size

Attached Lands

Moderator: CCGHQ Admins

Attached Lands

Postby braquio » 01 Sep 2014, 19:32

Hi People!
Im observed that enchanted lands or lands with a card exiled on it, like hideaways ones, are always choosen last by the IA to pay mana.
Has anyone seen this?

May be is possible to make a token or set up an attached flag or something to use it in non basic lands, to prevent the engine use that cards for mana (until there is no more to choose of course).

This could be very useful in a lot of lands with non mana activated abilities, like Karakas, Oran-Rief, Volrath Stronghold, etc..
And the best thing is that you can keep the MANA ABILITY, so the IA could use that lands to get mana if there is no more lands or to use its abilities if there are other lands to use mana.

At the moment a player can use these lands perfectly with Manual Mana functions or with other methods but the IA... no.
If you use Manual Mana functions, normally IA dont use that lands to get mana, and if you don't, IA dont use it too much that abilities, cause are always choosen first to play anything.

I did some test with differents invisible tokens, but im having next problems:
1) AURA TOKEN
When the token has Aura subtype you have to choose a target when come into play, no matter if there is no target definition or whatever in the token, engine forces you to choose a target.
Tryed too, giving Aura subtype after the token comes into play, but then you cant use Attach function.
2) EQUIPMENT TOKEN
Seems that Attach function dont works with no creatures objects.
3) ANY TOKEN
You cant use Attach or NailOnto functions after the token comes into play.
And as you cant have a token in other different zone than Battlefield, you can't use these functions from exile, hand or wherever, and you can't use PutOntoBattlefieldAttachedTo.

So now, i dont see any solution, but could be great if works.
____________________________________________________________________________________________________________________________
Braquio Dotp2014 DLC
Alternative Sealed Campaigns for DotP 2014
User avatar
braquio
 
Posts: 143
Joined: 16 Feb 2014, 19:21
Has thanked: 15 times
Been thanked: 9 times

Re: Attached Lands

Postby RiiakShiNal » 01 Sep 2014, 22:24

Another thing you don't seem to be considering is if you give a token a type then it can be counted by spells/abilities that look for that type and can cause other interaction problems. So this is probably not a good solution to anything.
RiiakShiNal
Programmer
 
Posts: 2188
Joined: 16 May 2011, 21:37
Has thanked: 75 times
Been thanked: 497 times

Re: Attached Lands

Postby braquio » 01 Sep 2014, 23:56

RiiakShiNal wrote:Another thing you don't seem to be considering is if you give a token a type then it can be counted by spells/abilities that look for that type and can cause other interaction problems. So this is probably not a good solution to anything.
My first idea is that the token dont have any type, only the aura subtype.
And there are only a few cards that can interact with colorless aura cards with indestructible and shroud, on battlefield.

Looking in gatherer i only see these ones:
| Open


Note that i want to put that token on play not to cast it, so dont interact with cards like Kor Spiritdancer.

In the case of equipment i think dont interact with anything
____________________________________________________________________________________________________________________________
Braquio Dotp2014 DLC
Alternative Sealed Campaigns for DotP 2014
User avatar
braquio
 
Posts: 143
Joined: 16 Feb 2014, 19:21
Has thanked: 15 times
Been thanked: 9 times

Re: Attached Lands

Postby braquio » 02 Sep 2014, 00:14

If someone wants to take a look
here is my very far from work aproximation:
ORANRIEF THE VASTWOOD that put a token | Open
Code: Select all
<?xml version='1.0'?>
<CARD_V2 ExportVersion="1">
  <FILENAME text="EL_ORANRIEF_THE_VASTWOOD_668190417" />
  <CARDNAME text="ORANRIEF_THE_VASTWOOD" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Oran-Rief, the Vastwood]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Oran-Rief, le Vastebois]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Oran-Rief, el Bosque Extenso]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Oran-Rief, das Riesenholz]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Oran-Rief, il Boscovasto]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[巨森、オラン=リーフ]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Oran-Rief, the Vastwood]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Оран-Риф, Широколесье]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Oran-Rief, a Matavasta]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="668190417" />
  <ARTID value="666190417" />
  <ARTIST name="Mike Bierek" />
  <CASTING_COST cost="" />
  <TYPE metaname="Land" />
  <EXPANSION value="DPI" />
  <RARITY metaname="R" />
  <TRIGGERED_ABILITY replacement_effect="1" active_zone="ZONE_TRANSITION">
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Oran-Rief, the Vastwood enters the battlefield tapped.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Oran-Rief, le Vastebois arrive sur le champ de bataille engagé.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Oran-Rief, el Bosque Extenso, entra al campo de batalla girado.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Oran-Rief, das Riesenholz, kommt getappt ins Spiel.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Oran-Rief, il Boscovasto entra nel campo di battaglia TAPpato.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[巨森、オラン=リーフはタップ状態で戦場に出る。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Oran-Rief, the Vastwood enters the battlefield tapped.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Оран-Риф, Широколесье выходит на поле битвы повернутым.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Oran-Rief, a Matavasta, entra no campo de batalha virado.]]></LOCALISED_TEXT>
    <TRIGGER value="ZONECHANGE_TRANSITION" simple_qualifier="self" to_zone="ZONE_BATTLEFIELD" from_zone="ZONE_ANY" pre_trigger="1" />
    <RESOLUTION_TIME_ACTION>
    if TriggerObject() ~= nil then
       TriggerObject():Tap()
    end
    </RESOLUTION_TIME_ACTION>
  </TRIGGERED_ABILITY>

  <MANA_ABILITY>
      <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{T}: Add {G} to your mana pool.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[{T} : Ajoutez {G} à votre réserve.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[{T}: Agrega {G} a tu reserva de maná.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[{T}: Erhöhe deinen Manavorrat um {G}.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[{T}: Aggiungi {G} alla tua riserva di mana.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[{T}:あなたのマナ・プールに{G}を加える。]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[{T}: {G}를 당신의 마나풀에 담는다.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[{T}: добавьте {G} в ваше хранилище маны.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[{T}: Adicione {G} à sua reserva de mana.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[{T}:加{G}到你的法术力池中。]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[{T}:加{G}到你的魔法力池中。]]></LOCALISED_TEXT>
      <PRODUCES amount="{G}" />
     </MANA_ABILITY>

  <ACTIVATED_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{T}: Put a +1/+1 counter on each green creature that entered the battlefield this turn.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[{T} : Mettez un marqueur +1/+1 sur chaque créature verte qui est arrivée sur le champ de bataille ce tour-ci.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[{T}: Pon un contador +1/+1 sobre cada criatura verde que entró al campo de batalla este turno.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[{T}: Lege auf jede grüne Kreatur, die in diesem Zug ins Spiel kam, eine +1/+1-Marke.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[{T}: Metti un segnalino +1/+1 su ogni creatura verde che è entrata nel campo di battaglia in questo turno.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[{T}:このターンに戦場に出た緑の各クリーチャーの上に、それぞれ+1/+1カウンターを1個置く。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[{T}: Put a +1/+1 counter on each green creature that entered the battlefield this turn.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[{T}: положите один жетон +1/+1 на каждое зеленое существо, вышедшее на поле битвы в этом ходу.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[{T}: Coloque um marcador +1/+1 em cada criatura verde que entrou no campo de batalha neste turno.]]></LOCALISED_TEXT>
    <COST type="TapSelf" />
    <FILTER filter_id="0">
    local filter = ClearFilter()
    filter:SetZone( ZONE_BATTLEFIELD )
    filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
    filter:Add( FE_COLOUR, OP_IS, COLOUR_GREEN )
    filter:Add( FE_LUA_CONDITION, 1, EffectController(), EffectDC() )
    </FILTER>
    <FILTER_CONDITION id="1">
    local creature = FilteredCard()
    local interrogation = MTG():ClearInterrogationQuery()
    if creature ~= nil then
       interrogation: SetObject(creature)
       interrogation:SetFromZone( ZONE_ANYWHERE )
       interrogation:SetToZone( ZONE_BATTLEFIELD )
       if interrogation:Test( INTERROGATE_CARDS_MOVED_ZONE, INTERROGATE_THIS_TURN ) then
          return true
       else
          return false
       end
    else
       return false
    end
    </FILTER_CONDITION>
    <RESOLUTION_TIME_ACTION filter_id="0">
    if FilteredCard() ~= nil then
       FilteredCard():AddCounters( MTG():PlusOnePlusOneCounters(), 1)
    end
    </RESOLUTION_TIME_ACTION>
    <AI_AVAILABILITY window_step="main_1" window_turn="my_turn" type="window" />
    <AI_AVAILABILITY window_step="declare_blockers" type="window" />
    <AI_AVAILABILITY window_step="main_2" window_turn="my_turn" type="window" />
    <AI_AVAILABILITY type="in_response" response_source="1" response_target="1" />
    <AI_AVAILABILITY type="in_response" response_source="1" />
    <AI_AVAILABILITY type="in_response" response_target="1" />
  </ACTIVATED_ABILITY>


  <TRIGGERED_ABILITY replacement_effect="1">
    <TRIGGER value="ZONECHANGE_END" simple_qualifier="self" to_zone="ZONE_BATTLEFIELD"/>
    <RESOLUTION_TIME_ACTION>
   if TriggerObject() ~= nil then
      MTG():PutTokensOntoBattlefield("_TOKEN_ENCHANT_LAND_666000000", 1, EffectController())
   end
    </RESOLUTION_TIME_ACTION>
  </TRIGGERED_ABILITY>

  <TOKEN_REGISTRATION reservation="1" type="_TOKEN_ENCHANT_LAND_666000000" />
</CARD_V2>
Aura Token that only attach | Open
Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
  <FILENAME text="_TOKEN_ENCHANT_LAND_666000000" />
  <CARDNAME text="_TOKEN_ENCHANT_LAND" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Enchant Land]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Enchant Land]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Enchant Land]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Enchant Land]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Enchant Land]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Enchant Land]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Enchant Land]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Enchant Land]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Enchant Land]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="666000000" />
  <ARTID value="0" />
  <ARTIST name="Nobody" />
  <CASTING_COST cost="" />
  <TYPE metaname="" />
  <SUB_TYPE metaname="Aura" />
  <EXPANSION value="DPI" />
  <RARITY metaname="T" />

  <!-- Invisible token protection -->
  <STATIC_ABILITY>
    <CONTINUOUS_ACTION layer="8">
    if EffectSource() ~= nil then
       local characteristics = EffectSource():GetCurrentCharacteristics()
       characteristics:Bool_Set(CHARACTERISTIC_SHROUD, 1)
       characteristics:Bool_Set(CHARACTERISTIC_INDESTRUCTIBLE, 1)
       characteristics:AI_SetWorthless()
    end
    </CONTINUOUS_ACTION>
    <CONTINUOUS_ACTION layer="8">
    if EffectSource() ~= nil then
       local filter = ClearFilter()
       filter:Add(FE_CMC, OP_GREATER_THAN_OR_EQUAL_TO, 0)
       EffectSource():Protection()
    end
    </CONTINUOUS_ACTION>
  </STATIC_ABILITY>
 
  <AI_BASE_SCORE score="-5000" zone="ZONE_BATTLEFIELD" />
</CARD_V2>
With this when the land come into play put an invisible token, engine forces you to select a target, and if you select the land, you could see that the land always are choosen the last to pay mana.
____________________________________________________________________________________________________________________________
Braquio Dotp2014 DLC
Alternative Sealed Campaigns for DotP 2014
User avatar
braquio
 
Posts: 143
Joined: 16 Feb 2014, 19:21
Has thanked: 15 times
Been thanked: 9 times

Re: Attached Lands

Postby braquio » 03 Sep 2014, 20:10

I have made some progress.

EL_ORANRIEF_THE_VASTWOOD | Open
Code: Select all
<?xml version='1.0'?>
<CARD_V2 ExportVersion="1">
  <FILENAME text="EL_ORANRIEF_THE_VASTWOOD_668190417" />
  <CARDNAME text="ORANRIEF_THE_VASTWOOD" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Oran-Rief, the Vastwood]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Oran-Rief, le Vastebois]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Oran-Rief, el Bosque Extenso]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Oran-Rief, das Riesenholz]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Oran-Rief, il Boscovasto]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[巨森、オラン=リーフ]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Oran-Rief, the Vastwood]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Оран-Риф, Широколесье]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Oran-Rief, a Matavasta]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="668190417" />
  <ARTID value="666190417" />
  <ARTIST name="Mike Bierek" />
  <CASTING_COST cost="" />
  <TYPE metaname="Land" />
  <EXPANSION value="DPI" />
  <RARITY metaname="R" />
  <TRIGGERED_ABILITY replacement_effect="1" active_zone="ZONE_TRANSITION">
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Oran-Rief, the Vastwood enters the battlefield tapped.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Oran-Rief, le Vastebois arrive sur le champ de bataille engagé.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Oran-Rief, el Bosque Extenso, entra al campo de batalla girado.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Oran-Rief, das Riesenholz, kommt getappt ins Spiel.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Oran-Rief, il Boscovasto entra nel campo di battaglia TAPpato.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[巨森、オラン=リーフはタップ状態で戦場に出る。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Oran-Rief, the Vastwood enters the battlefield tapped.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Оран-Риф, Широколесье выходит на поле битвы повернутым.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Oran-Rief, a Matavasta, entra no campo de batalha virado.]]></LOCALISED_TEXT>
    <TRIGGER value="ZONECHANGE_TRANSITION" simple_qualifier="self" to_zone="ZONE_BATTLEFIELD" from_zone="ZONE_ANY" pre_trigger="1" />
    <RESOLUTION_TIME_ACTION>
    if TriggerObject() ~= nil then
       TriggerObject():Tap()
    end
    </RESOLUTION_TIME_ACTION>
  </TRIGGERED_ABILITY>

  <MANA_ABILITY>
      <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{T}: Add {G} to your mana pool.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[{T} : Ajoutez {G} à votre réserve.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[{T}: Agrega {G} a tu reserva de maná.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[{T}: Erhöhe deinen Manavorrat um {G}.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[{T}: Aggiungi {G} alla tua riserva di mana.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[{T}:あなたのマナ・プールに{G}を加える。]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[{T}: {G}를 당신의 마나풀에 담는다.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[{T}: добавьте {G} в ваше хранилище маны.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[{T}: Adicione {G} à sua reserva de mana.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[{T}:加{G}到你的法术力池中。]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[{T}:加{G}到你的魔法力池中。]]></LOCALISED_TEXT>
      <PRODUCES amount="{G}" />
     </MANA_ABILITY>

  <ACTIVATED_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{T}: Put a +1/+1 counter on each green creature that entered the battlefield this turn.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[{T} : Mettez un marqueur +1/+1 sur chaque créature verte qui est arrivée sur le champ de bataille ce tour-ci.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[{T}: Pon un contador +1/+1 sobre cada criatura verde que entró al campo de batalla este turno.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[{T}: Lege auf jede grüne Kreatur, die in diesem Zug ins Spiel kam, eine +1/+1-Marke.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[{T}: Metti un segnalino +1/+1 su ogni creatura verde che è entrata nel campo di battaglia in questo turno.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[{T}:このターンに戦場に出た緑の各クリーチャーの上に、それぞれ+1/+1カウンターを1個置く。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[{T}: Put a +1/+1 counter on each green creature that entered the battlefield this turn.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[{T}: положите один жетон +1/+1 на каждое зеленое существо, вышедшее на поле битвы в этом ходу.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[{T}: Coloque um marcador +1/+1 em cada criatura verde que entrou no campo de batalha neste turno.]]></LOCALISED_TEXT>
    <COST type="TapSelf" />
    <FILTER filter_id="0">
    local filter = ClearFilter()
    filter:SetZone( ZONE_BATTLEFIELD )
    filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
    filter:Add( FE_COLOUR, OP_IS, COLOUR_GREEN )
    filter:Add( FE_LUA_CONDITION, 1, EffectController(), EffectDC() )
    </FILTER>
    <FILTER_CONDITION id="1">
    local creature = FilteredCard()
    local interrogation = MTG():ClearInterrogationQuery()
    if creature ~= nil then
       interrogation: SetObject(creature)
       interrogation:SetFromZone( ZONE_ANYWHERE )
       interrogation:SetToZone( ZONE_BATTLEFIELD )
       if interrogation:Test( INTERROGATE_CARDS_MOVED_ZONE, INTERROGATE_THIS_TURN ) then
          return true
       else
          return false
       end
    else
       return false
    end
    </FILTER_CONDITION>
    <RESOLUTION_TIME_ACTION filter_id="0">
    if FilteredCard() ~= nil then
       FilteredCard():AddCounters( MTG():PlusOnePlusOneCounters(), 1)
    end
    </RESOLUTION_TIME_ACTION>
    <AI_AVAILABILITY window_step="main_1" window_turn="my_turn" type="window" />
    <AI_AVAILABILITY window_step="declare_blockers" type="window" />
    <AI_AVAILABILITY window_step="main_2" window_turn="my_turn" type="window" />
    <AI_AVAILABILITY type="in_response" response_source="1" response_target="1" />
    <AI_AVAILABILITY type="in_response" response_source="1" />
    <AI_AVAILABILITY type="in_response" response_target="1" />
  </ACTIVATED_ABILITY>


  <TRIGGERED_ABILITY replacement_effect="1">
    <TRIGGER value="ZONECHANGE_END" simple_qualifier="self" to_zone="ZONE_BATTLEFIELD"/>
    <RESOLUTION_TIME_ACTION>
   local delayDC = EffectController():PlayerDataChest():Make_Chest(789)
   delayDC:Set_CardPtr(0,EffectSource())
   delayDC:Protect_CardPtr(0)
   MTG():CreateDelayedTrigger(3,delayDC)
    </RESOLUTION_TIME_ACTION>

  </TRIGGERED_ABILITY>

  <TRIGGERED_ABILITY replacement_effect="1" resource_id="3">
    <TRIGGER value="STATE_BASED_EFFECTS" >
   return EffectDC():Get_CardPtr(0):GetCardName() == "ORANRIEF_THE_VASTWOOD"
    </TRIGGER>
    <CLEANUP fire_once="1" />
    <RESOLUTION_TIME_ACTION>
   MTG():PutTokensOntoBattlefield("_TOKEN_ENCHANT_LAND_666000000", 1, EffectController())
    </RESOLUTION_TIME_ACTION>
  </TRIGGERED_ABILITY>

  <TOKEN_REGISTRATION reservation="1" type="_TOKEN_ENCHANT_LAND_666000000" />
</CARD_V2>
TOKEN_ENCHANT_LAND | Open
Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
  <FILENAME text="_TOKEN_ENCHANT_LAND_666000000" />
  <CARDNAME text="_TOKEN_ENCHANT_LAND" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Enchant Land]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Enchant Land]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Enchant Land]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Enchant Land]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Enchant Land]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Enchant Land]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Enchant Land]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Enchant Land]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Enchant Land]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="666000000" />
  <ARTID value="0" />
  <ARTIST name="Nobody" />
  <CASTING_COST cost="" />
  <TYPE metaname="Enchantment" />
  <SUB_TYPE metaname="Equipment" />
  <EXPANSION value="DPI" />
  <RARITY metaname="T" />

  <TRIGGERED_ABILITY replacement_effect="1">
    <TRIGGER value="ZONECHANGE_END" simple_qualifier="self" to_zone="ZONE_BATTLEFIELD"/>
   <RESOLUTION_TIME_ACTION>
   local chest = EffectController():PlayerDataChest():Get_Chest(789)
   if chest ~= nil then
      local land = chest:Get_CardPtr(0)
      if land ~= nil then
         local characteristics = land:GetCurrentCharacteristics()
         local card_type = characteristics:CardType_GetWritable()
         characteristics:Power_Set( 0 )
             characteristics:Toughness_Set( 10 )
         card_type:Add( CARD_TYPE_CREATURE )
      end   
   end
   </RESOLUTION_TIME_ACTION>
   <RESOLUTION_TIME_ACTION>
   local chest = EffectController():PlayerDataChest():Get_Chest(789)
   if chest ~= nil then
      local token = EffectSource()
      local land = chest:Get_CardPtr(0)
      if land ~= nil and token ~= nil then
         token:Attach( land )
      end
   end
   </RESOLUTION_TIME_ACTION>
   <CONTINUOUS_ACTION layer="4">
      local token = EffectSource()
      if token ~= nil then
         local characteristics = token:GetCurrentCharacteristics()
         local sub_type = characteristics:SubType_GetWritable()
         sub_type:Add( ENCHANTMENT_TYPE_AURA )
         sub_type:ClearAllOfType( CARD_TYPE_ARTIFACT )
      end
   </CONTINUOUS_ACTION>
   <RESOLUTION_TIME_ACTION>
      EffectController():PlayerDataChest():Get_Chest(789):Clear()
   </RESOLUTION_TIME_ACTION>
   <DURATION>
        return EffectSource() == nil
   </DURATION>
  </TRIGGERED_ABILITY>

  <!-- Invisible token protection -->
  <STATIC_ABILITY>
    <CONTINUOUS_ACTION layer="8">
    if EffectSource() ~= nil then
       local characteristics = EffectSource():GetCurrentCharacteristics()
       characteristics:Bool_Set(CHARACTERISTIC_SHROUD, 1)
       characteristics:Bool_Set(CHARACTERISTIC_INDESTRUCTIBLE, 1)
       characteristics:AI_SetWorthless()
    end
    </CONTINUOUS_ACTION>
    <CONTINUOUS_ACTION layer="8">
    if EffectSource() ~= nil then
       local filter = ClearFilter()
       filter:Add(FE_CMC, OP_GREATER_THAN_OR_EQUAL_TO, 0)
       EffectSource():Protection()
    end
    </CONTINUOUS_ACTION>
  </STATIC_ABILITY>
 
  <AI_BASE_SCORE score="-5000" zone="ZONE_BATTLEFIELD" />
</CARD_V2>
I manage to attach the token when the land comes into play and keep in time converting in aura with these steps:
1) The token comes into play like an equipment
2) convert the land in a creature
3) attach the token
4) remove equipment subtype and add aura subtype (to keep attached when land ceases to be a creature)

But now i have these problems:
- When land come into play, go to creatures zone cause is momentarily a creature, and get summoning sickness, until i do anything, play another card or pass the step. Then its ok.
I supose this issue could be fixed easily.

The big problems is this:
- I need the enchantment type in the token, cause the aura subtype dont works with no enchantments permanents (if it isnt an enchantment the token is unattached when i remove equipment subtype)
So now i have more interactions cards, and the token cant be invisible. :(
____________________________________________________________________________________________________________________________
Braquio Dotp2014 DLC
Alternative Sealed Campaigns for DotP 2014
User avatar
braquio
 
Posts: 143
Joined: 16 Feb 2014, 19:21
Has thanked: 15 times
Been thanked: 9 times


Return to Programming Talk

Who is online

Users browsing this forum: No registered users and 4 guests

Main Menu

User Menu

Our Partners


Who is online

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

Login Form