Board index
Programs with AI or Rules Enforcement
Magic: The Gathering - Duels of the Planeswalkers
New MTG Cards and Decks (2010, 2012, 2013, 2014, 2015, Magic Duels)
2014




TFM&G2K's Planeswalkers Pool v8g (12/Sep/2014)
Moderator: CCGHQ Admins
Re: TFM&G2K's Planeswalkers Pool v8c (18/Aug/2014)
by kr2033 » 21 Aug 2014, 06:55
first of all, I'm not good at english.
so if you explain easily when you help me about this problem, I'll appreciate it.
1.Nissa, Worldwaker's third ability doesn't work
{-7}:Search your library for any number of basic land cards, put them onto the battlefield, then shuffle your library. Those lands become 4/4 Elemental creatures with trample. They’re still lands.
The lands that I choose don't become 4/4 creature.(and have no trample)
And they are not tapped.
2.Is it impossible to do not Planeswalkers affect to Someting else that is ralated enchantment?(ex.Yavimaya Enchantress)
so if you explain easily when you help me about this problem, I'll appreciate it.
1.Nissa, Worldwaker's third ability doesn't work
{-7}:Search your library for any number of basic land cards, put them onto the battlefield, then shuffle your library. Those lands become 4/4 Elemental creatures with trample. They’re still lands.
The lands that I choose don't become 4/4 creature.(and have no trample)
And they are not tapped.
2.Is it impossible to do not Planeswalkers affect to Someting else that is ralated enchantment?(ex.Yavimaya Enchantress)
Re: TFM&G2K's Planeswalkers Pool v8d (21/Aug/2014)
by thefiremind » 21 Aug 2014, 08:37
Fixed. Download the new version.kr2033 wrote:Nissa, Worldwaker's third ability doesn't work
You need a different version of the card (e.g. Yavimaya Enchantress) that takes my approximation into account. But someone has to code it first.kr2033 wrote:Is it impossible to do not Planeswalkers affect to Someting else that is ralated enchantment?(ex.Yavimaya Enchantress)

< Former DotP 2012/2013/2014 modder >
Currently busy with life...
Currently busy with life...
-
thefiremind - Programmer
- Posts: 3515
- Joined: 07 Nov 2011, 10:55
- Has thanked: 118 times
- Been thanked: 722 times
Re: TFM&G2K's Planeswalkers Pool v8d (21/Aug/2014)
by kr2033 » 21 Aug 2014, 12:30
1.Nissa, Worldwaker's third ability doesn't work
{-7}:Search your library for any number of basic land cards, put them onto the battlefield, then shuffle your library. Those lands become 4/4 Elemental creatures with trample. They’re still lands.
They are still not tapped
{-7}:Search your library for any number of basic land cards, put them onto the battlefield, then shuffle your library. Those lands become 4/4 Elemental creatures with trample. They’re still lands.
They are still not tapped
Re: TFM&G2K's Planeswalkers Pool v8d (21/Aug/2014)
by gorem2k » 21 Aug 2014, 12:55
Yes, slowly but surely.thefiremind wrote:As far as I know, gorem2k is working on a "complementary set" that will include those cards.
Speaking of which, I will need your help for a custom function to filter Enchantment taking Enchanted Evening in consideration.
I came up with this:
- | Open
- Code: Select all
PLW_FilterEnchantments = function()
-- Resets filter and exclude/include the possibility of Enchanted Evening effect in play.
local filter = ClearFilter()
filter:Add(FE_CARD_NAME, OP_IS, "ENCHANTED_EVENING" )
if filter:CountStopAt(1) == 0 then
local filter = ClearFilter()
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_ENCHANTMENT )
PLW_FilterNameSet(filter, "PLANESWALKERS", false ) -- NO Enchanted Evening; exclude planeswalkers.
else
local filter = ClearFilter()
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_ENCHANTMENT )
end
end
PLW_FilterEnchantments = function(filter). I'm not good with AddSubFilter_Or And and all that

EDIT: this is another one, let me know if this is appropriate or if you can come up with something better.
- | Open
- Code: Select all
PLW_FilterEnchantments = function(filter)
-- filter enchantment including the possibility of Enchanted Evening effect in play.
if filter ~= nil then
local subFilter = filter:AddSubFilter_Or()
subFilter:Add(FE_CARD_NAME, OP_IS, "ENCHANTED_EVENING" )
if filter:CountStopAt(1) == 0 then
filter:Clear()
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_ENCHANTMENT )
PLW_FilterNameSet(filter, "PLANESWALKERS", false ) -- NO Enchanted Evening; exclude planeswalkers.
else
filter:Clear()
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_ENCHANTMENT )
end
end
end
Last edited by gorem2k on 21 Aug 2014, 14:36, edited 2 times in total.
Re: TFM&G2K's Planeswalkers Pool v8d (21/Aug/2014)
by gorem2k » 21 Aug 2014, 13:08
The ability does exactly what it says.kr2033 wrote:1.Nissa, Worldwaker's third ability doesn't work
{-7}:Search your library for any number of basic land cards, put them onto the battlefield, then shuffle your library. Those lands become 4/4 Elemental creatures with trample. They’re still lands.
They are still not tapped

Re: TFM&G2K's Planeswalkers Pool v8d (21/Aug/2014)
by sweetLu » 21 Aug 2014, 13:21
You may want to look into using a solution that is more involved. There may be other cards out there that can turn planeswalkers into enchantments. For things turn planeswalkers into enchantments maybe you could grant the planeswalker a custom characteristic using Riiak's custom characteristics dlc. Then to filter for enchantments you would check for cards that are enchantments but not in the planeswalker nameset OR cards that have your custom characteristic. Of course this may overcomplicate things and cause other issues but you may want to give yourself some more flexibility beyond checking for cards in play named Enchanted Evening.
Re: TFM&G2K's Planeswalkers Pool v8d (21/Aug/2014)
by gorem2k » 21 Aug 2014, 13:40
Well, TFM took only that particular card exception in his LOL (other than those who directly target a planeswalker). If you know what else can globally change planeswalker type then he will also have to consider this as well.sweetLu wrote:You may want to look into using a solution that is more involved. There may be other cards out there that can turn planeswalkers into enchantments. For things turn planeswalkers into enchantments maybe you could grant the planeswalker a custom characteristic using Riiak's custom characteristics dlc. Then to filter for enchantments you would check for cards that are enchantments but not in the planeswalker nameset OR cards that have your custom characteristic. Of course this may overcomplicate things and cause other issues but you may want to give yourself some more flexibility beyond checking for cards in play named Enchanted Evening.
I'm focusing on what is not covered in the main PLW mod.
Re: TFM&G2K's Planeswalkers Pool v8d (21/Aug/2014)
by kr2033 » 22 Aug 2014, 07:01
Here is few more problems I found.
1.Ajani Steadfast's third ability has bug
Ajani has 8 counters and use ult. so now he has just 1 counter.
then opponent's turn, opponent's creature attack my Ajani.
Ajani loses his last 1 counter, but he is NOT dead.
and he can use his 1st ability and gains a counter of course.
2.Sulfurous Blast deals damage to Planeswalkers
Sulfurous blast cast and all of planeswalkers on the battlefield take damage and lose their loyalty counters
I'm sorry to my bad English.
1.Ajani Steadfast's third ability has bug
Ajani has 8 counters and use ult. so now he has just 1 counter.
then opponent's turn, opponent's creature attack my Ajani.
Ajani loses his last 1 counter, but he is NOT dead.
and he can use his 1st ability and gains a counter of course.
2.Sulfurous Blast deals damage to Planeswalkers
Sulfurous blast cast and all of planeswalkers on the battlefield take damage and lose their loyalty counters
I'm sorry to my bad English.
Re: TFM&G2K's Planeswalkers Pool v8d (21/Aug/2014)
by gorem2k » 22 Aug 2014, 08:04
Please make sure you have the newest version of DATA_DLC_PLW.wad
version 8d has a new different way to verify counters and has not been tested fully. this may need some more time to have it work 100%. I would suggest thefiremind to keep a fail-safe version along with a beta version when there's a somewhat risky change.
version 8d has a new different way to verify counters and has not been tested fully. this may need some more time to have it work 100%. I would suggest thefiremind to keep a fail-safe version along with a beta version when there's a somewhat risky change.
Re: TFM&G2K's Planeswalkers Pool v8d (21/Aug/2014)
by thefiremind » 22 Aug 2014, 08:18
I just tried to make an enemy beat my Nissa, Worldwaker through attacks and she correctly died with no loyalty counters left. I haven't tried with Ajani, but the only thing his ultimate does is to instruct the manager to always remove 1 counter instead of the normal amount, so I can't see why it should be different.gorem2k wrote:Please make sure you have the newest version of DATA_DLC_PLW.wad
version 8d has a new different way to verify counters and has not been tested fully. this may need some more time to have it work 100%. I would suggest thefiremind to keep a fail-safe version along with a beta version when there's a somewhat risky change.
About Sulfurous Blast, how many Planeswalkers did you have on the battlefield? With only one, it's perfectly fine that the enemy decides to redirect the damage you would receive from Sulfurous Blast to your Planeswalker. If there were more than one and all of them got damaged, I don't know what to say.
< Former DotP 2012/2013/2014 modder >
Currently busy with life...
Currently busy with life...
-
thefiremind - Programmer
- Posts: 3515
- Joined: 07 Nov 2011, 10:55
- Has thanked: 118 times
- Been thanked: 722 times
Re: TFM&G2K's Planeswalkers Pool v8d (21/Aug/2014)
by gorem2k » 22 Aug 2014, 08:49
This happened when I had the emblem.
I'm now testing with
- Code: Select all
return CounterTypeIndex() == MTG():GetCountersType("Loyalty") and PLW_IsInNameSet( TriggerObject(), "PLANESWALKERS" )
- Code: Select all
return GetAmount() < 0 and CounterTypeIndex() == MTG():GetCountersType("Loyalty") and PLW_IsInNameSet( TriggerObject(), "PLANESWALKERS" )
Ok, I think the problem is because Ajani Steadfast has this:
- Code: Select all
<TRIGGERED_ABILITY replacement_effect="1" resource_id="1">
<CLEANUP>
return EffectController() == nil
</CLEANUP>
<TRIGGER value="SOURCE_DEALS_DAMAGE_TO_PLAYER" pre_trigger="1" damage_type="all">
return SecondaryPlayer() == EffectController()
</TRIGGER>
<TRIGGER value="SOURCE_DEALS_DAMAGE_TO_OBJECT" pre_trigger="1" damage_type="all">
return SecondaryObject():GetPlayer() == EffectController() and
SecondaryObject():GetType():Test(CARD_TYPE_CREATURE) and
PLW_IsInNameSet( SecondaryObject(), "PLANESWALKERS" )
</TRIGGER>
<RESOLUTION_TIME_ACTION>
local damage = Damage():GetAmount()
Damage():PreventAmount(damage-1)
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
OK!
Here's the modifications I've made. It looks weird but seems to work.
- manager | Open
- Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="8">
<FILENAME text="_PLANESWALKERS_MANAGER_991800002" />
<CARDNAME text="_PLANESWALKERS_MANAGER" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Planeswalker]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Planeswalker]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Planeswalker]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Planeswalker]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Planeswalker]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[プレインズウォーカー]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[플레인즈워커]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Planeswalker]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Planeswalker]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="991800002" />
<ARTID value="0" />
<ARTIST name="Nobody" />
<CASTING_COST cost="" />
<TYPE metaname="" />
<EXPANSION value="DPI" />
<RARITY metaname="C" />
<!-- 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>
<!-- Planeswalker rules -->
<!-- 1. Planeswalker goes to the graveyard when it has no loyalty counters left -->
<TRIGGERED_ABILITY replacement_effect="1">
<COUNTER_REGISTRATION name="Loyalty" proliferate="11" />
<TRIGGER value="COUNTERS_CHANGED" simple_qualifier="objectyoucontrol">
return GetAmount() < 0 and CounterTypeIndex() == MTG():GetCountersType("Loyalty") and PLW_IsInNameSet( TriggerObject(), "PLANESWALKERS" )
</TRIGGER>
<TRIGGER value="ZONECHANGE_END" simple_qualifier="objectyoucontrol" to_zone="ZONE_BATTLEFIELD">
return PLW_IsInNameSet( TriggerObject(), "PLANESWALKERS" )
</TRIGGER>
<RESOLUTION_TIME_ACTION>
if TriggerObject() ~= nil and TriggerObject():CountCounters( MTG():GetCountersType("Loyalty") ) == 0 then
TriggerObject():PutInGraveyard()
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<!-- 2. Planeswalkers' "Legendary rule" -->
<TRIGGERED_ABILITY replacement_query="1">
<TRIGGER value="ZONECHANGE_END" simple_qualifier="objectyoucontrol" to_zone="ZONE_BATTLEFIELD">
return PLW_IsInNameSet( TriggerObject(), "PLANESWALKERS" )
</TRIGGER>
<RESOLUTION_TIME_ACTION>
MTG():ClearFilterMark()
local tobj = TriggerObject()
local filter = ClearFilter()
filter:Add( FE_CONTROLLER, OP_IS, EffectController() )
PLW_FilterNameSet(filter, "PLANESWALKERS", true)
local filter_count = filter:EvaluateObjects()
if filter:CountStopAt(2) == 2 then
for i=0,filter_count-1 do
local card = filter:GetNthEvaluatedObject(i)
if PLW_GetSubType(card) == PLW_GetSubType(tobj) then
card:MarkForFilter()
end
end
filter:SetMarkedObjectsOnly()
if filter:CountStopAt(2) == 2 then
EffectController():ChooseItem( "PLW_CARD_QUERY_CHOOSE_PLANESWALKER_TO_SAVE", EffectDC():Make_Targets(0) )
end
end
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local to_keep = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(0)
if to_keep ~= nil then
local filter = ClearFilter()
filter:Add( FE_CONTROLLER, OP_IS, EffectController() )
PLW_FilterNameSet(filter, "PLANESWALKERS", true)
local filter_count = filter:EvaluateObjects()
for i=0,filter_count-1 do
local card = filter:GetNthEvaluatedObject(i)
if card ~= to_keep and PLW_GetSubType(card) == PLW_GetSubType( TriggerObject() ) then
card:PutInGraveyard()
end
end
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<!-- 3. Planeswalkers' abilities can be played only once per turn -->
<TRIGGERED_ABILITY replacement_effect="1">
<TRIGGER value="ACTIVATED_ABILITY_PLAYED" simple_qualifier="objectyoucontrol">
if not PLW_IsInNameSet( TriggerObject(), "PLANESWALKERS" ) then
return false
end
local activations_chest = PLW_MyDuelDC():Get_Chest(PLW_PLANESWALKERS_ACTIVATIONS_CHEST)
if activations_chest == nil then
activations_chest = PLW_MyDuelDC():Make_Chest(PLW_PLANESWALKERS_ACTIVATIONS_CHEST)
end
-- Find the Planeswalker
local current_index = -1
local last_index = activations_chest:Get_Int(0)
if last_index > 0 then
for i=1,last_index,2 do
local card = activations_chest:Get_CardPtr(i)
if card ~= nil and card == TriggerObject() then
-- Planeswalker found
current_index = i
break
end
end
else
last_index = -1 -- this will make it right when adding 2 later
end
if current_index == -1 then
-- Planeswalker not found, let's add it
last_index = last_index + 2
activations_chest:Set_Int(0, last_index)
activations_chest:Set_CardPtr( last_index, TriggerObject() )
activations_chest:Set_Int(last_index+1, 0)
current_index = last_index
end
-- Increase Planeswalker's activations count (1 register further than the card pointer)
activations_chest:Int_Inc(current_index+1)
-- Increase player's own activations count (will be used by The Chain Veil's first ability)
PLW_MyPlayerDC( EffectController() ):Int_Inc(PLW_PLANESWALKERS_ACTIVATIONS)
-- Save Planeswalker's activations count index for continuous action
EffectDC():Set_Int(1, current_index+1)
return true
</TRIGGER>
<CONTINUOUS_ACTION layer="8">
if TriggerObject() ~= nil then
local activations_chest = PLW_MyDuelDC():Get_Chest(PLW_PLANESWALKERS_ACTIVATIONS_CHEST)
if activations_chest ~= nil then
local loyalty_activations = activations_chest:Get_Int( EffectDC():Get_Int(1) )
local chain_veil_activations = PLW_MyPlayerDC( TriggerObject():GetController() ):Get_Int(PLW_CHAIN_VEIL_ACTIVATIONS)
if loyalty_activations > chain_veil_activations then
TriggerObject():GetCurrentCharacteristics():Bool_Set(CHARACTERISTIC_CANT_USE_ACTIVATED_ABILITIES, 1)
end
end
end
</CONTINUOUS_ACTION>
<DURATION simple_duration="UntilEOT" />
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY replacement_effect="1">
<TRIGGER value="BEGINNING_OF_STEP">
return MTG():GetStep() == STEP_CLEANUP
</TRIGGER>
<RESOLUTION_TIME_ACTION>
PLW_MyDuelDC():Free_Compartment(PLW_PLANESWALKERS_ACTIVATIONS_CHEST)
for i=0,MTG():GetNumberOfPlayers()-1 do
local player_chest = PLW_MyPlayerDC( MTG():GetNthPlayer(i) )
player_chest:Set_Int(PLW_PLANESWALKERS_ACTIVATIONS, 0)
player_chest:Set_Int(PLW_CHAIN_VEIL_ACTIVATIONS, 0)
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<!-- 4. Damage redirection -->
<TRIGGERED_ABILITY replacement_query="1" linked_ability_group="1">
<COUNTER_REGISTRATION name="Loyalty" proliferate="11" />
<TRIGGER value="SOURCE_DEALS_DAMAGE_TO_PLAYER" pre_trigger="1" damage_type="noncombat">
if LinkedDC():Get_Int(0) ~= 1 then
if SecondaryPlayer() == EffectController() and TriggerObject():GetPlayer():GetTeam() ~= EffectController():GetTeam() then
local filter = ClearFilter()
filter:Add( FE_CONTROLLER, OP_IS, EffectController() )
PLW_FilterNameSet(filter, "PLANESWALKERS", true)
if filter:CountStopAt(1) == 1 then
EffectDC():Set_Int( 2, Damage():GetAmount() )
Damage():Multiply(0)
return true
end
end
else
LinkedDC():Set_Int(0, 0) -- reset the flag
end
return false
</TRIGGER>
<RESOLUTION_TIME_ACTION>
local source = TriggerObject()
if source ~= nil then
local player = source:GetPlayer()
if player ~= nil then
local filter = ClearFilter()
filter:Add( FE_CONTROLLER, OP_IS, EffectController() )
PLW_FilterNameSet(filter, "PLANESWALKERS", true)
player:ChooseItem( "PLW_CARD_QUERY_CHOOSE_PLANESWALKER_REDIRECT_DAMAGE_TO", EffectDC():Make_Targets(1), QUERY_FLAG_MAY )
end
end
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local target = EffectDC():Get_Targets(1) and EffectDC():Get_Targets(1):Get_CardPtr(0)
local amount = EffectDC():Get_Int(2)
if target ~= nil then
PLW_SetLastDamager( target, TriggerObject() )
TriggerObject():DealDamageTo(amount, target)
if target:GetCardType():Test(CARD_TYPE_CREATURE) == false then -- if it's not a creature, dealing damage doesn't do anything
if PLW_MyPlayerDC( target:GetController() ):Get_Int(PLW_AJANI_STEADFAST_EMBLEM) == 0 then
target:RemoveCounters( MTG():GetCountersType("Loyalty"), amount )
else
target:RemoveCounters( MTG():GetCountersType("Loyalty"), 1 )
end
end
else
LinkedDC():Set_Int(0, 1) -- set this flag so the trigger won't trigger again this time
if PLW_MyPlayerDC( SecondaryPlayer() ):Get_Int(PLW_AJANI_STEADFAST_EMBLEM) == 1 then
TriggerObject():DealDamageTo( 1, SecondaryPlayer() )
else
TriggerObject():DealDamageTo( amount, SecondaryPlayer() )
end
end
-- APPROXIMATION: if the damage is unpreventable, this way I'm removing that characteristic
-- APPROXIMATION: if the Planeswalker isn't a creature, damage triggers from the source won't trigger
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<!-- 5. Attacking Planeswalkers -->
<STATIC_ABILITY>
<FILTER filter_id="0">
local filter = ClearFilter()
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
</FILTER>
<CONTINUOUS_ACTION layer="8" filter_id="0">
if FilteredCard() ~= nil then
local filter = ClearFilter()
filter:Add( FE_CARD_NAME, OP_IS, EffectSource() )
filter:EvaluateObjects()
if EffectSource() == filter:GetNthEvaluatedObject(0) then -- only 1 manager should grant the ability
FilteredCard():GetCurrentCharacteristics():GrantAbility(0)
end
end
</CONTINUOUS_ACTION>
</STATIC_ABILITY>
<TRIGGERED_ABILITY replacement_query="1" resource_id="0">
<TRIGGER value="ATTACKING" simple_qualifier="self" />
<RESOLUTION_TIME_ACTION>
local defending = TriggerObject() and TriggerObject():GetPlayerAttacked()
if defending ~= nil then
local filter = ClearFilter()
filter:Add(FE_CONTROLLER, OP_IS, defending)
PLW_FilterNameSet(filter, "PLANESWALKERS", true)
if filter:CountStopAt(1) == 1 then
EffectController():ChooseItem( "PLW_CARD_QUERY_CHOOSE_PLANESWALKER_TO_ATTACK", EffectDC():Make_Targets(0), QUERY_FLAG_MAY )
end
end
-- APPROXIMATION: a creature attacking a Planeswalker shouldn't be counted as attacking the player
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local target = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(0)
if target ~= nil then
local defending = TriggerObject() and TriggerObject():GetPlayerAttacked()
if defending ~= nil and defending:IsAI() == false then
defending:SetCustomQueryInstructionCardPtr(target)
defending:BeginNewMultipleChoice()
defending:AddMultipleChoiceAnswer("CONTROL_MB_CONFIRM")
defending:AskMultipleChoiceQuestion( "PLW_CARD_QUERY_ATTACKED_PLANESWALKER", TriggerObject() )
end
end
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local target = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(0)
if target ~= nil then
local delayDC = EffectDC():Make_Chest(1)
delayDC:Set_CardPtr( 0, TriggerObject() )
delayDC:Set_CardPtr(1, target)
MTG():CreateDelayedTrigger(1, delayDC)
else
MTG():CreateDelayedTrigger(1, nil)
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY replacement_effect="1" resource_id="1">
<CLEANUP>
return MTG():GetStep() == STEP_END_OF_COMBAT
</CLEANUP>
<COUNTER_REGISTRATION name="Loyalty" proliferate="11" />
<TRIGGER value="SOURCE_DEALS_DAMAGE_TO_PLAYER" damage_type="combat" pre_trigger="1">
if TriggerObject() == EffectDC():Get_CardPtr(0) then
local target = EffectDC():Get_CardPtr(1)
if target ~= nil then
local amount = Damage():GetAmount()
if target:GetCardType():Test(CARD_TYPE_CREATURE) then
PLW_SetLastDamager( target, TriggerObject() )
Damage():RedirectAllTo(target)
else
Damage():Multiply(0)
if PLW_MyPlayerDC( target:GetController() ):Get_Int(PLW_AJANI_STEADFAST_EMBLEM) == 0 then
target:RemoveCounters( MTG():GetCountersType("Loyalty"), amount )
else
target:RemoveCounters( MTG():GetCountersType("Loyalty"), 1 )
end
MTG():CreateDelayedTrigger( 2, EffectDC() )
end
end
return true
else
-- damage done to player
if PLW_MyPlayerDC( SecondaryPlayer() ):Get_Int(PLW_AJANI_STEADFAST_EMBLEM) == 1 then
local damage = Damage():GetAmount()
Damage():PreventAmount(damage-1)
end
end
return false
-- APPROXIMATION: if the Planeswalker isn't a creature, damage triggers from the source won't trigger
</TRIGGER>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY forced_skip="1" resource_id="2">
<CLEANUP fire_once="1" />
<TRIGGER value="STATE_BASED_EFFECTS" />
<RESOLUTION_TIME_ACTION>
local target = EffectDC():Get_CardPtr(1)
if target ~= nil then
PLW_SetLastDamager( target, EffectDC():Get_CardPtr(0) )
MTG():FireTrigger( TRIGGER_OBJECT_TAKES_DAMAGE, target )
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<!-- 6. Damage to Planeswalker creatures (this works only for Gideon when he becomes a creature) -->
<TRIGGERED_ABILITY replacement_effect="1">
<COUNTER_REGISTRATION name="Loyalty" proliferate="11" />
<TRIGGER value="OBJECT_TAKES_DAMAGE">
return PLW_IsInNameSet( TriggerObject(), "PLANESWALKERS" )
</TRIGGER>
<RESOLUTION_TIME_ACTION>
if TriggerObject() ~= nil then
local amount = Damage() and Damage():GetAmount()
if amount ~= nil then
TriggerObject():RemoveCounters( MTG():GetCountersType("Loyalty"), amount )
end
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<!-- 7. Cards not allowed to target Planeswalkers -->
<TRIGGERED_ABILITY replacement_effect="1">
<TRIGGER value="CARD_CONSIDERED_FOR_TARGETTING" pre_trigger="1">
local target = TriggerObject()
local filter = ClearFilter()
filter:Add(FE_CARD_NAME, OP_IS, "ENCHANTED_EVENING") -- With Enchanted Evening on the battlefield, Planeswalkers would be enchantments for real
if filter:CountStopAt(1) == 0 or target:GetZone() ~= ZONE_BATTLEFIELD then
local targetter = SecondaryObject()
if PLW_IsInNameSet(target, "PLANESWALKERS") and
( PLW_IsInNameSet(targetter, "TARGET_ENCHANTMENTS_NOT_CREATURES") or
(target:GetCardType():Test(CARD_TYPE_CREATURE) == false and
PLW_IsInNameSet(targetter, "TARGET_ENCHANTMENTS_AND_CREATURES")) ) then
MTG():OverrideEvent()
return true
end
end
return false
</TRIGGER>
</TRIGGERED_ABILITY>
<!-- 8. Planeswalker type hack -->
<TRIGGERED_ABILITY replacement_effect="1">
<TRIGGER value="ZONECHANGE_TRANSITION" simple_qualifier="objectyoucontrol" to_zone="ZONE_BATTLEFIELD">
if TriggerObject():GetCardType():Test(CARD_TYPE_PLANESWALKER) then
EffectDC():Protect_CardPtr(COMPARTMENT_ID_PARAM_TRIGGER_OBJECT)
return true
end
return false
</TRIGGER>
<CONTINUOUS_ACTION layer="1">
if TriggerObject() ~= nil then
local characteristics = TriggerObject():GetCurrentCharacteristics()
local card_type = characteristics:CardType_GetWritable()
local supertype = characteristics:SuperType_GetWritable()
card_type:Clear()
-- I chose "Basic Snow Enchantment", it seems the only safe choice.
-- I avoided Legendary since we are already managing the Planeswalkers' "Legendary rule" manually.
card_type:Add(CARD_TYPE_ENCHANTMENT)
supertype:Add(SUPERTYPE_BASIC)
supertype:Add(SUPERTYPE_SNOW)
end
</CONTINUOUS_ACTION>
<DURATION>
return TriggerObject() == nil
</DURATION>
</TRIGGERED_ABILITY>
<AI_BASE_SCORE score="-5000" zone="ZONE_BATTLEFIELD" />
</CARD_V2>
- ajani steadfast | Open
- Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
<FILENAME text="AJANI_STEADFAST_991383180" />
<CARDNAME text="AJANI_STEADFAST" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Ajani Steadfast]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Ajani l’inébranlable]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Ajani tenaz]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Ajani der Standhafte]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Ajani l’Incrollabile]]></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[Ajani Resoluto]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="991383180" />
<ARTID value="991383180" />
<ARTIST name="Chris Rahn" />
<CASTING_COST cost="{3}{W}" />
<TYPE metaname="Planeswalker" />
<TYPE metaname="Enchantment" />
<SUB_TYPE metaname="Ajani" />
<EXPANSION value="M15" />
<RARITY metaname="M" />
<TRIGGERED_ABILITY replacement_effect="1" active_zone="ZONE_TRANSITION">
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[|(Loyalty 4)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[|(Loyauté 4)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[|(Lealtad 4)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[|(Loyalität 4)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[|(Fedeltà 4)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[(忠誠 4)]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[|(충성 4)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[|(Верность 4)|]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[|(Lealdade 4)|]]></LOCALISED_TEXT>
<COUNTER_REGISTRATION name="Loyalty" proliferate="11" />
<TRIGGER value="ZONECHANGE_TRANSITION" simple_qualifier="self" to_zone="ZONE_BATTLEFIELD" from_zone="ZONE_ANY" />
<RESOLUTION_TIME_ACTION>
if EffectSource() ~= nil then
EffectSource():AddCounters( MTG():GetCountersType("Loyalty"), 4 )
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<ACTIVATED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[(+1): Until end of turn, up to one target creature gets +1/+1 and gains first strike, vigilance, and lifelink.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[(+1) : Jusqu’à la fin du tour, jusqu’à une créature ciblée gagne +1/+1 et acquiert l’initiative, la vigilance et le lien de vie.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[(+1): Hasta el final del turno, hasta una criatura objetivo obtiene +1/+1 y gana las habilidades de dañar primero, vigilancia y vínculo vital.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[(+1): Bis zum Ende des Zuges erhält bis zu eine Kreatur deiner Wahl +1/+1, Erstschlag, Wachsamkeit und Lebensverknüpfung.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[(+1): Fino alla fine del turno, fino a una creatura bersaglio prende +1/+1 e ha attacco improvviso, cautela e legame vitale.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[(+1):クリーチャーを最大1体まで対象とする。ターン終了時まで、それは+1/+1の修整を受けるとともに先制攻撃と警戒と絆魂を得る。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[(+1): 생물을 최대 한 개까지 목표로 정한다. 그 생물은 턴종료까지 +1/+1을 받고 선제공격과 경계, 생명연결을 얻는다.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[(+1): до конца хода не более чем одно целевое существо получает +1/+1 и Первый удар, Бдительность и Цепь жизни.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[(+1): Até o final do turno, até uma criatura alvo recebe +1/+1 e ganha iniciativa, vigilância e vínculo com a vida.]]></LOCALISED_TEXT>
<AVAILABILITY sorcery_time="1" />
<COST type="generic">
<PREREQUISITE>
return true
</PREREQUISITE>
<RESOLUTION_TIME_ACTION>
if EffectSource() ~= nil then
PLW_ShutDownDoublingSeason()
EffectSource():AddCounters( MTG():GetCountersType("Loyalty"), 1 )
end
</RESOLUTION_TIME_ACTION>
</COST>
<TARGET tag="CARD_QUERY_CHOOSE_CREATURE_TO_GET_1_1" definition="0" compartment="0" count="1" up_to="1" />
<TARGET_DEFINITION id="0">
local filter = ClearFilter()
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
</TARGET_DEFINITION>
<CONTINUOUS_ACTION layer="7C">
local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
if target ~= nil then
local characteristics = target:GetCurrentCharacteristics()
characteristics:Power_Add(1)
characteristics:Toughness_Add(1)
end
</CONTINUOUS_ACTION>
<CONTINUOUS_ACTION layer="6">
local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
if target ~= nil then
target:GetCurrentCharacteristics():Bool_Set(CHARACTERISTIC_FIRST_STRIKE, 1)
end
</CONTINUOUS_ACTION>
<CONTINUOUS_ACTION layer="6">
local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
if target ~= nil then
target:GetCurrentCharacteristics():Bool_Set(CHARACTERISTIC_VIGILANCE, 1)
end
</CONTINUOUS_ACTION>
<CONTINUOUS_ACTION layer="6">
local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
if target ~= nil then
target:GetCurrentCharacteristics():Bool_Set(CHARACTERISTIC_LIFELINK, 1)
end
</CONTINUOUS_ACTION>
<DURATION simple_duration="UntilEOT" />
<AI_SIMPLIFIED_TARGETING compartment="0" hint="HINT_ALLIED_ONLY" />
</ACTIVATED_ABILITY>
<ACTIVATED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[(-2): Put a +1/+1 counter on each creature you control and a loyalty counter on each other planeswalker you control.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[(-2) : Mettez un marqueur +1/+1 sur chaque créature que vous contrôlez et un marqueur « loyauté » sur chaque autre planeswalker que vous contrôlez.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[(-2): Pon un contador +1/+1 sobre cada criatura que controlas y un contador de lealtad sobre cada uno de los otros planeswalkers que controlas.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[(-2): Lege eine +1/+1-Marke auf jede Kreatur, die du kontrollierst, und eine Loyalitätsmarke auf jeden anderen Planeswalker, den du kontrollierst.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[(-2): Metti un segnalino +1/+1 su ogni creatura che controlli e un segnalino fedeltà su ogni altro planeswalker che controlli.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[(-2):あなたがコントロールする各クリーチャーの上に+1/+1カウンターをそれぞれ1個、あなたがコントロールする他の各プレインズウォーカーの上に忠誠カウンターをそれぞれ1個置く。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[(-2): 당신이 조종하는 각 생물에 +1/+1 카운터 한 개를 올려놓고 당신이 조종하는 다른 모든 플레인즈워커에 충성 카운터 한 개를 올려놓는다.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[(-2): положите один жетон +1/+1 на каждое существо под вашим контролем и один жетон верности на каждого другого planeswalker-а под вашим контролем.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[(-2): Coloque um marcador +1/+1 em cada criatura que você controla e um marcador de lealdade em cada outro planeswalker que você controla.]]></LOCALISED_TEXT>
<AVAILABILITY sorcery_time="1" />
<COST type="RemoveCountersSelf" amount="2" counter_type="Loyalty" />
<COUNTER_REGISTRATION name="Loyalty" proliferate="11" />
<FILTER filter_id="0">
local filter = ClearFilter()
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
filter:Add( FE_CONTROLLER, OP_IS, EffectController() )
</FILTER>
<FILTER filter_id="1">
local filter = ClearFilter()
filter:Add( FE_CONTROLLER, OP_IS, EffectController() )
filter:Add( FE_CARD_INSTANCE, OP_NOT, EffectSource() )
PLW_FilterNameSet(filter, "PLANESWALKERS", true)
</FILTER>
<RESOLUTION_TIME_ACTION filter_id="0">
if FilteredCard() ~= nil then
FilteredCard():AddCounters( MTG():PlusOnePlusOneCounters(), 1 )
end
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION filter_id="1">
if FilteredCard() ~= nil then
FilteredCard():AddCounters( MTG():GetCountersType("Loyalty"), 1 )
end
</RESOLUTION_TIME_ACTION>
</ACTIVATED_ABILITY>
<ACTIVATED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[(-7): You get an emblem with “If a source would deal damage to you or a planeswalker you control, prevent all but 1 of that damage.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[(-7) : Vous gagnez un emblème avec « Si une source devait infliger des blessures à vous ou à un planeswalker que vous contrôlez, prévenez toutes ces blessures sauf 1. »]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[(-7): Obtienes un emblema con “Si una fuente fuera a hacerte daño a ti a o a un planeswalker que controlas, prevén todo excepto 1 punto de ese daño”.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[(-7): Du erhältst ein Emblem mit „Falls eine Quelle dir oder einem Planeswalker, den du kontrollierst, Schaden zufügen würde, verhindere alle bis auf 1 dieser Schadenspunkte.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[(-7): Ottieni un emblema con “Se una fonte sta per infliggere danno a te o a un planeswalker che controlli, previeni tutto il danno tranne 1”.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[(-7):あなたは「発生源があなたかあなたがコントロールするプレインズウォーカーにダメージを与えるなら、そのダメージを1点を残してすべて軽減する。」を持つ紋章を得る。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[(-7): 당신은 “어느 원천이 당신 또는 당신이 조종하는 플레인즈워커에게 피해를 입히려 한다면, 그 피해 중 1점을 제외한 모든 피해를 방지한다.”를 가진 휘장을 얻는다.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[(-7): вы получаете эмблему со способностью «Если источник должен нанести повреждения вам или planeswalker-у под вашим контролем, предотвратите все те повреждения, кроме 1».]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[(-7): Você recebe um emblema com “Se uma fonte for causar dano a você ou a um planeswalker que você controla, previna todo o dano menos 1 ponto.”]]></LOCALISED_TEXT>
<AVAILABILITY sorcery_time="1" />
<COST type="RemoveCountersSelf" amount="7" counter_type="Loyalty" />
<RESOLUTION_TIME_ACTION>
PLW_MyPlayerDC( EffectController() ):Set_Int(PLW_AJANI_STEADFAST_EMBLEM, 1)
</RESOLUTION_TIME_ACTION>
<SFX text="GLOBAL_BIORHYTHM_PLAY" />
</ACTIVATED_ABILITY>
<TRIGGERED_ABILITY replacement_effect="1" active_zone="ZONE_ANY">
<TRIGGER value="BEGINNING_OF_STEP">
return MTG():GetStep() == STEP_UPKEEP and MTG():GetTurnNumber() == 0
</TRIGGER>
<RESOLUTION_TIME_ACTION>
PLW_CreateUniqueTokenForEachPlayer("_PLANESWALKERS_MANAGER_991800002", "_PLANESWALKERS_MANAGER")
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<TOKEN_REGISTRATION reservation="1" type="_PLANESWALKERS_MANAGER_991800002" />
<HELP title="MORE_INFO_BADGE_TITLE_0" body="MORE_INFO_BADGE_BODY_0" zone="ZONE_ANY" />
<HELP title="MORE_INFO_BADGE_TITLE_4" body="MORE_INFO_BADGE_BODY_4" zone="ZONE_ANY" />
<HELP title="MORE_INFO_BADGE_TITLE_13" body="MORE_INFO_BADGE_BODY_13" zone="ZONE_ANY" />
<AI_COUNTER_SCORE type="Loyalty" score="100" />
<AI_BASE_SCORE score="600" zone="ZONE_BATTLEFIELD" />
</CARD_V2>

It's unfortunate that AI never split his choices when attacking with 2 or more creature, it's either all on a planeswalker or all on the player...
Re: TFM&G2K's Planeswalkers Pool v8d (21/Aug/2014)
by kr2033 » 24 Aug 2014, 11:23
1.Hellhole Rats
When Hellhole Rats enters the battlefield, target player discards a card. Hellhole Rats deals damage to that player equal to that card's converted mana cost.
Ashiok, Nightmare Weaver is in the battlefield under my control.
then opponent's Hellhole rats enter the battlefield, and I discard another Ashiok.
but AI didn't deal damage to me, but Ashiok take damage and loses 3 counters.
2.Sedraxis Alchemist
When Sedraxis Alchemist enters the battlefield, if you control a blue permanent, return target nonland permanent to its owner's hand
Ashiok, Nightmare Weaver is in the battlefield under my control.
then opponent's Sedraxis Alchemist enter the battlefield, and he target the Ashiok.
But Ashiok go into graveyard instead return to my hand
When Hellhole Rats enters the battlefield, target player discards a card. Hellhole Rats deals damage to that player equal to that card's converted mana cost.
Ashiok, Nightmare Weaver is in the battlefield under my control.
then opponent's Hellhole rats enter the battlefield, and I discard another Ashiok.
but AI didn't deal damage to me, but Ashiok take damage and loses 3 counters.
2.Sedraxis Alchemist
When Sedraxis Alchemist enters the battlefield, if you control a blue permanent, return target nonland permanent to its owner's hand
Ashiok, Nightmare Weaver is in the battlefield under my control.
then opponent's Sedraxis Alchemist enter the battlefield, and he target the Ashiok.
But Ashiok go into graveyard instead return to my hand
Re: TFM&G2K's Planeswalkers Pool v8d (21/Aug/2014)
by thefiremind » 24 Aug 2014, 12:32
Same as Sulfurous Blast. Do you know how Planeswalkers work? Read the last paragraph from here.kr2033 wrote:1.Hellhole Rats
When Hellhole Rats enters the battlefield, target player discards a card. Hellhole Rats deals damage to that player equal to that card's converted mana cost.
Ashiok, Nightmare Weaver is in the battlefield under my control.
then opponent's Hellhole rats enter the battlefield, and I discard another Ashiok.
but AI didn't deal damage to me, but Ashiok take damage and loses 3 counters.
Try to bounce a Planeswalker from the battlefield to its owner's hand with another card. If it works, then the problem is in the Sedraxis Alchemist you are using.kr2033 wrote:2.Sedraxis Alchemist
When Sedraxis Alchemist enters the battlefield, if you control a blue permanent, return target nonland permanent to its owner's hand
Ashiok, Nightmare Weaver is in the battlefield under my control.
then opponent's Sedraxis Alchemist enter the battlefield, and he target the Ashiok.
But Ashiok go into graveyard instead return to my hand
< Former DotP 2012/2013/2014 modder >
Currently busy with life...
Currently busy with life...
-
thefiremind - Programmer
- Posts: 3515
- Joined: 07 Nov 2011, 10:55
- Has thanked: 118 times
- Been thanked: 722 times
Re: TFM&G2K's Planeswalkers Pool v8d (21/Aug/2014)
by kr2033 » 24 Aug 2014, 15:32
Hellhole Rats,Sulfurous Blast
I'm sorry, it was my ignorance
Sedraxis Alchemist
I test some of spells have bounce
Into the Roil,Disperse etc..
At least all spells I tested made same result like Sedraxis Alchemist.
Corretly Planeswalker is not go into owner's graveyard, but it look's like discarded.
I use(or oponent uses) bounce spell to Planeswalker on the battlefield and it goes into the graveyard with discard motion
I'm sorry, it was my ignorance
Sedraxis Alchemist
I test some of spells have bounce
Into the Roil,Disperse etc..
At least all spells I tested made same result like Sedraxis Alchemist.
Corretly Planeswalker is not go into owner's graveyard, but it look's like discarded.
I use(or oponent uses) bounce spell to Planeswalker on the battlefield and it goes into the graveyard with discard motion
Re: TFM&G2K's Planeswalkers Pool v8d (21/Aug/2014)
by gorem2k » 24 Aug 2014, 16:02
True, it goes to graveyard instead of hand.kr2033 wrote:Hellhole Rats,Sulfurous Blast
I'm sorry, it was my ignorance
Sedraxis Alchemist
I test some of spells have bounce
Into the Roil,Disperse etc..
At least all spells I tested made same result like Sedraxis Alchemist.
Corretly Planeswalker is not go into owner's graveyard, but it look's like discarded.
I use(or oponent uses) bounce spell to Planeswalker on the battlefield and it goes into the graveyard with discard motion
I think it's because the counters are removed while it bounce. Again another problem with the new COUNTERS_CHANGED.
doing some tests, I came up with this...
- | Open
- Code: Select all
<!-- 1. Planeswalker goes to the graveyard when it has no loyalty counters left -->
<TRIGGERED_ABILITY replacement_effect="1">
<COUNTER_REGISTRATION name="Loyalty" proliferate="11" />
<TRIGGER value="COUNTERS_CHANGED" simple_qualifier="objectyoucontrol">
return GetAmount() < 0 and CounterTypeIndex() == MTG():GetCountersType("Loyalty") and PLW_IsInNameSet( TriggerObject(), "PLANESWALKERS" )
</TRIGGER>
<TRIGGER value="ZONECHANGE_END" simple_qualifier="objectyoucontrol" to_zone="ZONE_BATTLEFIELD">
return PLW_IsInNameSet( TriggerObject(), "PLANESWALKERS" )
</TRIGGER>
<INTERVENING_IF>
local filter = ClearFilter()
filter:SetZone(ZONE_STACK)
return filter:CountStopAt(1) == 0
</INTERVENING_IF>
<RESOLUTION_TIME_ACTION>
if TriggerObject() ~= nil and TriggerObject():CountCounters( MTG():GetCountersType("Loyalty") ) == 0 then
TriggerObject():PutInGraveyard()
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
actually, this would be better:
- | Open
- Code: Select all
<!-- 1. Planeswalker goes to the graveyard when it has no loyalty counters left -->
<TRIGGERED_ABILITY replacement_effect="1">
<COUNTER_REGISTRATION name="Loyalty" proliferate="11" />
<TRIGGER value="COUNTERS_CHANGED" simple_qualifier="objectyoucontrol">
return GetAmount() < 0 and CounterTypeIndex() == MTG():GetCountersType("Loyalty") and PLW_IsInNameSet( TriggerObject(), "PLANESWALKERS" )
</TRIGGER>
<TRIGGER value="ZONECHANGE_END" simple_qualifier="objectyoucontrol" to_zone="ZONE_BATTLEFIELD">
return PLW_IsInNameSet( TriggerObject(), "PLANESWALKERS" )
</TRIGGER>
<RESOLUTION_TIME_ACTION>
if TriggerObject() ~= nil and TriggerObject():CountCounters( MTG():GetCountersType("Loyalty") ) == 0 then
local filter = ClearFilter()
filter:SetZone(ZONE_STACK)
if filter:CountStopAt(1) == 0 then
TriggerObject():PutInGraveyard()
end
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
Who is online
Users browsing this forum: No registered users and 11 guests