It is currently 28 Apr 2024, 07:19
   
Text Size

TFM&G2K's Planeswalkers Pool v8g (12/Sep/2014)

Moderator: CCGHQ Admins

Re: TFM&G2K's Planeswalkers Pool v8g (12/Sep/2014)

Postby Tejahn » 08 Nov 2014, 00:29

Thanks for the update fallenangel. And honestly, I created a token that uses thefiremind's Elf Warrior ArtID. Yet, I forgot to include it. Also, I don't know how to properly create art for Tokens. Any help tutoring me with Token creation would be awesome! I could actually go ahead and create the other Commander 2014 Planeswalkers. Again, thanks!
Tejahn
 
Posts: 430
Joined: 14 May 2013, 01:35
Has thanked: 25 times
Been thanked: 25 times

Re: TFM&G2K's Planeswalkers Pool v8g (12/Sep/2014)

Postby Xander9009 » 08 Nov 2014, 02:07

Tejahn wrote:Thanks for the update fallenangel. And honestly, I created a token that uses thefiremind's Elf Warrior ArtID. Yet, I forgot to include it. Also, I don't know how to properly create art for Tokens. Any help tutoring me with Token creation would be awesome! I could actually go ahead and create the other Commander 2014 Planeswalkers. Again, thanks!
https://drive.google.com/open?id=0B-cZn ... authuser=0
In that there are two images. Open one of the templates in paint. Open the token image in paint as well. Crop the token image and resize it so the image is the picture that should appear on the card and is exactly the dimensions in the name of the template. Copy the image to the template and line it up exactly with the black box. Save it as your token image. (I don't think you can change the templates, but if you can, please don't.)
_______________________________
Community Wad - Community Wad Website - How to Help and Report Bugs
Discord: discord.gg/4AXvHzW
User avatar
Xander9009
Programmer
 
Posts: 2905
Joined: 29 Jun 2013, 07:44
Location: Indiana, United States
Has thanked: 121 times
Been thanked: 445 times

Re: TFM&G2K's Planeswalkers Pool v8g (12/Sep/2014)

Postby Tejahn » 08 Nov 2014, 03:09

Thanks Xander9009! I'll definitely try these templates tonight. New Planeswalkers pending... :)
Tejahn
 
Posts: 430
Joined: 14 May 2013, 01:35
Has thanked: 25 times
Been thanked: 25 times

Re: TFM&G2K's Planeswalkers Pool v8g (12/Sep/2014)

Postby Kithkin » 08 Nov 2014, 09:47

When Magma Phoenix dies, Nissa, Worldwaker loses 3 loyalty counters. Is that according to the rules?
User avatar
Kithkin
 
Posts: 456
Joined: 21 Feb 2014, 07:12
Location: Cologne, GERMANY
Has thanked: 11 times
Been thanked: 56 times

Re: TFM&G2K's Planeswalkers Pool v8g (12/Sep/2014)

Postby thefiremind » 08 Nov 2014, 09:54

Kithkin wrote:When Magma Phoenix dies, Nissa, Worldwaker loses 3 loyalty counters. Is that according to the rules?
When Magma Phoenix dies, it deals 3 damage to each creature and each player. So Magma Phoenix's controller can decide to redirect the damage it would deal to his opponent to one of that opponent's Planeswalkers, as the rules state. You should notice that Nissa's controller won't take the damage (otherwise yes, there would be a problem).
< Former DotP 2012/2013/2014 modder >
Currently busy with life...
User avatar
thefiremind
Programmer
 
Posts: 3515
Joined: 07 Nov 2011, 10:55
Has thanked: 118 times
Been thanked: 721 times

Re: TFM&G2K's Planeswalkers Pool v8g (12/Sep/2014)

Postby Kithkin » 08 Nov 2014, 10:22

thefiremind wrote:
Kithkin wrote:When Magma Phoenix dies, Nissa, Worldwaker loses 3 loyalty counters. Is that according to the rules?
When Magma Phoenix dies, it deals 3 damage to each creature and each player. So Magma Phoenix's controller can decide to redirect the damage it would deal to his opponent to one of that opponent's Planeswalkers, as the rules state. You should notice that Nissa's controller won't take the damage (otherwise yes, there would be a problem).
Understood, thanks. Next time I will watch closely, if controller loses life.
User avatar
Kithkin
 
Posts: 456
Joined: 21 Feb 2014, 07:12
Location: Cologne, GERMANY
Has thanked: 11 times
Been thanked: 56 times

Re: TFM&G2K's Planeswalkers Pool v8g (12/Sep/2014)

Postby mr friendly guy » 09 Nov 2014, 07:10

Some more planeswalkers coming out.

https://www.youtube.com/watch?v=8V4nYRxG1G8

Includes Ob Nixilis (regaining his planeswalker spark), the Lithomancer (the third mage along with Sorin and Ugin who imprisoned the Eldrazi), a Goblin planeswalker, Freyalise (that one from Ice Age).
mr friendly guy
 
Posts: 85
Joined: 23 Aug 2013, 12:03
Has thanked: 2 times
Been thanked: 1 time

Re: TFM&G2K's Planeswalkers Pool v8g (12/Sep/2014)

Postby Parabolic » 09 Nov 2014, 12:54

mr friendly guy wrote:Some more planeswalkers coming out.

https://www.youtube.com/watch?v=8V4nYRxG1G8

Includes Ob Nixilis (regaining his planeswalker spark), the Lithomancer (the third mage along with Sorin and Ugin who imprisoned the Eldrazi), a Goblin planeswalker, Freyalise (that one from Ice Age).
Freyalise is already coded in and the others are pending, as per Tejahn.

Also, those Planeswalkers are already out in physical cards and have been known for even longer. Don't bother with youtube for spoilers. I recommend http://mythicspoiler.com/newspoilers.html
Parabolic
 
Posts: 74
Joined: 12 Jul 2013, 19:22
Has thanked: 10 times
Been thanked: 10 times

Re: TFM&G2K's Planeswalkers Pool v8g (12/Sep/2014)

Postby fallenangle » 10 Nov 2014, 15:36

Updated to include Ob Nixilis of the Black Oath and Nahiri, the Lithomancer, coded by me with some major help from NeoAnderson.
fallenangle
 
Posts: 319
Joined: 20 Jul 2013, 02:31
Has thanked: 73 times
Been thanked: 41 times

Re: TFM&G2K's Planeswalkers Pool v8g (12/Sep/2014)

Postby fallenangle » 12 Nov 2014, 03:09

Updated to include Daretti, Scrap Savant, coded by me. Thanks to Neo for checking my code and providing advice about rules compliance.
fallenangle
 
Posts: 319
Joined: 20 Jul 2013, 02:31
Has thanked: 73 times
Been thanked: 41 times

Re: TFM&G2K's Planeswalkers Pool v8g (12/Sep/2014)

Postby fallenangle » 14 Nov 2014, 04:10

Updated to include Teferi, Temporal Archmage. Updated PW manager to account for his ultimate. Updated all PW abilities' availability and AI availability tags to make his ultimate possible. HUGE thanks to Xander9009 for coming up with the code for his ultimate and for automating the process of updating planeswalkers' abilities to be compliant with it. Teferi would not be possible without his hard work and kind assistance. Thanks also are due to thefiremind, Riiak, and Neo for their advice on the matter of Teferi's ultimate. Enjoy!
fallenangle
 
Posts: 319
Joined: 20 Jul 2013, 02:31
Has thanked: 73 times
Been thanked: 41 times

Re: TFM&G2K's Planeswalkers Pool v8g (12/Sep/2014)

Postby NeoAnderson » 14 Nov 2014, 14:33

I was looking to the planeswalkers manager code, to try to understand why the game performance slow down so much when we play with planeswalkers.
I found that the most resources are used from the follow ability

Targetting override | Open
Code: Select all
  <!-- 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>
I tested the game without this override trigger and the game works without any lag.
So i was thinking if we change the trigger into a static protection action, does it could create any issue? I think could be a good performance improvement.
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: TFM&G2K's Planeswalkers Pool v8g (12/Sep/2014)

Postby fallenangle » 14 Nov 2014, 20:28

Updated all the PLWs and Teferi again to make them work better when the AI uses them. Big thanks are again due to Xander for his help in working on these and automating the changes necessary for the Availability blocks. Also updated Teferi's second ability so it works like Nissa Worldwaker's second (but with permanents rather than Forests!).

On a final note I should mention that this version is for the moment not compatible with Neo's Graphics mod update, which uses an older version of the Wad that predates Teferi. Neo can't really be blamed for this since the changes to Teferi have been so recent, but it's something worth noting.
fallenangle
 
Posts: 319
Joined: 20 Jul 2013, 02:31
Has thanked: 73 times
Been thanked: 41 times

Re: TFM&G2K's Planeswalkers Pool v8g (12/Sep/2014)

Postby Xander9009 » 14 Nov 2014, 21:00

NeoAnderson wrote:I was looking to the planeswalkers manager code, to try to understand why the game performance slow down so much when we play with planeswalkers.
I found that the most resources are used from the follow ability

Targetting override | Open
Code: Select all
  <!-- 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>
I tested the game without this override trigger and the game works without any lag.
So i was thinking if we change the trigger into a static protection action, does it could create any issue? I think could be a good performance improvement.
Oh, please, yes!

Code: Select all
  <!-- 7. Cards not allowed to target Planeswalkers -->
  <STATIC_ABILITY>
    <FILTER filter_id="0">
         local filter = ClearFilter()
         filter:Add( FE_CONTROLLER, OP_IS, EffectController() )
         PLW_FilterNameSet(filter, "PLANESWALKERS", true)
      </FILTER>
    <CONTINUOUS_ACTION layer="0" filter_id="0">
      if FilteredCard() ~= nil then
        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 FilteredCard():GetZone() ~= ZONE_BATTLEFIELD and PLW_IsInNameSet(FilteredCard(), "PLANESWALKERS") then
          filter = ClearFilter()
          PLW_FilterNameSet(filter, "TARGET_ENCHANTMENTS_NOT_CREATURES", true)
          if FilteredCard():GetCardType():Test(CARD_TYPE_CREATURE) == false then
            PLW_FilterNameSet(filter, "TARGET_ENCHANTMENTS_AND_CREATURES", true)
          end
          FilteredCard():Protection()
        end
      end
    </CONTINUOUS_ACTION>
  </STATIC_ABILITY>
Starting point, at least?

EDIT: Well, no luck. This ability slows it down all the time instead of just when zoomed into cards and stuff. (Also, I forgot the closing slash in the </STATIC_ABILITY>).

One way we might be able to speed it up is to use either the static or triggered ability, but instead of using the PLANESWALKERS, TARGET_ENCHANTMENTS_NOT_CREATURES, and TARGET_ENCHANTMENTS_AND_CREATURES lists, use those lists to create shorter lists of only the cards which actually exist within the current duel. With shorter lists, it should be able to run a bit faster. You could put the lists in object dc chests within each player's planeswalker manager.
Last edited by Xander9009 on 14 Nov 2014, 21:22, edited 1 time in total.
_______________________________
Community Wad - Community Wad Website - How to Help and Report Bugs
Discord: discord.gg/4AXvHzW
User avatar
Xander9009
Programmer
 
Posts: 2905
Joined: 29 Jun 2013, 07:44
Location: Indiana, United States
Has thanked: 121 times
Been thanked: 445 times

Re: TFM&G2K's Planeswalkers Pool v8g (12/Sep/2014)

Postby NeoAnderson » 14 Nov 2014, 21:17

Xander9009 wrote:
NeoAnderson wrote:I was looking to the planeswalkers manager code, to try to understand why the game performance slow down so much when we play with planeswalkers.
I found that the most resources are used from the follow ability

Targetting override | Open
Code: Select all
  <!-- 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>
I tested the game without this override trigger and the game works without any lag.
So i was thinking if we change the trigger into a static protection action, does it could create any issue? I think could be a good performance improvement.
Oh, please, yes!

Code: Select all
  <!-- 7. Cards not allowed to target Planeswalkers -->
  <STATIC_ABILITY>
    <FILTER filter_id="0">
         local filter = ClearFilter()
         filter:Add( FE_CONTROLLER, OP_IS, EffectController() )
         PLW_FilterNameSet(filter, "PLANESWALKERS", true)
      </FILTER>
    <CONTINUOUS_ACTION layer="0" filter_id="0">
      if FilteredCard() ~= nil then
        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 FilteredCard():GetZone() ~= ZONE_BATTLEFIELD and PLW_IsInNameSet(FilteredCard(), "PLANESWALKERS") then
          filter = ClearFilter()
          PLW_FilterNameSet(filter, "TARGET_ENCHANTMENTS_NOT_CREATURES", true)
          if FilteredCard():GetCardType():Test(CARD_TYPE_CREATURE) == false then
            PLW_FilterNameSet(filter, "TARGET_ENCHANTMENTS_AND_CREATURES", true)
          end
          FilteredCard():Protection()
        end
      end
    </CONTINUOUS_ACTION>
  <STATIC_ABILITY>
Starting point, at least?
Xander now i am revising the frame pictures, I will check when finished how to revert this trigger into a protection.
Anyway the concept is simple we need to add FE_CARD_NAME for each spell included into listed cards that can target enchantments, then we need to protect the planeswalkers.
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

PreviousNext

Return to 2014

Who is online

Users browsing this forum: No registered users and 38 guests


Who is online

In total there are 38 users online :: 0 registered, 0 hidden and 38 guests (based on users active over the past 10 minutes)
Most users ever online was 4143 on 23 Jan 2024, 08:21

Users browsing this forum: No registered users and 38 guests

Login Form