It is currently 07 Sep 2025, 22:53
   
Text Size

Planeswalker's Complementary Set [MOD]

Moderator: CCGHQ Admins

Re: gorem2k mod

Postby gorem2k » 17 Aug 2013, 20:29

thefiremind wrote:EDIT: OK, here's what I came up with. Feel free to test it, modify it, use it in your mod as if it were yours. I hope you'll find it useful. The WAD contains a test deck called PWL TEST which contains my "test-quickening" card Leyline of Deity. Note that I coded Nissa Revane as a test, but not Nissa's Chosen, anyway making it shouldn't be a big deal. :wink:

EDIT 2: I was using Basic Enchantment for Planeswalkers on the battlefield and I was correctly overriding the official localised text for it, but I just installed the game update and it seems I can't anymore. You may want to change it to Basic Snow Enchantment or something else (avoid Legendary because the token already takes care of the rule).
I can't see the planeswalkers in game... just in deck manager.

Image

EDIT:oops maybe I should remove my wad first! ;) wait..

EDIT2:nope. planeswalker don't show up.
gorem2k
 
Posts: 464
Joined: 01 Apr 2013, 04:21
Has thanked: 48 times
Been thanked: 33 times

Re: gorem2k mod

Postby thefiremind » 17 Aug 2013, 20:40

I can see them fine even after removing all mods from my game directory except for this WAD, so I haven't forgot any dependency. Try to temporarily move away all the mods, too.
< 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: 722 times

Re: gorem2k mod

Postby gorem2k » 17 Aug 2013, 20:45

thefiremind wrote:I can see them fine even after removing all mods from my game directory except for this WAD, so I haven't forgot any dependency. Try to temporarily move away all the mods, too.
It's so well-organized and clean ... I will have to start from scratch everything ! :shock:

the problem is they aren't shown in the opening hand (mulligan step) after that they are shown, I'm trying them now.

EDIT: nope, nissa got stuck in mid-air when I played it lol.

I would like to know if other here reading this can test.....
Last edited by gorem2k on 17 Aug 2013, 20:47, edited 1 time in total.
gorem2k
 
Posts: 464
Joined: 01 Apr 2013, 04:21
Has thanked: 48 times
Been thanked: 33 times

Re: gorem2k mod

Postby East Bay » 17 Aug 2013, 20:47

thefiremind wrote:I can see them fine even after removing all mods from my game directory except for this WAD, so I haven't forgot any dependency. Try to temporarily move away all the mods, too.
Yeah I can't see them in the hand either.
User avatar
East Bay
 
Posts: 85
Joined: 17 Mar 2013, 02:05
Has thanked: 33 times
Been thanked: 30 times

Re: gorem2k mod

Postby thefiremind » 17 Aug 2013, 21:20

But then how can something work only for me if it still works even after I move away all the other unofficial WADs? That's a real mystery... :-k

EDIT: OK, if I delete my profile I get the same problem. So, I'm guessing that some information was saved to my profile back when I was still using Basic Enchantment in all zones, and it made my Planeswalkers still usable after giving them their real type. Weird... but I'm afraid this means that Tarmogoyf will have to be happy with 1 less type. Unless the problem goes away just by adding another type... this would mean we could make Basic Enchantment (or another combination) Planeswalker cards that lose the Planeswalker type when entering the battlefield. It needs to be tested. I'll go on with the tests tomorrow, though.
Last edited by thefiremind on 17 Aug 2013, 21:29, edited 1 time in total.
< 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: 722 times

Re: gorem2k mod

Postby gorem2k » 17 Aug 2013, 21:29

East Bay wrote:I gave Tezzeret, Agent of Bolas a shot to try things out he seems ok to me but I dont really know what im looking for when testing this.
I've just tried it and it plays flawlessly! well done :D
gorem2k
 
Posts: 464
Joined: 01 Apr 2013, 04:21
Has thanked: 48 times
Been thanked: 33 times

Re: gorem2k mod

Postby gorem2k » 17 Aug 2013, 21:35

thefiremind wrote:But then how can something work only for me if it still works even after I move away all the other unofficial WADs? That's a real mystery... :-k

EDIT: OK, if I delete my profile I get the same problem. So, I'm guessing that some information was saved to my profile back when I was still using Basic Enchantment in all zones, and it made my Planeswalkers still usable after giving them their real type. Weird... but I'm afraid this means that Tarmogoyf will have to be happy with 1 less type. Unless the problem goes away just by adding another type... this would mean we could make Basic Enchantment (or another combination) Planeswalker cards that lose the Planeswalker type when entering the battlefield. It needs to be tested. I'll go on with the tests tomorrow, though.
I can't wait to see!! the damage redirection looks more accurate and the declare attacker step too. for the invisible token, have you thought about board wipes ? about your lol, things like arrays are a bit too much for me, no C++ experience, just quickbasic so I don't get everything ! :lol:
gorem2k
 
Posts: 464
Joined: 01 Apr 2013, 04:21
Has thanked: 48 times
Been thanked: 33 times

Re: gorem2k mod

Postby thefiremind » 17 Aug 2013, 22:10

gorem2k wrote:for the invisible token, have you thought about board wipes ?
The invisible token has no types (that's how you make it invisible) so it can't be wiped, unless there's a card that destroys/exiles all permanents and it's carelessly coded. For a good modding experience, permanents should be filtered with all their possible types: FE_IS_PERMANENT doesn't do that automatically (which makes it the most useless filter ever).

gorem2k wrote:about your lol, things like arrays are a bit too much for me, no C++ experience, just quickbasic so I don't get everything ! :lol:
Don't think of them as arrays, think of them as lists. There's really not much difference between your implementation of the "exceptions" and mine: instead of "do something with A, do something with B, do something with C" I prefer "T = { A, B, C }; for i=1,3 do something with T[i]", which is easier to edit and shorter to write once the list elements grow in number.
< 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: 722 times

Re: gorem2k mod

Postby kevlahnota » 18 Aug 2013, 01:55

I think the Original Devs follows the rule regarding a permanent.

    A permanent is an object in play. Permanents are typically at least one (and possibly more) of the following:

  • Artifact
  • Creature
  • Enchantment
  • Land
  • Planeswalker

    A permanent need not necessarily be one of the above types. There are circumstances, such as using Neurok Transmuter ability to remove the artifact type from an artifact being animated by March of the Machines, in which a permanent can be completely typeless.

    A permanent is any card or token in the in-play zone.

So even an Object in the "in-play" zone (battlefield) doesn't have any type, it is considered a permanent.

That is why we can safely conclude that the FE_IS_PERMANENT filter considers all permanent in the battlefield, may it be a token or a card and not necessarily have a type.
User avatar
kevlahnota
Programmer
 
Posts: 825
Joined: 19 Jul 2010, 17:45
Location: Philippines
Has thanked: 14 times
Been thanked: 264 times

Re: gorem2k mod

Postby RiiakShiNal » 18 Aug 2013, 02:34

kevlahnota wrote:I think the Original Devs follows the rule regarding a permanent.

    A permanent is an object in play. Permanents are typically at least one (and possibly more) of the following:

  • Artifact
  • Creature
  • Enchantment
  • Land
  • Planeswalker

    A permanent need not necessarily be one of the above types. There are circumstances, such as using Neurok Transmuter ability to remove the artifact type from an artifact being animated by March of the Machines, in which a permanent can be completely typeless.

    A permanent is any card or token in the in-play zone.

So even an Object in the "in-play" zone (battlefield) doesn't have any type, it is considered a permanent.

That is why we can safely conclude that the FE_IS_PERMANENT filter considers all permanent in the battlefield, may it be a token or a card and not necessarily have a type.
Actually, the rules are:
110.4. There are five permanent types: artifact, creature, enchantment, land, and planeswalker. Instant and sorcery cards can't enter the battlefield and thus can't be permanents. Some tribal cards can enter the battlefield and some can't, depending on their other card types. See section 3, "Card Types."

110.4a The term "permanent card" is used to refer to a card that could be put onto the battlefield. Specifically, it means an artifact, creature, enchantment, land, or planeswalker card.
110.4b The term "permanent spell" is used to refer to a spell that will enter the battlefield as a permanent as part of its resolution. Specifically, it means an artifact, creature, enchantment, or planeswalker spell.
110.4c If a permanent somehow loses all its permanent types, it remains on the battlefield. It's still a permanent.
110.4, 110.4a, & 110.4b limits permanents to only Artifact, Creature, Enchantment, Land, and/or Planeswalker.

110.4c states that if a permanent loses its types it should still be considered a permanent, it does not state that something on the battlefield that has never had a permanent type is a permanent. Granted, in paper magic this doesn't happen because such cards don't exist, but paper magic also allows for a mana pool, actual working planeswalkers, and does not need workarounds for common card abilities.

So FE_IS_PERMANENT still does not work according to the rules (it doesn't filter out some cards that it should filter out) and for all intents and purposes is still virtually useless.

A good test to do to see if the devs actually considered the rule would be to remove all types from a permanent and see if it becomes invisible like our invisible tokens. If it does become invisible, then they didn't really consider the rule and were probably just being lazy.
RiiakShiNal
Programmer
 
Posts: 2188
Joined: 16 May 2011, 21:37
Has thanked: 75 times
Been thanked: 497 times

Re: gorem2k mod

Postby gorem2k » 18 Aug 2013, 02:43

Basically, we would need another FE like FE_IS_ENTITY that would be everything in zone battlefield and FE_IS_PERMANENT should only consider cards with actual types that stays..
gorem2k
 
Posts: 464
Joined: 01 Apr 2013, 04:21
Has thanked: 48 times
Been thanked: 33 times

Re: gorem2k mod

Postby RiiakShiNal » 18 Aug 2013, 03:00

gorem2k wrote:Basically, we would need another FE like FE_IS_ENTITY that would be everything in zone battlefield and FE_IS_PERMANENT should only consider cards with actual types that stays..
We can already get everything on the battlefield by simply omitting FE_IS_PERMANENT altogether (why add an extra filter when it is unnecessary and filters out nothing from the zone). The filter zone by default is the battlefield, but if you want to declare the zone you can.
Code: Select all
local filter = ClearFilter()
filter:SetZone( ZONE_BATTLEFIELD )
Code: Select all
local filter = ClearFilter()
filter:SetZone( ZONE_BATTLEFIELD )
filter:Add( FE_IS_PERMANENT, true )
The above 2 code blocks produce identical results given the current engine, as such FE_IS_PERMANENT only makes sense when searching/filtering other zones where you can have Instants and Sorceries mixed in. We also don't have invisible tokens in other zones.
RiiakShiNal
Programmer
 
Posts: 2188
Joined: 16 May 2011, 21:37
Has thanked: 75 times
Been thanked: 497 times

Re: gorem2k mod

Postby gorem2k » 18 Aug 2013, 03:32

RiiakShiNal wrote:We can already get everything on the battlefield by simply omitting FE_IS_PERMANENT altogether (why add an extra filter when it is unnecessary and filters out nothing from the zone).
This filter is only "useful" for saving one or two lines of code. we can write FE_ blabla OP_NOT sorcery and instant , to replace FE_IS_PERMANENT, true. I guess it's just to save those two lines.
gorem2k
 
Posts: 464
Joined: 01 Apr 2013, 04:21
Has thanked: 48 times
Been thanked: 33 times

Re: gorem2k mod

Postby thefiremind » 18 Aug 2013, 09:02

It seems I was right: giving Planeswalkers another type (Enchantment) is enough to make them behave properly outside of the battlefield. Here is version 2. Of course Tarmogoyf will still be a bit off, since the Planeswalkers will count both as Planeswalker and Enchantment. But I think there's no way out from this: you'll need a customized Tarmogoyf for a nice interaction with the Planeswalkers.
< 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: 722 times

Re: gorem2k mod

Postby gorem2k » 18 Aug 2013, 11:25

thefiremind wrote:Here is version 2.
Amazing!!!

You have to tell me why you don't put this in your mod? I mean, this is lots of your ingredients. Isn't it good enough ?

The only thing I like a bit better in my mod is when AI attacks a Planeswalker, for each of them, the card gets zoomed and we see how many counters remain. this sometimes useful when there's 6 or more counters that looks like a thick red line.

Overall, I'm very impressed.

EDIT: in _PLANESWALKER_MANAGER

Code: Select all
    <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
          target:RemoveCounters( MTG():GetCountersType("Loyalty"), Damage():GetAmount() )

        -- zoom in  target please  [-o<  this will be A-1

       end
       Damage():RedirectAllTo(target)
       return true
    end
    return false
    </TRIGGER>
maybe here : ?

Code: Select all
    <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 then
          defending:SetCustomQueryInstructionCardPtr(target)
          defending:BeginNewMultipleChoice()
          defending:AddMultipleChoiceAnswer("CONTROL_MB_CONFIRM")
          defending:AskMultipleChoiceQuestion( "PLW_CARD_QUERY_ATTACKED_PLANESWALKER", TriggerObject() )
       end
    end
    </RESOLUTION_TIME_ACTION>
It's good to see the name but could you show the card as well?
gorem2k
 
Posts: 464
Joined: 01 Apr 2013, 04:21
Has thanked: 48 times
Been thanked: 33 times

PreviousNext

Return to 2014

Who is online

Users browsing this forum: No registered users and 8 guests

Main Menu

User Menu

Our Partners


Who is online

In total there are 8 users online :: 0 registered, 0 hidden and 8 guests (based on users active over the past 10 minutes)
Most users ever online was 7303 on 15 Jul 2025, 20:46

Users browsing this forum: No registered users and 8 guests

Login Form