Page 10 of 38

Re: Volrathxp's Custom Dotp 2014 DLC (Last Update: 8/27/2014

PostPosted: 27 Aug 2014, 20:33
by gorem2k
thefiremind wrote:Now, I can't think of a scenario where waiting before responding till the trigger of a specific instance of dethrone can be beneficial, so I guess it's okay to use STACK_EQUIVALENCE, but I wanted to note that modders should think about what possibilities they take away from the players when adding a simplification like this. :)
Yes I thought about that as well, and I made sure not to do that on Constellation creatures. btw, a little off-topic, I have some doubts with Skybind; it says exile "nonenchantment permanent". can you confirm this:

| Open
Code: Select all
    <TARGET_DEFINITION id="0">
    local filter = ClearFilter()
    filter:Set_Or()
    PLW_FilterNameSet(filter, "PLANESWALKERS", true)
    local subFilter = filter:AddSubFilter_And()
       subFilter:Add( FE_TYPE, OP_NOT, CARD_TYPE_ENCHANTMENT )
       subFilter:Add( FE_TYPE, OP_IS, CARD_TYPE_LAND )
    local secondSubFilter = filter:AddSubFilter_And()
       secondSubFilter:Add( FE_TYPE, OP_NOT, CARD_TYPE_ENCHANTMENT )
       secondSubFilter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
    local thirdSubFilter = filter:AddSubFilter_And()
       thirdSubFilter:Add( FE_TYPE, OP_NOT, CARD_TYPE_ENCHANTMENT )
       thirdSubFilter:Add( FE_TYPE, OP_IS, CARD_TYPE_ARTIFACT )
    </TARGET_DEFINITION>
is a proper way to filter ? because "Creature Enchantment" are Enchantment but when I only filter with OP_NOT Enchantment, these creature are still available for target. And I don't want them to be the case...

This question might also help VXP for her/his Constellation cards.

Re: Volrathxp's Custom Dotp 2014 DLC (Last Update: 8/27/2014

PostPosted: 27 Aug 2014, 20:40
by NeoAnderson
gorem2k wrote:
thefiremind wrote:Now, I can't think of a scenario where waiting before responding till the trigger of a specific instance of dethrone can be beneficial, so I guess it's okay to use STACK_EQUIVALENCE, but I wanted to note that modders should think about what possibilities they take away from the players when adding a simplification like this. :)
Yes I thought about that as well, and I made sure not to do that on Constellation creatures. btw, a little off-topic, I have some doubts with Skybind; it says exile "nonenchantment permanent". can you confirm this:

| Open
Code: Select all
    <TARGET_DEFINITION id="0">
    local filter = ClearFilter()
    filter:Set_Or()
    PLW_FilterNameSet(filter, "PLANESWALKERS", true)
    local subFilter = filter:AddSubFilter_And()
       subFilter:Add( FE_TYPE, OP_NOT, CARD_TYPE_ENCHANTMENT )
       subFilter:Add( FE_TYPE, OP_IS, CARD_TYPE_LAND )
    local secondSubFilter = filter:AddSubFilter_And()
       secondSubFilter:Add( FE_TYPE, OP_NOT, CARD_TYPE_ENCHANTMENT )
       secondSubFilter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
    local thirdSubFilter = filter:AddSubFilter_And()
       thirdSubFilter:Add( FE_TYPE, OP_NOT, CARD_TYPE_ENCHANTMENT )
       thirdSubFilter:Add( FE_TYPE, OP_IS, CARD_TYPE_ARTIFACT )
    </TARGET_DEFINITION>
is a proper way to filter ? because "Creature Enchantment" are Enchantment but when I only filter with OP_NOT Enchantment, these creature are still available for target. And I don't want them to be the case...

This question might also help VXP for her/his Constellation cards.
Hi my friend i already made it and i used the follow filter :
Code: Select all
   <TARGET_DEFINITION id="0">
     local filter = ClearFilter()
          filter:Add( FE_TYPE, OP_NOT, CARD_TYPE_ENCHANTMENT )
          local subfilter = filter:AddSubFilter_Or()
                  subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_ARTIFACT )
              subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
             subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_LAND )
             subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_PLANESWALKER )
    </TARGET_DEFINITION>
ANyway i just finished to code all Journey to Nyx set, i will upload it soon.

Re: Volrathxp's Custom Dotp 2014 DLC (Last Update: 8/27/2014

PostPosted: 27 Aug 2014, 20:44
by gorem2k
NeoAnderson wrote:Hi my friend i already made it and i used the follow filter :
Code: Select all
   <TARGET_DEFINITION id="0">
     local filter = ClearFilter()
          filter:Add( FE_TYPE, OP_NOT, CARD_TYPE_ENCHANTMENT )
          local subfilter = filter:AddSubFilter_Or()
                  subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_ARTIFACT )
              subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
             subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_LAND )
             subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_PLANESWALKER )
    </TARGET_DEFINITION>
Does your "Creature Enchantment" can be targeted with this? I tried the exact same you wrote here and I could exile Agent of Erebos.

Oh wait, I had filter:Set_Or() and yours don't. Yes, well thanks it works now! I mean it's ok for Creature Enchantments but definitely not for our Planeswalkers. That's the tricky part, these are Enchantment but are not supposed to be.

Re: Volrathxp's Custom Dotp 2014 DLC (Last Update: 8/27/2014

PostPosted: 27 Aug 2014, 21:37
by volrathxp
I wil update Skybindto fix, I never noticed this while testing it.

Re: Volrathxp's Custom Dotp 2014 DLC (Last Update: 8/27/2014

PostPosted: 27 Aug 2014, 21:58
by NeoAnderson
volrathxp wrote:I wil update Skybindto fix, I never noticed this while testing it.
Wait volrathxp i have found a solution but i'm still refining it.Give me 15 minutes to make some tests.

Re: Volrathxp's Custom Dotp 2014 DLC (Last Update: 8/27/2014

PostPosted: 27 Aug 2014, 22:16
by NeoAnderson
gorem2k wrote:
NeoAnderson wrote:Hi my friend i already made it and i used the follow filter :
Old Code | Open
Code: Select all
   <TARGET_DEFINITION id="0">
     local filter = ClearFilter()
          filter:Add( FE_TYPE, OP_NOT, CARD_TYPE_ENCHANTMENT )
          local subfilter = filter:AddSubFilter_Or()
                  subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_ARTIFACT )
              subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
             subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_LAND )
             subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_PLANESWALKER )
    </TARGET_DEFINITION>
Does your "Creature Enchantment" can be targeted with this? I tried the exact same you wrote here and I could exile Agent of Erebos.
Oh wait, I had filter:Set_Or() and yours don't. Yes, well thanks it works now! I mean it's ok for Creature Enchantments but definitely not for our Planeswalkers. That's the tricky part, these are Enchantment but are not supposed to be.
OK I think I have resolved the issue with community planeswalkers approximation, but at this point i have to revise all "Constellation" cards!!! #-o
Anyway to target a non-enchantment permanent (inluding planeswalkers) You have to use the follow block :
Code: Select all
   <TARGET tag="CARD_QUERY_CHOOSE_CREATURE_TO_EXILE" definition="0" compartment="0" count="1" />
   <TARGET_DEFINITION id="0">
     local chest = EffectDC():Make_Chest(1)
     chest:Set_Int(0, 0)
     local index = chest:Get_Int(0)
     local filter = ClearFilter()
     local subfilter = filter:AddSubFilter_Or()
     if PLW_FilterNameSet ~= nil then
        PLW_FilterNameSet(subfilter, "PLANESWALKERS", true)
     else
     subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_PLANESWALKER)
     end
     local filter_count = filter:EvaluateObjects()
     for i=0,filter_count-1 do
         local permanent = filter:GetNthEvaluatedObject(i)
         if permanent ~= nil then
            index = index + 1
            chest:Set_CardPtr(index, permanent)
            chest:Set_Int(0, index)
         end
     end
     filter = ClearFilter()
     filter:Add( FE_TYPE, OP_NOT, CARD_TYPE_ENCHANTMENT )
           subfilter = filter:AddSubFilter_Or()
           subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_ARTIFACT )
           subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
           subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_LAND )
           subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_PLANESWALKER )
     filter_count = filter:EvaluateObjects()
     for i=0,filter_count-1 do
            permanent = filter:GetNthEvaluatedObject(i)
         if permanent ~= nil then
            index = index + 1
            chest:Set_CardPtr(index, permanent)
            chest:Set_Int(0, index)
         end
     end
     filter = ClearFilter()
     index = chest:Get_Int(0)
     for i=1,index do
           permanent = chest:Get_CardPtr(i)
         if permanent ~= nil then
            permanent:MarkForFilter()
         end
     end
     filter:SetMarkedObjectsOnly()
    </TARGET_DEFINITION>
At this point there is another issue to fix and is about the Constellation trigger you need to revise the condition as the follow (otherwise it will trigger also when you a planeswalker enters on the battlefield)
Code: Select all
<TRIGGER value="ZONECHANGE_END" simple_qualifier="objectyoucontrol" to_zone="ZONE_BATTLEFIELD" from_zone="ZONE_ANY">
  if TriggerObject():GetCardType():Test( CARD_TYPE_ENCHANTMENT ) == true then
    local filter = ClearFilter()
     local subfilter = filter:AddSubFilter_Or()
     if PLW_FilterNameSet ~= nil then
        PLW_FilterNameSet(subfilter, "PLANESWALKERS", true)
     else
     subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_PLANESWALKER)
     end
     local filter_count = filter:EvaluateObjects()
     for i=0,filter_count-1 do
         local permanent = filter:GetNthEvaluatedObject(i)
         if permanent ~= nil then
            if permanent:GetCardName() ==  TriggerObject():GetCardName() then
               return false
            end
         end
     end
     return true
  end
</TRIGGER>

Re: Volrathxp's Custom Dotp 2014 DLC (Last Update: 8/27/2014

PostPosted: 27 Aug 2014, 23:04
by thefiremind
I'm pretty sure there must be a shorter way... the logic behind what we want is:
(artifact or creature or land or planeswalker) and ((not enchantment) or belonging_to_planeswalker_nameset)
I think we can put this condition into a filter without the need for loops, maybe something like this?
Filter for non-enchantment permanents "PLW-compatible" (untested) | Open
Code: Select all
    local filter = ClearFilter()
    local subFilter1 = filter:AddSubFilter_Or()
    subFilter1:Add(FE_TYPE, OP_IS, CARD_TYPE_ARTIFACT)
    subFilter1:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
    subFilter1:Add(FE_TYPE, OP_IS, CARD_TYPE_LAND)
    subFilter1:Add(FE_TYPE, OP_IS, CARD_TYPE_PLANESWALKER)
    local subFilter2 = filter:AddSubFilter_Or()
    subFilter2:Add(FE_TYPE, OP_NOT, CARD_TYPE_ENCHANTMENT)
    if PLW_FilterNameSet ~= nil then
       PLW_FilterNameSet(subFilter2, "PLANESWALKERS", true)
    end
This will fail with Enchanted Evening, though, because it will still count Planeswalkers as non-enchantments.

Re: Volrathxp's Custom Dotp 2014 DLC (Last Update: 8/27/2014

PostPosted: 27 Aug 2014, 23:10
by gorem2k
and, this replace your trigger

Code: Select all
    <TRIGGER value="ZONECHANGE_END" simple_qualifier="objectyoucontrol" to_zone="ZONE_BATTLEFIELD" from_zone="ZONE_ANY">
    return TriggerObject():GetCardType():Test( CARD_TYPE_ENCHANTMENT ) and PLW_IsInNameSet( TriggerObject(), "PLANESWALKERS" ) == false
    </TRIGGER>
note: add a check for PLW_IsInNameSet ~= nil and an else, if you want to avoid SCRIPT_LOG file


PLW_IsInNameSet is there, better use it :D

Anyway you can also take a look inside my side project MOD I've added every Constellation (I took them from VXP) decrompressed many tdx and photoshop them, they're all compatible with planeswalkers. Although I don't have many testers for now, people are busy testing/playing recent sets and cool stuff.

Re: Volrathxp's Custom Dotp 2014 DLC (Last Update: 8/27/2014

PostPosted: 27 Aug 2014, 23:15
by gorem2k
thefiremind wrote:This will fail with Enchanted Evening, though, because it will still count Planeswalkers as non-enchantments.
I gave up Enchanted Evening because it cause too many problems.

thefiremind wrote:Filter for non-enchantment permanents "PLW-compatible" (untested)
It works, I will use it.

Re: Volrathxp's Custom Dotp 2014 DLC (Last Update: 8/27/2014

PostPosted: 27 Aug 2014, 23:31
by NeoAnderson
gorem2k wrote:and, this replace your trigger

Code: Select all
    <TRIGGER value="ZONECHANGE_END" simple_qualifier="objectyoucontrol" to_zone="ZONE_BATTLEFIELD" from_zone="ZONE_ANY">
    return TriggerObject():GetCardType():Test( CARD_TYPE_ENCHANTMENT ) and PLW_IsInNameSet( TriggerObject(), "PLANESWALKERS" ) == false
    </TRIGGER>
note: add a check for PLW_IsInNameSet ~= nil and an else, if you want to avoid SCRIPT_LOG file


PLW_IsInNameSet is there, better use it :D

Anyway you can also take a look inside my side project MOD I've added every Constellation (I took them from VXP) decrompressed many tdx and photoshop them, they're all compatible with planeswalkers. Although I don't have many testers for now, people are busy testing/playing recent sets and cool stuff.
Thanks my friend but i already coded all the Journey Into Nyx SET, i just uploaded it, i was not thinking about planeswalker issue because i don't use them.
I have short tested constellation cards with the trigger and target i posted above and i haven't received any script_log, but i just use 1 planeswalker to test it. (It doesn't trigger when the planeswalker enters or leave the battlefield, and it is targetable).
Anyway i will make some more test and then i decide if modify or not these cards!
Here you can find : The whole Journey into Nyx Set : http://www.slightlymagic.net/forum/viewtopic.php?f=109&t=15144
Just 4 cards are not coded :
Card i think can't be code : Oppressive Rays - Battlefield Thaumaturge - Worst Fears
Card not coded (Planeswalker) : Ajani, Mentor of Heroes

About the Artworks, i made always deep internet search to find good artworks, and if i can't find high res one i improve them with Photoshop!

Re: Volrathxp's Custom Dotp 2014 DLC (Last Update: 8/25/2014

PostPosted: 28 Aug 2014, 00:35
by RiiakShiNal
volrathxp wrote:I am about to update everything so I will fix this. I'm still not sure what's going on with Broodmaster.
You have:
Code: Select all
 local x = EffectSource():GetInt(1)
You should have:
Code: Select all
 local x = EffectSource():Get_Int(1)

Re: Volrathxp's Custom Dotp 2014 DLC (Last Update: 8/25/2014

PostPosted: 28 Aug 2014, 01:17
by volrathxp
RiiakShiNal wrote:
volrathxp wrote:I am about to update everything so I will fix this. I'm still not sure what's going on with Broodmaster.
You have:
Code: Select all
 local x = EffectSource():GetInt(1)
You should have:
Code: Select all
 local x = EffectSource():Get_Int(1)
Thanks, I actually got it working earlier today while I was on my break at work. ^_^

Re: Volrathxp's Custom Dotp 2014 DLC (Last Update: 8/27/2014

PostPosted: 28 Aug 2014, 01:22
by volrathxp
gorem2k wrote:and, this replace your trigger

Code: Select all
    <TRIGGER value="ZONECHANGE_END" simple_qualifier="objectyoucontrol" to_zone="ZONE_BATTLEFIELD" from_zone="ZONE_ANY">
    return TriggerObject():GetCardType():Test( CARD_TYPE_ENCHANTMENT ) and PLW_IsInNameSet( TriggerObject(), "PLANESWALKERS" ) == false
    </TRIGGER>
note: add a check for PLW_IsInNameSet ~= nil and an else, if you want to avoid SCRIPT_LOG file


PLW_IsInNameSet is there, better use it :D

Anyway you can also take a look inside my side project MOD I've added every Constellation (I took them from VXP) decrompressed many tdx and photoshop them, they're all compatible with planeswalkers. Although I don't have many testers for now, people are busy testing/playing recent sets and cool stuff.
So I go away for like... a few hours and my thread explodes lol.

I'm going to update all the constellation cards with the planeswalker friendly code, and then post another update. Won't take me that long. :)

Re: Volrathxp's Custom Dotp 2014 DLC (Last Update: 8/27/2014

PostPosted: 28 Aug 2014, 01:41
by volrathxp
Alright, so I fixed all the constellation cards. Untested, so let me know if you have problems. Blame gore if you have troubles. J/K. :)

Core wad updated, Hydra Broodmaster FINALLY FIXED. NO MORE PROBLEMS WITH THAT GUY. NO MORE. :evil:

Re: Volrathxp's Custom Dotp 2014 DLC (Last Update: 8/28/2014

PostPosted: 29 Aug 2014, 00:09
by volrathxp
Just made a big update. Have fun. Read the changelog. :)