Board index
Programs with AI or Rules Enforcement
Magic: The Gathering - Duels of the Planeswalkers
Programming Talk



Delve mechanics
Moderator: CCGHQ Admins
10 posts
• Page 1 of 1
Delve mechanics
by NeoAnderson » 24 Sep 2014, 15:52
Initially i thought that Delve could create some problems because of the mana cost retrieve, working with Xander9009 we have resolved this issue, but after this i have encountered many other issues because of Delve definition
The official rules for delve are as follows:
I want to focus on 2 points :
1. Previously, delve reduced the cost to cast a spell. Under the current rules, you exile cards from your graveyard at the same time you pay the spell’s cost. Exiling a card this way is simply another way to pay that cost.
This means i cannot use decrease cost function but to be rules compliant we have to create mana for the spell.
2. Because delve isn’t an alternative cost, it can be used in conjunction with alternative costs
This means that should be usable also with Flashback and other similar alternative costs!
I have made an approximation based on the card : Dig Through Time
REVISION : I changed the code of the card due of some problems handling Mana tokens generated from different zones, so to avoid any issues i decided to override the rule 1 above, we will use Delve as cost reduction, this solution will have less impact on the game.
TO USE DELVE :
ACTIVATE THE ABILITY ON THE CARD
SELECT THE CARDS YOU WANT TO EXILE FROM GRAVEYARD
THEN CAST THE SPELL (Obviously you need to have the available mana to do it)
The attached WAD contains Dig Through Time (card + xml + HQtdx) + TokenManager for abilities check + some needed functions for mana cost changing.
Special thanks to Xander9009 for his precious collaboration to develop mana cost functions and ability managers.

IMPORTANT!! TO USE THIS VERSION YOU NEED :
Riiak ManualMana Functions
Riiak ObjectDC Functions
Riiak Characteristics Functions
The official rules for delve are as follows:
- 702.65. Delve | Open
- 702.65a Delve is a static ability that functions while the spell with delve is on the stack. “Delve” means “For each generic mana in this spell’s total cost, you may exile a card from your graveyard rather than pay that mana.” The delve ability isn’t an additional or alternative cost and applies only after the total cost of the spell with delve is determined.
702.65b Multiple instances of delve on the same spell are redundant.
* The rules for delve have changed slightly since it was last in an expansion. Previously, delve reduced the cost to cast a spell. Under the current rules, you exile cards from your graveyard at the same time you pay the spell’s cost. Exiling a card this way is simply another way to pay that cost.
* Delve doesn’t change a spell’s mana cost or converted mana cost. For example, Dead Drop’s converted mana cost is 10 even if you exiled three cards to cast it.
* You can’t exile cards to pay for the colored mana requirements of a spell with delve.
* You can’t exile more cards than the generic mana requirement of a spell with delve. For example, you can’t exile more than nine cards from your graveyard to cast Dead Drop.
* Because delve isn’t an alternative cost, it can be used in conjunction with alternative costs.
I want to focus on 2 points :
1. Previously, delve reduced the cost to cast a spell. Under the current rules, you exile cards from your graveyard at the same time you pay the spell’s cost. Exiling a card this way is simply another way to pay that cost.
This means i cannot use decrease cost function but to be rules compliant we have to create mana for the spell.
2. Because delve isn’t an alternative cost, it can be used in conjunction with alternative costs
This means that should be usable also with Flashback and other similar alternative costs!
I have made an approximation based on the card : Dig Through Time
REVISION : I changed the code of the card due of some problems handling Mana tokens generated from different zones, so to avoid any issues i decided to override the rule 1 above, we will use Delve as cost reduction, this solution will have less impact on the game.
TO USE DELVE :
ACTIVATE THE ABILITY ON THE CARD
SELECT THE CARDS YOU WANT TO EXILE FROM GRAVEYARD
THEN CAST THE SPELL (Obviously you need to have the available mana to do it)
The attached WAD contains Dig Through Time (card + xml + HQtdx) + TokenManager for abilities check + some needed functions for mana cost changing.
Special thanks to Xander9009 for his precious collaboration to develop mana cost functions and ability managers.


IMPORTANT!! TO USE THIS VERSION YOU NEED :
Riiak ManualMana Functions
Riiak ObjectDC Functions
Riiak Characteristics Functions
- Attachments
-
DATA_DLC_592_NEO_DELVE_PACK.rar
- DELVE PACK NEO VER 2.0 COST REDUCTION
- (131.03 KiB) Downloaded 363 times
Last edited by NeoAnderson on 29 Sep 2014, 21:19, edited 2 times in total.
- NeoAnderson
- Posts: 914
- Joined: 10 Sep 2013, 07:49
- Has thanked: 18 times
- Been thanked: 139 times
Re: Delve mechanics
by Tejahn » 24 Sep 2014, 19:51
Thanks for the effort you and Xander9009 have put into developing this mechanic. I'm glad I was the catalyst to propmt it's development. As I said in the other post, I was just going to use my code 'as is' since it was achieving the desired effect. I'll be sure to build some decks and test out what the two of you have brewed. Thanks!
Re: Delve mechanics
by NeoAnderson » 24 Sep 2014, 20:50
I am glad you could find helpful this code, but it is still a test version, so probably something could be improved so need some tests..Tejahn wrote:Thanks for the effort you and Xander9009 have put into developing this mechanic. I'm glad I was the catalyst to propmt it's development. As I said in the other post, I was just going to use my code 'as is' since it was achieving the desired effect. I'll be sure to build some decks and test out what the two of you have brewed. Thanks!
About your code, simulate an effect can be ok, but you should try to follow as much as possible the rules, otherwise you could break some combination with other effects, obviously this is not always possible due of Dotp limitations, but we try to reach the maximum rules compliance.
- NeoAnderson
- Posts: 914
- Joined: 10 Sep 2013, 07:49
- Has thanked: 18 times
- Been thanked: 139 times
Re: Delve mechanics
by Xander9009 » 24 Sep 2014, 22:32
I haven't had a chance to test it yet (I got some... important news earlier that required my attention), but at a glance, the only I see that might need changed is that it misses Dream Chisel. It also misses a couple of other cards that could technically be done, but those can added as we go. I'm only mentioning Dream Chisel because it should theoretically be the same as any other but checking your morph characteristic.
I'll look into it further later. For now, I'm busying myself with getting the last of the tokens finished up before on to the next phase in my Community Wad project.
I'll look into it further later. For now, I'm busying myself with getting the last of the tokens finished up before on to the next phase in my Community Wad project.
_______________________________
Community Wad - Community Wad Website - How to Help and Report Bugs
Discord: discord.gg/4AXvHzW
Community Wad - Community Wad Website - How to Help and Report Bugs
Discord: discord.gg/4AXvHzW
-
Xander9009 - Programmer
- Posts: 2905
- Joined: 29 Jun 2013, 07:44
- Location: Indiana, United States
- Has thanked: 121 times
- Been thanked: 445 times
Re: Delve mechanics
by NeoAnderson » 25 Sep 2014, 13:47
REVISION : I changed the code of the card due of some problems handling Mana tokens generated from different zones, so to avoid any issues i decided to override the rule 1 above, we will use Delve as cost reduction, this solution will have less impact on the game.
- NeoAnderson
- Posts: 914
- Joined: 10 Sep 2013, 07:49
- Has thanked: 18 times
- Been thanked: 139 times
Re: Delve mechanics
by volrathxp » 29 Sep 2014, 01:05
I've been trying to adapt your Delve code for some of the other KTK cards, and running into some issues with getting:
"[lua] [string "DEAD_DROP_1000386512_TITLE (TRIGGER)~0x0000056c"]:3:
parameter mismatch or too few parameters"
And the like. Is the setup for this code as simple as copying the Delve code to another card to get it to work, or is there more to it?
"[lua] [string "DEAD_DROP_1000386512_TITLE (TRIGGER)~0x0000056c"]:3:
parameter mismatch or too few parameters"
And the like. Is the setup for this code as simple as copying the Delve code to another card to get it to work, or is there more to it?
volrathxp
Re: Delve mechanics
by NeoAnderson » 29 Sep 2014, 07:31
Theoretically you should just copy the Delve code before the spell effect, but without see your code i cannot tell you what's wrong. There are some Delve cards should need to be adapted not just copied.volrathxp wrote:I've been trying to adapt your Delve code for some of the other KTK cards, and running into some issues with getting:
"[lua] [string "DEAD_DROP_1000386512_TITLE (TRIGGER)~0x0000056c"]:3:
parameter mismatch or too few parameters"
And the like. Is the setup for this code as simple as copying the Delve code to another card to get it to work, or is there more to it?
My version of Dead Drop is full working, i am going to finish the whole Khans set and after testing i will post them. Right now i have coded from Card 000 to card 189, including Morph and delve cards. I have to finish the others, then i have make some basic tests because i haven't tested them, i also have to prepare the Morph text info file.

- NeoAnderson
- Posts: 914
- Joined: 10 Sep 2013, 07:49
- Has thanked: 18 times
- Been thanked: 139 times
Re: Delve mechanics
by volrathxp » 29 Sep 2014, 10:49
Here is the relevant code.
- Dead Drop | Open
- Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
<FILENAME text="DEAD_DROP_1000386512" />
<CARDNAME text="DEAD_DROP" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Dead Drop]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Chute fatale]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Caída mortal]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Sturz in den Tod]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Caduta Mortale]]></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[Queda Fatal]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="1000386512" />
<ARTID value="1000386512" />
<ARTIST name="Greg Staples" />
<CASTING_COST cost="{9}{B}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Got a diving lesson
—Sultai expression meaning
“was fed to the crocodiles”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Il a appris à nager
—Dicton sultaï signifiant
« il est allé nourrir les crocodiles »]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[“Tomó una clase de buceo”.
—Expresión sultai que significa
“se lo dimos de comer a los cocodrilos”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Erhielt Tauchunterricht
—Redensart der Sultai; steht für
„Wurde an die Krokodile verfüttert”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Ha preso lezioni di nuoto
—Espressione Sultai che significa
“è stato dato in pasto ai coccodrilli”]]></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[Aprendeu a mergulhar
— Expressão Sultai que significa
“foi jogado aos crocodilos”]]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="Sorcery" />
<EXPANSION value="KTK" />
<RARITY metaname="U" />
<STATIC_ABILITY active_zone="ZONE_ANY">
<CONTINUOUS_ACTION layer="6">
if Object() ~= nil then
local characteristics = Object():GetCurrentCharacteristics()
if Object():GetZone() == ZONE_HAND then
characteristics:GrantAbility(1)
elseif Object():GetZone() == ZONE_GRAVEYARD then
characteristics:GrantAbility(2)
end
end
</CONTINUOUS_ACTION>
</STATIC_ABILITY>
<STATIC_ABILITY active_zone="ZONE_EXILE">
<CONTINUOUS_ACTION layer="6">
if Object() ~= nil then
local characteristics = Object():GetCurrentCharacteristics()
characteristics:GrantAbility(3)
end
</CONTINUOUS_ACTION>
</STATIC_ABILITY>
<ACTIVATED_ABILITY forced_skip="1" active_zone="ZONE_LIBRARY">
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Delve |(Each card you exile from your graveyard while casting this spell pays for| {1} |.)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Fouille |(Chaque carte que vous exilez depuis votre cimetière en lançant ce sort paie| {1} |.)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Excavar |(Cada carta que exilies de tu cementerio al lanzar este hechizo cuenta como un pago de| {1} |.)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Wühlen |(Mit jeder Karte, die du aus deinem Friedhof ins Exil schickst, während du diesen Zauberspruch wirkst, bezahlst du| {1} |seiner Kosten.)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Esumare |(Ogni carta che esili dal tuo cimitero mentre lanci questa magia corrisponde al pagamento di| {1} |.)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[探査 (この呪文を唱える段階であなたがあなたの墓地から追放した各カードは、{1}を支払う。)]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[파헤치기 (이 주문을 발동하는 동안 당신이 당신의 무덤에서 추방하는 카드는 {1}을 지불한다.)]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Выкапывание |(Каждая карта, которую вы изгоняете из вашего кладбища при разыгрывании этого заклинания, считается оплатой| {1} |.)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Esquadrinhar |(Cada card que você exila de seu cemitério quando conjura esta mágica paga por| {1} |.)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[掘穴(你于施放此咒语时每从你坟墓场中放逐一张牌,就能为此咒语支付{1})。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[掘穴(你於施放此咒語時每從你墳墓場中放逐一張牌,就能為此咒語支付{1})。]]></LOCALISED_TEXT>
<COST mana_cost="{0}" type="Mana" />
<PLAY_TIME_ACTION>
RSN_MarkManaAbilityStart()
</PLAY_TIME_ACTION>
<TARGET tag="CARD_QUERY_CHOOSE_ANY_KIND_OF_CARD_TO_EXILE" definition="0" compartment="0" up_to="1">
local CostChange = UpdateColourlessCostValue(Object())
local ObZone = Object():GetZone()
local filter = ClearFilter()
filter:Add( FE_CARD_INSTANCE, OP_IS, Object() )
filter:SetZone(ObZone)
local ColourlessTotal = filter:ChromaCount( COLOUR_COLOURLESS )
local UpdateCost = ColourlessTotal + CostChange
EffectDC():Set_Int(101,UpdateCost)
MTG():SetTargetCount( EffectDC():Get_Int(101) )
</TARGET>
<TARGET_DEFINITION id="0">
local filter = ClearFilter()
filter:SetZone( ZONE_GRAVEYARD, EffectController() )
</TARGET_DEFINITION>
<RESOLUTION_TIME_ACTION>
local count = EffectDC():Get_Int(101)
local oDC = RSN_GetObjectDC( Object(), true )
oDC:Int_Set( 0, 0 )
for i = 0, count-1 do
local target_card = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(i)
if target_card ~= nil then
oDC:Int_Inc( 0 )
oDC:Set_CardPtr( i+1, target_card )
end
end
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
RSN_MarkManaAbilityEnd()
</RESOLUTION_TIME_ACTION>
</ACTIVATED_ABILITY>
<ACTIVATED_ABILITY resource_id="1" forced_skip="1" active_zone="ZONE_HAND">
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Select cards to delve]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Sélectionnez les cartes à fouiller]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Seleccionar tarjetas de excavar]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Wählen Sie Karten, um zu vertiefen]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Selezionare le carte da esumare]]></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[Escolha cartões de esquadrinhar]]></LOCALISED_TEXT>
<COST mana_cost="{0}" type="Mana" />
<PLAY_TIME_ACTION>
RSN_MarkManaAbilityStart()
</PLAY_TIME_ACTION>
<TARGET tag="CARD_QUERY_CHOOSE_ANY_KIND_OF_CARD_TO_EXILE" definition="0" compartment="0" up_to="1">
local CostChange = UpdateColourlessCostValue(Object())
local ObZone = Object():GetZone()
local filter = ClearFilter()
filter:Add( FE_CARD_INSTANCE, OP_IS, Object() )
filter:SetZone(ObZone)
local ColourlessTotal = filter:ChromaCount( COLOUR_COLOURLESS )
local UpdateCost = ColourlessTotal + CostChange
EffectDC():Set_Int(101,UpdateCost)
MTG():SetTargetCount( EffectDC():Get_Int(101) )
</TARGET>
<TARGET_DEFINITION id="0">
local filter = ClearFilter()
filter:SetZone( ZONE_GRAVEYARD, EffectController() )
</TARGET_DEFINITION>
<RESOLUTION_TIME_ACTION>
local count = EffectDC():Get_Int(101)
local oDC = RSN_GetObjectDC( Object(), true )
oDC:Int_Set( 0, 0 )
for i = 0, count-1 do
local target_card = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(i)
if target_card ~= nil then
oDC:Int_Inc( 0 )
oDC:Set_CardPtr( i+1, target_card )
end
end
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
RSN_MarkManaAbilityEnd()
</RESOLUTION_TIME_ACTION>
</ACTIVATED_ABILITY>
<ACTIVATED_ABILITY resource_id="2" forced_skip="1" active_zone="ZONE_GRAVEYARD">
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Select cards to delve]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Sélectionnez les cartes à fouiller]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Seleccionar tarjetas de excavar]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Wählen Sie Karten, um zu vertiefen]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Selezionare le carte da esumare]]></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[Escolha cartões de esquadrinhar]]></LOCALISED_TEXT>
<COST mana_cost="{0}" type="Mana" />
<PLAY_TIME_ACTION>
RSN_MarkManaAbilityStart()
</PLAY_TIME_ACTION>
<TARGET tag="CARD_QUERY_CHOOSE_ANY_KIND_OF_CARD_TO_EXILE" definition="0" compartment="0" up_to="1">
local CostChange = UpdateColourlessCostValue(Object())
local ObZone = Object():GetZone()
local filter = ClearFilter()
filter:Add( FE_CARD_INSTANCE, OP_IS, Object() )
filter:SetZone(ObZone)
local ColourlessTotal = filter:ChromaCount( COLOUR_COLOURLESS )
local UpdateCost = ColourlessTotal + CostChange
EffectDC():Set_Int(101,UpdateCost)
MTG():SetTargetCount( EffectDC():Get_Int(101) )
</TARGET>
<TARGET_DEFINITION id="0">
local filter = ClearFilter()
filter:Add( FE_CARD_INSTANCE, OP_NOT, Object() )
filter:SetZone( ZONE_GRAVEYARD, EffectController() )
</TARGET_DEFINITION>
<RESOLUTION_TIME_ACTION>
local count = EffectDC():Get_Int(101)
local oDC = RSN_GetObjectDC( Object(), true )
oDC:Int_Set( 0, 0 )
for i = 0, count-1 do
local target_card = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(i)
if target_card ~= nil then
oDC:Int_Inc( 0 )
oDC:Set_CardPtr( i+1, target_card )
end
end
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
RSN_MarkManaAbilityEnd()
</RESOLUTION_TIME_ACTION>
</ACTIVATED_ABILITY>
<ACTIVATED_ABILITY resource_id="3" forced_skip="1" active_zone="ZONE_EXILE">
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Select cards to delve]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Sélectionnez les cartes à fouiller]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Seleccionar tarjetas de excavar]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Wählen Sie Karten, um zu vertiefen]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Selezionare le carte da esumare]]></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[Escolha cartões de esquadrinhar]]></LOCALISED_TEXT>
<COST mana_cost="{0}" type="Mana" />
<PLAY_TIME_ACTION>
RSN_MarkManaAbilityStart()
</PLAY_TIME_ACTION>
<TARGET tag="CARD_QUERY_CHOOSE_ANY_KIND_OF_CARD_TO_EXILE" definition="0" compartment="0" up_to="1">
local CostChange = UpdateColourlessCostValue(Object())
local ObZone = Object():GetZone()
local filter = ClearFilter()
filter:Add( FE_CARD_INSTANCE, OP_IS, Object() )
filter:SetZone(ObZone)
local ColourlessTotal = filter:ChromaCount( COLOUR_COLOURLESS )
local UpdateCost = ColourlessTotal + CostChange
EffectDC():Set_Int(101,UpdateCost)
MTG():SetTargetCount( EffectDC():Get_Int(101) )
</TARGET>
<TARGET_DEFINITION id="0">
local filter = ClearFilter()
filter:SetZone( ZONE_GRAVEYARD, EffectController() )
</TARGET_DEFINITION>
<RESOLUTION_TIME_ACTION>
local count = EffectDC():Get_Int(101)
local oDC = RSN_GetObjectDC( Object(), true )
oDC:Int_Set( 0, 0 )
for i = 0, count-1 do
local target_card = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(i)
if target_card ~= nil then
oDC:Int_Inc( 0 )
oDC:Set_CardPtr( i+1, target_card )
end
end
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
RSN_MarkManaAbilityEnd()
</RESOLUTION_TIME_ACTION>
</ACTIVATED_ABILITY>
<TRIGGERED_ABILITY replacement_effect="1" active_zone="ZONE_ANY">
<TRIGGER value="CONSIDERED_FOR_CAST" simple_qualifier="self" pre_trigger="1" />
<RESOLUTION_TIME_ACTION>
local oDC = RSN_GetObjectDC( Object(), false )
if TriggerObject() ~= nil and oDC ~= nil then
local CostChange = oDC:Int_Get(0)
oDC:Int_Set( 1000, 1 )
TriggerObject():DecreaseCost( CostChange )
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY replacement_effect="1" active_zone="ZONE_ANY">
<TRIGGER value="SPELL_PLAYED" simple_qualifier="self" pre_trigger="1" />
<RESOLUTION_TIME_ACTION>
local oDC = RSN_GetObjectDC( Object(), false )
if oDC ~= nil then
local count = oDC:Int_Get(0)
for i = 1, count do
local target_card = oDC:Get_CardPtr(i)
if target_card ~= nil then
target_card:Exile()
end
end
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY replacement_effect="1" active_zone="ZONE_ANY">
<TRIGGER value="SPELL_PLAYED" simple_qualifier="another" pre_trigger="1" >
local oDC = RSN_GetObjectDC( Object(), false )
if oDC ~= nil then
oDC:Int_Set(0,0)
end
</TRIGGER>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY replacement_effect="1" active_zone="ZONE_ANY">
<TRIGGER value="ABILITY_PLAYED" simple_qualifier="another" pre_trigger="1" >
local oDC = RSN_GetObjectDC( Object(), false )
if oDC ~= nil then
oDC:Int_Set(0,0)
end
</TRIGGER>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY replacement_effect="1" active_zone="ZONE_ANY">
<TRIGGER value="ZONECHANGE_CONSIDERED" pre_trigger="1" simple_qualifier="self" />
<RESOLUTION_TIME_ACTION>
RSN_ProtectObjectDC()
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY replacement_effect="1" active_zone="ZONE_ANY">
<TRIGGER value="BEGINNING_OF_STEP">
if ((MTG():GetStep() == STEP_UPKEEP) and (MTG():GetTurnNumber() == 0)) then
local chest = EffectController():PlayerDataChest():Get_Chest(NEO_CHEST_AAM)
if chest ~= nil then
return false
else
local chest = EffectController():PlayerDataChest():Make_Chest(NEO_CHEST_AAM)
return true
end
end
</TRIGGER>
<RESOLUTION_TIME_ACTION>
RSN_Characteristics_CreateManagers("NEO_ABILITIES_ACTIVE_MANAGER")
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<SPELL_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Target player sacrifices two creatures.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Le joueur ciblé sacrifie deux créatures.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[El jugador objetivo sacrifica dos criaturas.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Ein Spieler deiner Wahl opfert zwei Kreaturen.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Un giocatore bersaglio sacrifica due creature.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[プレイヤー1人を対象とする。そのプレイヤーはクリーチャーを2体生け贄に捧げる。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[플레이어를 목표로 정한다. 그 플레이어는 생물 두 개를 희생한다.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Целевой игрок жертвует два существа.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[O jogador alvo sacrifica duas criaturas.]]></LOCALISED_TEXT>
<TARGET tag="CARD_QUERY_CHOOSE_PLAYER_TO_SACRIFICE_TWO_CREATURES" definition="0" compartment="0" count="1" />
<TARGET_DEFINITION id="0">
local filter = ClearFilter()
filter:SetFilterType( FILTER_TYPE_PLAYERS )
</TARGET_DEFINITION>
<RESOLUTION_TIME_ACTION>
local player = EffectDC():Get_Targets(0):Get_PlayerPtr(0)
local filter = ClearFilter()
filter:Add(FE_CONTROLLER, OP_IS, player)
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
player:SetItemCount(2)
for i=0,(2-1) do
player:SetItemPrompt( i, "CARD_QUERY_CHOOSE_CREATURE_TO_SACRIFICE" )
end
player:ChooseItems(EffectDC():Make_Targets(1))
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local player = EffectDC():Get_Targets(0):Get_PlayerPtr(0)
local creatures = EffectDC():Get_Targets(1)
for i=0,(2-1) do
local card = EffectDC():Get_Targets(1):Get_CardPtr(i)
player:Sacrifice(card)
end
</RESOLUTION_TIME_ACTION>
</SPELL_ABILITY>
<TOKEN_REGISTRATION reservation="1" type="RSN_TOKEN_MANA_C" />
<TOKEN_REGISTRATION reservation="1" type="RSN_TOKEN_CHARACTERISTIC_MANAGER" />
<TOKEN_REGISTRATION reservation="1" type="ABILITIES_ACTIVE_MANAGER" />
</CARD_V2>
- Murderous Cut | Open
- Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
<FILENAME text="MURDEROUS_CUT_1000386613" />
<CARDNAME text="MURDEROUS_CUT" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Murderous Cut]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Entaille meurtrière]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Tajo asesino]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Mörderischer Schnitt]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Falciata Omicida]]></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[Talho Assassino]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="1000386613" />
<ARTID value="1000386613" />
<ARTIST name="Yohann Schepacz" />
<CASTING_COST cost="{4}{B}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[The blades of a Sultai assassin stab like the fangs of a dragon.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Les lames d’un assassin sultaï pénètrent tels les crocs d’un dragon.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Las cuchillas de un asesino sultai se clavan como los colmillos de un dragón.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Die Klingen eines Sultai-Assassinen sind scharf wie Drachenzähne.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Le lame di un assassino Sultai trafiggono come zanne di drago.]]></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[As lâminas dos assassinos Sultai ferem como as presas de um dragão.]]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="Instant" />
<EXPANSION value="KTK" />
<RARITY metaname="U" />
<STATIC_ABILITY active_zone="ZONE_ANY">
<CONTINUOUS_ACTION layer="6">
if Object() ~= nil then
local characteristics = Object():GetCurrentCharacteristics()
if Object():GetZone() == ZONE_HAND then
characteristics:GrantAbility(1)
elseif Object():GetZone() == ZONE_GRAVEYARD then
characteristics:GrantAbility(2)
end
end
</CONTINUOUS_ACTION>
</STATIC_ABILITY>
<STATIC_ABILITY active_zone="ZONE_EXILE">
<CONTINUOUS_ACTION layer="6">
if Object() ~= nil then
local characteristics = Object():GetCurrentCharacteristics()
characteristics:GrantAbility(3)
end
</CONTINUOUS_ACTION>
</STATIC_ABILITY>
<ACTIVATED_ABILITY forced_skip="1" active_zone="ZONE_LIBRARY">
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Delve |(Each card you exile from your graveyard while casting this spell pays for| {1} |.)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Fouille |(Chaque carte que vous exilez depuis votre cimetière en lançant ce sort paie| {1} |.)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Excavar |(Cada carta que exilies de tu cementerio al lanzar este hechizo cuenta como un pago de| {1} |.)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Wühlen |(Mit jeder Karte, die du aus deinem Friedhof ins Exil schickst, während du diesen Zauberspruch wirkst, bezahlst du| {1} |seiner Kosten.)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Esumare |(Ogni carta che esili dal tuo cimitero mentre lanci questa magia corrisponde al pagamento di| {1} |.)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[探査 (この呪文を唱える段階であなたがあなたの墓地から追放した各カードは、{1}を支払う。)]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[파헤치기 (이 주문을 발동하는 동안 당신이 당신의 무덤에서 추방하는 카드는 {1}을 지불한다.)]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Выкапывание |(Каждая карта, которую вы изгоняете из вашего кладбища при разыгрывании этого заклинания, считается оплатой| {1} |.)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Esquadrinhar |(Cada card que você exila de seu cemitério quando conjura esta mágica paga por| {1} |.)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[掘穴(你于施放此咒语时每从你坟墓场中放逐一张牌,就能为此咒语支付{1})。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[掘穴(你於施放此咒語時每從你墳墓場中放逐一張牌,就能為此咒語支付{1})。]]></LOCALISED_TEXT>
<COST mana_cost="{0}" type="Mana" />
<PLAY_TIME_ACTION>
RSN_MarkManaAbilityStart()
</PLAY_TIME_ACTION>
<TARGET tag="CARD_QUERY_CHOOSE_ANY_KIND_OF_CARD_TO_EXILE" definition="0" compartment="0" up_to="1">
local CostChange = UpdateColourlessCostValue(Object())
local ObZone = Object():GetZone()
local filter = ClearFilter()
filter:Add( FE_CARD_INSTANCE, OP_IS, Object() )
filter:SetZone(ObZone)
local ColourlessTotal = filter:ChromaCount( COLOUR_COLOURLESS )
local UpdateCost = ColourlessTotal + CostChange
EffectDC():Set_Int(101,UpdateCost)
MTG():SetTargetCount( EffectDC():Get_Int(101) )
</TARGET>
<TARGET_DEFINITION id="0">
local filter = ClearFilter()
filter:SetZone( ZONE_GRAVEYARD, EffectController() )
</TARGET_DEFINITION>
<RESOLUTION_TIME_ACTION>
local count = EffectDC():Get_Int(101)
local oDC = RSN_GetObjectDC( Object(), true )
oDC:Int_Set( 0, 0 )
for i = 0, count-1 do
local target_card = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(i)
if target_card ~= nil then
oDC:Int_Inc( 0 )
oDC:Set_CardPtr( i+1, target_card )
end
end
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
RSN_MarkManaAbilityEnd()
</RESOLUTION_TIME_ACTION>
</ACTIVATED_ABILITY>
<ACTIVATED_ABILITY resource_id="1" forced_skip="1" active_zone="ZONE_HAND">
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Select cards to delve]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Sélectionnez les cartes à fouiller]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Seleccionar tarjetas de excavar]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Wählen Sie Karten, um zu vertiefen]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Selezionare le carte da esumare]]></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[Escolha cartões de esquadrinhar]]></LOCALISED_TEXT>
<COST mana_cost="{0}" type="Mana" />
<PLAY_TIME_ACTION>
RSN_MarkManaAbilityStart()
</PLAY_TIME_ACTION>
<TARGET tag="CARD_QUERY_CHOOSE_ANY_KIND_OF_CARD_TO_EXILE" definition="0" compartment="0" up_to="1">
local CostChange = UpdateColourlessCostValue(Object())
local ObZone = Object():GetZone()
local filter = ClearFilter()
filter:Add( FE_CARD_INSTANCE, OP_IS, Object() )
filter:SetZone(ObZone)
local ColourlessTotal = filter:ChromaCount( COLOUR_COLOURLESS )
local UpdateCost = ColourlessTotal + CostChange
EffectDC():Set_Int(101,UpdateCost)
MTG():SetTargetCount( EffectDC():Get_Int(101) )
</TARGET>
<TARGET_DEFINITION id="0">
local filter = ClearFilter()
filter:SetZone( ZONE_GRAVEYARD, EffectController() )
</TARGET_DEFINITION>
<RESOLUTION_TIME_ACTION>
local count = EffectDC():Get_Int(101)
local oDC = RSN_GetObjectDC( Object(), true )
oDC:Int_Set( 0, 0 )
for i = 0, count-1 do
local target_card = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(i)
if target_card ~= nil then
oDC:Int_Inc( 0 )
oDC:Set_CardPtr( i+1, target_card )
end
end
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
RSN_MarkManaAbilityEnd()
</RESOLUTION_TIME_ACTION>
</ACTIVATED_ABILITY>
<ACTIVATED_ABILITY resource_id="2" forced_skip="1" active_zone="ZONE_GRAVEYARD">
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Select cards to delve]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Sélectionnez les cartes à fouiller]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Seleccionar tarjetas de excavar]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Wählen Sie Karten, um zu vertiefen]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Selezionare le carte da esumare]]></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[Escolha cartões de esquadrinhar]]></LOCALISED_TEXT>
<COST mana_cost="{0}" type="Mana" />
<PLAY_TIME_ACTION>
RSN_MarkManaAbilityStart()
</PLAY_TIME_ACTION>
<TARGET tag="CARD_QUERY_CHOOSE_ANY_KIND_OF_CARD_TO_EXILE" definition="0" compartment="0" up_to="1">
local CostChange = UpdateColourlessCostValue(Object())
local ObZone = Object():GetZone()
local filter = ClearFilter()
filter:Add( FE_CARD_INSTANCE, OP_IS, Object() )
filter:SetZone(ObZone)
local ColourlessTotal = filter:ChromaCount( COLOUR_COLOURLESS )
local UpdateCost = ColourlessTotal + CostChange
EffectDC():Set_Int(101,UpdateCost)
MTG():SetTargetCount( EffectDC():Get_Int(101) )
</TARGET>
<TARGET_DEFINITION id="0">
local filter = ClearFilter()
filter:Add( FE_CARD_INSTANCE, OP_NOT, Object() )
filter:SetZone( ZONE_GRAVEYARD, EffectController() )
</TARGET_DEFINITION>
<RESOLUTION_TIME_ACTION>
local count = EffectDC():Get_Int(101)
local oDC = RSN_GetObjectDC( Object(), true )
oDC:Int_Set( 0, 0 )
for i = 0, count-1 do
local target_card = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(i)
if target_card ~= nil then
oDC:Int_Inc( 0 )
oDC:Set_CardPtr( i+1, target_card )
end
end
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
RSN_MarkManaAbilityEnd()
</RESOLUTION_TIME_ACTION>
</ACTIVATED_ABILITY>
<ACTIVATED_ABILITY resource_id="3" forced_skip="1" active_zone="ZONE_EXILE">
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Select cards to delve]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Sélectionnez les cartes à fouiller]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Seleccionar tarjetas de excavar]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Wählen Sie Karten, um zu vertiefen]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Selezionare le carte da esumare]]></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[Escolha cartões de esquadrinhar]]></LOCALISED_TEXT>
<COST mana_cost="{0}" type="Mana" />
<PLAY_TIME_ACTION>
RSN_MarkManaAbilityStart()
</PLAY_TIME_ACTION>
<TARGET tag="CARD_QUERY_CHOOSE_ANY_KIND_OF_CARD_TO_EXILE" definition="0" compartment="0" up_to="1">
local CostChange = UpdateColourlessCostValue(Object())
local ObZone = Object():GetZone()
local filter = ClearFilter()
filter:Add( FE_CARD_INSTANCE, OP_IS, Object() )
filter:SetZone(ObZone)
local ColourlessTotal = filter:ChromaCount( COLOUR_COLOURLESS )
local UpdateCost = ColourlessTotal + CostChange
EffectDC():Set_Int(101,UpdateCost)
MTG():SetTargetCount( EffectDC():Get_Int(101) )
</TARGET>
<TARGET_DEFINITION id="0">
local filter = ClearFilter()
filter:SetZone( ZONE_GRAVEYARD, EffectController() )
</TARGET_DEFINITION>
<RESOLUTION_TIME_ACTION>
local count = EffectDC():Get_Int(101)
local oDC = RSN_GetObjectDC( Object(), true )
oDC:Int_Set( 0, 0 )
for i = 0, count-1 do
local target_card = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(i)
if target_card ~= nil then
oDC:Int_Inc( 0 )
oDC:Set_CardPtr( i+1, target_card )
end
end
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
RSN_MarkManaAbilityEnd()
</RESOLUTION_TIME_ACTION>
</ACTIVATED_ABILITY>
<TRIGGERED_ABILITY replacement_effect="1" active_zone="ZONE_ANY">
<TRIGGER value="CONSIDERED_FOR_CAST" simple_qualifier="self" pre_trigger="1" />
<RESOLUTION_TIME_ACTION>
local oDC = RSN_GetObjectDC( Object(), false )
if TriggerObject() ~= nil and oDC ~= nil then
local CostChange = oDC:Int_Get(0)
oDC:Int_Set( 1000, 1 )
TriggerObject():DecreaseCost( CostChange )
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY replacement_effect="1" active_zone="ZONE_ANY">
<TRIGGER value="SPELL_PLAYED" simple_qualifier="self" pre_trigger="1" />
<RESOLUTION_TIME_ACTION>
local oDC = RSN_GetObjectDC( Object(), false )
if oDC ~= nil then
local count = oDC:Int_Get(0)
for i = 1, count do
local target_card = oDC:Get_CardPtr(i)
if target_card ~= nil then
target_card:Exile()
end
end
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY replacement_effect="1" active_zone="ZONE_ANY">
<TRIGGER value="SPELL_PLAYED" simple_qualifier="another" pre_trigger="1" >
local oDC = RSN_GetObjectDC( Object(), false )
if oDC ~= nil then
oDC:Int_Set(0,0)
end
</TRIGGER>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY replacement_effect="1" active_zone="ZONE_ANY">
<TRIGGER value="ABILITY_PLAYED" simple_qualifier="another" pre_trigger="1" >
local oDC = RSN_GetObjectDC( Object(), false )
if oDC ~= nil then
oDC:Int_Set(0,0)
end
</TRIGGER>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY replacement_effect="1" active_zone="ZONE_ANY">
<TRIGGER value="ZONECHANGE_CONSIDERED" pre_trigger="1" simple_qualifier="self" />
<RESOLUTION_TIME_ACTION>
RSN_ProtectObjectDC()
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY replacement_effect="1" active_zone="ZONE_ANY">
<TRIGGER value="BEGINNING_OF_STEP">
if ((MTG():GetStep() == STEP_UPKEEP) and (MTG():GetTurnNumber() == 0)) then
local chest = EffectController():PlayerDataChest():Get_Chest(NEO_CHEST_AAM)
if chest ~= nil then
return false
else
local chest = EffectController():PlayerDataChest():Make_Chest(NEO_CHEST_AAM)
return true
end
end
</TRIGGER>
<RESOLUTION_TIME_ACTION>
RSN_Characteristics_CreateManagers("NEO_ABILITIES_ACTIVE_MANAGER")
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<SPELL_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Destroy target creature.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Détruisez la créature ciblée.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Destruye la criatura objetivo.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Zerstöre eine Kreatur deiner Wahl.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Distruggi una creatura bersaglio.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[クリーチャー1体を対象とし、それを破壊する。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[생물을 목표로 정한다. 그 생물을 파괴한다.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Уничтожьте целевое существо.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Destrua a criatura alvo.]]></LOCALISED_TEXT>
<TARGET tag="CARD_QUERY_CHOOSE_CREATURE_TO_DESTROY" definition="0" compartment="0" count="1" />
<TARGET_DEFINITION id="0">
local filter = ClearFilter()
filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
</TARGET_DEFINITION>
<RESOLUTION_TIME_ACTION>
local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
if target ~= nil then
target:Destroy()
end
</RESOLUTION_TIME_ACTION>
</SPELL_ABILITY>
<TOKEN_REGISTRATION reservation="1" type="RSN_TOKEN_MANA_C" />
<TOKEN_REGISTRATION reservation="1" type="RSN_TOKEN_CHARACTERISTIC_MANAGER" />
<TOKEN_REGISTRATION reservation="1" type="ABILITIES_ACTIVE_MANAGER" />
</CARD_V2>
volrathxp
Re: Delve mechanics
by NeoAnderson » 29 Sep 2014, 11:39
Are you sure you haven't modified or removed any function files??
PLease check if the NEO_CHEST_AAM is declared. Check into function folde into LOL files if there is the follow declaration :
PLease check if the NEO_CHEST_AAM is declared. Check into function folde into LOL files if there is the follow declaration :
- Code: Select all
NEO_CHEST_AAM = 5850005
- NeoAnderson
- Posts: 914
- Joined: 10 Sep 2013, 07:49
- Has thanked: 18 times
- Been thanked: 139 times
Re: Delve mechanics
by volrathxp » 29 Sep 2014, 12:40
That looks like the issue. Thanks.NeoAnderson wrote:Are you sure you haven't modified or removed any function files??
PLease check if the NEO_CHEST_AAM is declared. Check into function folde into LOL files if there is the follow declaration :
- Code: Select all
NEO_CHEST_AAM = 5850005

volrathxp
10 posts
• Page 1 of 1
Who is online
Users browsing this forum: No registered users and 4 guests