Board index Programs with AI or Rules Enforcement Magic: The Gathering - Duels of the Planeswalkers Programming Talk
Report cards error here
Moderator: CCGHQ Admins
Re: Report cards error here
by thefiremind » 15 Oct 2013, 13:43
If you use RiiakShiNal's ObjectDC it's not hard at all. Choose a register number, then set it to 1 the first time the creature has been targeted, and back to 0 at the beginning of each cleanup step or at the beginning of each turn (it should be equally functional). Unless I'm forgetting something, you only need one register.MC Brodie wrote:In the near future I plan on attempting to code Kira, Great Glass-Spinner. In order to code her "targeted for the first time in a turn ability" I was going to a manager token and a hidden characteristic. Whenever a creature is targeted, the manager token would set the hidden characteristic to true for that creature. Kira would use this hidden characteristic to see if its the first time the creature has been targeted. Well I think I would need to use two hidden characteristics to track it could be doable. Is this a decent way to approach this? How hard is it to do a hidden characteristic?
Yes, and it's already implemented, use it as you would do with any other sub-type.MC Brodie wrote:Is arcane an instant/sorcery subtype?
< 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: 721 times
Re: Report cards error here
by MC Brodie » 15 Oct 2013, 15:54
Ok I'll look into using the ObjectDC functions but i think I'm missing something. How would Kira know the index of the ObjectDC for the "first time targeted" counter? Or do you mean have Kira grant the counter ability to each creature? I'll have to think about it.
Also, if you only have a yes/no flag to track first time targeted I canthink of a way to do it using two flags but not one. But I can see only needing one with an objectdc. Again, I'm probably missing something.
As for arcane, I searched the recompiled LOL Wiki for arcane and nothing turned up. I assumed I had to add it. How can I test/filter for the arcane characteristic?
Also, if you only have a yes/no flag to track first time targeted I canthink of a way to do it using two flags but not one. But I can see only needing one with an objectdc. Again, I'm probably missing something.
As for arcane, I searched the recompiled LOL Wiki for arcane and nothing turned up. I assumed I had to add it. How can I test/filter for the arcane characteristic?
-----------------------------------------------------------------------
Song of the Day: 46 and 2 (cover)
Song of the Day: 46 and 2 (cover)
Re: Report cards error here
by thefiremind » 15 Oct 2013, 16:00
You decide the index, then both the invisible token and Kira will access that index. The ObjectDC of a card can be accessed from any other card.MC Brodie wrote:Ok I'll look into using the ObjectDC functions but i think I'm missing something. How would Kira know the index of the ObjectDC for the "first time targeted" counter?
You are right, it's defined in SPECS\SPELL_TYPES.TXT but not in the LOL files. Just declare SPELL_TYPE_ARCANE = 3000 in a LOL file and you're set. Then test/filter SPELL_TYPE_ARCANE exactly as you test/filter ENCHANTMENT_TYPE_AURA or any other sub-type.MC Brodie wrote:As for arcane, I searched the recompiled LOL Wiki for arcane and nothing turned up. I assumed I had to add it. How can I test/filter for the arcane characteristic?
< 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: 721 times
Re: Report cards error here
by GrovyleXShinyCelebi » 15 Oct 2013, 21:52
EDIT: Nevermind, I figured it out. Bah, I don't get why in the MODE blocks you have to use "index" tags instead of "mode" tags...thefiremind wrote:You must have done something else wrong. I can help if you post the whole card.GrovyleXShinyCelebi wrote:Hey mate, I tried your method earlier and when I try to cast the card (for the other abilities) it just returns to my hand immediately upon casting. I thought you might need the "mode" tag on the FILTER_CONDITION block, didn't work when I tried THAT.It's not needed: if my Hindering Light works, then Dawn Charm must work too.GrovyleXShinyCelebi wrote:Would throwing your condition in the TARGET block and have it return SetTargetCount( 1 ) if there is a card on the stack that is targeting me work?The effect controller chooses the targets as default, but if you don't want it to be that way, you use that function. Take a look at Evangelize.GrovyleXShinyCelebi wrote:Also, what does "SetTargetAnswerer" do? I'm guessing it sets a target tag in a TARGET block.
(in Duels 2014)
Duels 2012: viewtopic.php?f=109&t=12152
Duels 2013: viewtopic.php?f=109&t=12481&p=137458#p137458
Duels 2012: viewtopic.php?f=109&t=12152
Duels 2013: viewtopic.php?f=109&t=12481&p=137458#p137458
-
GrovyleXShinyCelebi - Posts: 294
- Joined: 12 Jun 2013, 18:23
- Has thanked: 14 times
- Been thanked: 37 times
Re: Report cards error here
by thefiremind » 15 Oct 2013, 22:40
Just do as I do: copy everything you can from official cards. If you ask me what tags I need to use in MODE blocks, I can't answer unless I go check on official cards, because I never ever wrote a MODE block entirely by myself.GrovyleXShinyCelebi wrote:Bah, I don't get why in the MODE blocks you have to use "index" tags instead of "mode" tags...
< 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: 721 times
Re: Report cards error here
by MC Brodie » 15 Oct 2013, 22:45
Ok thanks for the help. Forgive me if I'm a bit dense with the Kira. Programming is still somewhat new to me. I think I need to just try some stuff out. I'm determined to come up with something. Whether it will be correct is another case. And I know it won't be the most efficient.thefiremind wrote:You decide the index, then both the invisible token and Kira will access that index. The ObjectDC of a card can be accessed from any other card.MC Brodie wrote:Ok I'll look into using the ObjectDC functions but i think I'm missing something. How would Kira know the index of the ObjectDC for the "first time targeted" counter?You are right, it's defined in SPECS\SPELL_TYPES.TXT but not in the LOL files. Just declare SPELL_TYPE_ARCANE = 3000 in a LOL file and you're set. Then test/filter SPELL_TYPE_ARCANE exactly as you test/filter ENCHANTMENT_TYPE_AURA or any other sub-type.MC Brodie wrote:As for arcane, I searched the recompiled LOL Wiki for arcane and nothing turned up. I assumed I had to add it. How can I test/filter for the arcane characteristic?
-----------------------------------------------------------------------
Song of the Day: 46 and 2 (cover)
Song of the Day: 46 and 2 (cover)
Re: Report cards error here
by GrovyleXShinyCelebi » 16 Oct 2013, 01:22
*jaw drops*thefiremind wrote:Just do as I do: copy everything you can from official cards. If you ask me what tags I need to use in MODE blocks, I can't answer unless I go check on official cards, because I never ever wrote a MODE block entirely by myself.GrovyleXShinyCelebi wrote:Bah, I don't get why in the MODE blocks you have to use "index" tags instead of "mode" tags...
I actually thought, all this time, that you, RSN, kevlahnota, sumomole, and other accomplished people in here were familiar enough with the game's code and coding in general that you wrote all the code yourself checking occasionally only whensomething new came out. At least that's how I envisioned you making that complicated code for Patron of the Kitsune and Gomazoa. I think I just lost a bit of admiration of you
Haha, I remembered when I played your 2012 mod I thought you were some kind of God. It was you that inspired me to become a modder for 2014 mate, so naturally I had alot of respect for you. In fact I tried to memorize all the functions for 2014 and would oftentimes write cards without peeking at official code partly to be more like the advanced modders like you, RSN, and sumomole ( mostly because I'm going into a computer science major in college and I see DOTP modding as a way to familiarise myself with programming and memorizing lots of code ). Heck, I can write the code for Murder and Sizzle in my sleep .
Sorry for sharing that it just startled me the thefiremind would admit copy and pasting most of his code as I presumed being able to make so much fancy stuf he might be, I dunno, above it.
Anyways, back to the topic at hand, I have a question. What IS the difference between Get_Int and Int_Get, anyways?
(in Duels 2014)
Duels 2012: viewtopic.php?f=109&t=12152
Duels 2013: viewtopic.php?f=109&t=12481&p=137458#p137458
Duels 2012: viewtopic.php?f=109&t=12152
Duels 2013: viewtopic.php?f=109&t=12481&p=137458#p137458
-
GrovyleXShinyCelebi - Posts: 294
- Joined: 12 Jun 2013, 18:23
- Has thanked: 14 times
- Been thanked: 37 times
Re: Report cards error here
by thefiremind » 16 Oct 2013, 08:35
Copying and pasting is faster than typing manually. If you add the fact that you can prevent a lot of mistakes by doing that, it should be a natural first choice.
Functionally, there's no difference. But be aware that some game objects (I mean not just cards, but also data chests, characteristics, players, etc.) only accept one version of 2 seemingly equal functions: when in doubt, always look at the Wiki. For example, incrementing/decrementing an integer can be done with Int_Inc and Int_Dec inside data chests, but characteristics need Int_Increment and Int_Decrement to do the same. Why this? Blame the developers.GrovyleXShinyCelebi wrote:What IS the difference between Get_Int and Int_Get, anyways?
< 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: 721 times
Re: Report cards error here
by MC Brodie » 17 Oct 2013, 02:18
Heh, it was amazingly easy once I figured out how to use Riiak's ObjectDC functions. I didn't know they worked like that. For some reason I thought they worked like game or player data chests worked if that makes sense. Then again, I don't know how those work either (at least how to use them). It also helped that I reread Kira because I originally thought her ability was worded differently. Nonetheless, here is what I came up with if anyone wants to see it. I'm sure there's room for improvement but from my testing it at least works as it should.thefiremind wrote:You decide the index, then both the invisible token and Kira will access that index. The ObjectDC of a card can be accessed from any other card.MC Brodie wrote:Ok I'll look into using the ObjectDC functions but i think I'm missing something. How would Kira know the index of the ObjectDC for the "first time targeted" counter?
- Kira, Great Glass-Spinner | Open
- Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
<FILENAME text="KIRA_GREAT_GLASSSPINNER_867370349" />
<CARDNAME text="KIRA_GREAT_GLASSSPINNER" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Kira, Great Glass-Spinner]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Kira, Great Glass-Spinner]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Kira, Great Glass-Spinner]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Kira, Great Glass-Spinner]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Kira, Great Glass-Spinner]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Kira, Great Glass-Spinner]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Kira, Great Glass-Spinner]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Kira, Great Glass-Spinner]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Kira, Great Glass-Spinner]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="867370349" />
<ARTID value="867370349" />
<ARTIST name="Kev Walker" />
<CASTING_COST cost="{1}{U}{U}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Each spell is an intricate tapestry, and Kira is the great unraveler.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Each spell is an intricate tapestry, and Kira is the great unraveler.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Each spell is an intricate tapestry, and Kira is the great unraveler.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Each spell is an intricate tapestry, and Kira is the great unraveler.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Each spell is an intricate tapestry, and Kira is the great unraveler.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Each spell is an intricate tapestry, and Kira is the great unraveler.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Each spell is an intricate tapestry, and Kira is the great unraveler.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Each spell is an intricate tapestry, and Kira is the great unraveler.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Each spell is an intricate tapestry, and Kira is the great unraveler.]]></LOCALISED_TEXT>
</FLAVOURTEXT>
<SUPERTYPE metaname="Legendary" />
<TYPE metaname="Creature" />
<SUB_TYPE metaname="Spirit" />
<EXPANSION value="MMA" />
<RARITY metaname="R" />
<POWER value="2" />
<TOUGHNESS value="2" />
<STATIC_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Flying]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Vol]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Vuela.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Fliegend]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Volare]]></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[Voar]]></LOCALISED_TEXT>
<INTRINSIC characteristic="CHARACTERISTIC_FLYING" />
</STATIC_ABILITY>
<STATIC_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Creatures you control have “Whenever this creature becomes the target of a spell or ability for the first time in a turn, counter that spell or ability.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Creatures you control have “Whenever this creature becomes the target of a spell or ability for the first time in a turn, counter that spell or ability.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Creatures you control have “Whenever this creature becomes the target of a spell or ability for the first time in a turn, counter that spell or ability.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Creatures you control have “Whenever this creature becomes the target of a spell or ability for the first time in a turn, counter that spell or ability.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Le creature che controlli hanno “Ogniqualvolta questa creatura diventa bersaglio di una magia o abilità per la prima volta in un turno, neutralizza quella magia o abilità.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Creatures you control have “Whenever this creature becomes the target of a spell or ability for the first time in a turn, counter that spell or ability.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Creatures you control have “Whenever this creature becomes the target of a spell or ability for the first time in a turn, counter that spell or ability.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Creatures you control have “Whenever this creature becomes the target of a spell or ability for the first time in a turn, counter that spell or ability.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Creatures you control have “Whenever this creature becomes the target of a spell or ability for the first time in a turn, counter that spell or ability.”]]></LOCALISED_TEXT>
<FILTER filter_id="0">
local filter = ClearFilter()
filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
filter:Add( FE_CONTROLLER, OP_IS, EffectController() )
</FILTER>
<CONTINUOUS_ACTION layer="6" filter_id="0">
if FilteredCard() ~= nil then
FilteredCard():GetCurrentCharacteristics():GrantAbility(0)
end
</CONTINUOUS_ACTION>
</STATIC_ABILITY>
<TRIGGERED_ABILITY resource_id="0">
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Whenever this creature becomes the target of a spell or ability for the first time in a turn, counter that spell or ability.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Whenever this creature becomes the target of a spell or ability for the first time in a turn, counter that spell or ability.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Whenever this creature becomes the target of a spell or ability for the first time in a turn, counter that spell or ability.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Whenever this creature becomes the target of a spell or ability for the first time in a turn, counter that spell or ability.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Ogniqualvolta questa creatura diventa bersaglio di una magia o abilità per la prima volta in un turno, neutralizza quella magia o abilità.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Whenever this creature becomes the target of a spell or ability for the first time in a turn, counter that spell or ability.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Whenever this creature becomes the target of a spell or ability for the first time in a turn, counter that spell or ability.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Whenever this creature becomes the target of a spell or ability for the first time in a turn, counter that spell or ability.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Whenever this creature becomes the target of a spell or ability for the first time in a turn, counter that spell or ability.]]></LOCALISED_TEXT>
<TRIGGER value="BECAME_TARGET_OF_SPELL" simple_qualifier="self">
local oDC = RSN_GetObjectDC( EffectSource(), true )
if oDC ~= nil and oDC:Get_Int(-867) ~= nil and oDC:Get_Int(-867) == 1 then
return true
end
return false
</TRIGGER>
<TRIGGER value="BECAME_TARGET_OF_ABILITY" simple_qualifier="self">
local oDC = RSN_GetObjectDC( EffectSource(), true )
if oDC ~= nil and oDC:Get_Int(-867) ~= nil and oDC:Get_Int(-867) == 1 then
return true
end
return false
</TRIGGER>
<RESOLUTION_TIME_ACTION>
MTG():CounterStackObject( TriggerStackObjectID() )
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY replacement_effect="1" active_zone="ZONE_ANY">
<TRIGGER value="BEGINNING_OF_PLAYERS_STEP">
return MTG():GetStep() == STEP_UPKEEP and MTG():GetTurnNumber() == 0
</TRIGGER>
<RESOLUTION_TIME_ACTION>
local filter = ClearFilter()
filter:Add(FE_CARD_NAME, OP_IS, "_MCS_HOLY_SPT_GLASS_MANAGER")
if filter:CountStopAt(1) == 0 then
MTG():PutTokensOntoBattlefield("_MCS_HOLY_SPT_GLASS_MANAGER_867800007", 1, EffectController())
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<TOKEN_REGISTRATION reservation="1" type="_MCS_HOLY_SPT_GLASS_MANAGER_867800007" />
<HELP title="MORE_INFO_BADGE_TITLE_10" body="MORE_INFO_BADGE_BODY_10" zone="ZONE_ANY" />
<SFX text="COMBAT_BLUNT_LARGE_ATTACK" power_boundary_min="4" power_boundary_max="-1" />
<SFX text="COMBAT_BLUNT_SMALL_ATTACK" power_boundary_min="1" power_boundary_max="3" />
</CARD_V2>
- Shimmering Glasskite | Open
- Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
<FILENAME text="SHIMMERING_GLASSKITE_867081978" />
<CARDNAME text="SHIMMERING_GLASSKITE" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Shimmering Glasskite]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Escoufleverre chatoyant]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Cometavítrea de luz trémula]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Schimmernder Glashüller]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Vetronibbio Scintillante]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[ゆらめく玻璃凧]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Shimmering Glasskite]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Shimmering Glasskite]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Avérneo Vítreo Tremeluzente]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="867081978" />
<ARTID value="867081978" />
<ARTIST name="John Avon" />
<CASTING_COST cost="{3}{U}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[A child’s whisper could crack its shell, but not even an oni’s scream could penetrate it.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Le murmure d’un enfant pouvait briser sa carapace, mais pas même le cri d’un oni pouvait la traverser.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[El susurro de un niño podría quebrar su caparazón, pero ni siquiera el grito de un oni podría penetrarlo.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Das Geflüster eines Kindes konnte seine Hülle zerbrechen, doch das Kreischen der Oni konnte ihm nichts anhaben.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Il sussurro di un bambino poteva spezzare il suo guscio, ma neppure l’urlo di un oni poteva entrare al suo interno.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[殻を破るのは子供の囁き声でもできるが、中を貫くのは鬼の叫び声ですらできない。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[A child’s whisper could crack its shell, but not even an oni’s scream could penetrate it.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[A child’s whisper could crack its shell, but not even an oni’s scream could penetrate it.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[O sussuro de uma criança poderia romper sua carapaça, mas nem mesmo o grito de um oni poderia penetrá-la.]]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="Creature" />
<SUB_TYPE metaname="Spirit" />
<EXPANSION value="BOK" />
<RARITY metaname="C" />
<POWER value="2" />
<TOUGHNESS value="3" />
<STATIC_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Flying]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Vol]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Vuela.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Fliegend]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Volare]]></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[Voar]]></LOCALISED_TEXT>
<INTRINSIC characteristic="CHARACTERISTIC_FLYING" />
</STATIC_ABILITY>
<TRIGGERED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Whenever Shimmering Glasskite becomes the target of a spell or ability for the first time in a turn, counter that spell or ability.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[À chaque fois que l’Escoufleverre chatoyant devient la cible d’un sort ou d’une capacité pour la première fois pendant un tour, contrecarrez ce sort ou cette capacité.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Siempre que la Cometavítrea de luz trémula sea objetivo de un hechizo o habilidad por primera vez en un turno, contrarresta ese hechizo o habilidad.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Immer wenn der Schimmernde Glashüller zum ersten Mal in einem Zug das Ziel eines Zauberspruchs oder einer Fähigkeit wird, neutralisiere diesen Zauberspruch bzw. diese Fähigkeit.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Ogniqualvolta il Vetronibbio Scintillante diventa bersaglio di una magia o abilità per la prima volta nel turno, neutralizza quella magia o abilità.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[ゆらめく玻璃凧がいずれかのターンに初めて呪文や能力の対象になるたび、その呪文や能力を打ち消す。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Whenever Shimmering Glasskite becomes the target of a spell or ability for the first time in a turn, counter that spell or ability.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Whenever Shimmering Glasskite becomes the target of a spell or ability for the first time in a turn, counter that spell or ability.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Toda vez que Avérneo Vítreo Tremeluzente se tornar o alvo de uma mágica ou habilidade pela primeira vez num turno, anule aquela mágica ou habilidade.]]></LOCALISED_TEXT>
<TRIGGER value="BECAME_TARGET_OF_SPELL" simple_qualifier="self">
local oDC = RSN_GetObjectDC( EffectSource(), true )
if oDC ~= nil and oDC:Get_Int(-867) ~= nil and oDC:Get_Int(-867) == 1 then
return true
end
return false
</TRIGGER>
<TRIGGER value="BECAME_TARGET_OF_ABILITY" simple_qualifier="self">
local oDC = RSN_GetObjectDC( EffectSource(), true )
if oDC ~= nil and oDC:Get_Int(-867) ~= nil and oDC:Get_Int(-867) == 1 then
return true
end
return false
</TRIGGER>
<RESOLUTION_TIME_ACTION>
MTG():CounterStackObject( TriggerStackObjectID() )
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY replacement_effect="1" active_zone="ZONE_ANY">
<TRIGGER value="BEGINNING_OF_PLAYERS_STEP">
return MTG():GetStep() == STEP_UPKEEP and MTG():GetTurnNumber() == 0
</TRIGGER>
<RESOLUTION_TIME_ACTION>
local filter = ClearFilter()
filter:Add(FE_CARD_NAME, OP_IS, "_MCS_HOLY_SPT_GLASS_MANAGER")
if filter:CountStopAt(1) == 0 then
MTG():PutTokensOntoBattlefield("_MCS_HOLY_SPT_GLASS_MANAGER_867800007", 1, EffectController())
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<TOKEN_REGISTRATION reservation="1" type="_MCS_HOLY_SPT_GLASS_MANAGER_867800007" />
<HELP title="MORE_INFO_BADGE_TITLE_10" body="MORE_INFO_BADGE_BODY_10" zone="ZONE_ANY" />
<SFX text="COMBAT_BLUNT_LARGE_ATTACK" power_boundary_min="4" power_boundary_max="-1" />
<SFX text="COMBAT_BLUNT_SMALL_ATTACK" power_boundary_min="1" power_boundary_max="3" />
</CARD_V2>
- Glasskite Manager Token | Open
- Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
<FILENAME text="_MCS_HOLY_SPT_GLASS_MANAGER_867800007" />
<CARDNAME text="_MCS_HOLY_SPT_GLASS_MANAGER" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Glass Mgr]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Glass Mgr]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Glass Mgr]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Glass Mgr]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Glass Mgr]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Glass Mgr]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Glass Mgr]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Glass Mgr]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Glass Mgr]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="867800007" />
<ARTID value="0" />
<ARTIST name="Nobody" />
<CASTING_COST cost="" />
<TYPE metaname="" />
<EXPANSION value="DPI" />
<RARITY metaname="T" />
<TOKEN />
<!-- 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>
<!-- Sets the counter for times targeted per turn -->
<TRIGGERED_ABILITY replacement_effect="1">
<TRIGGER value="BECAME_TARGET_OF_SPELL">
local oDC = RSN_GetObjectDC( TriggerObject(), true )
if oDC:Get_Int(-867) == nil then
oDC:Set_Int(-867, 1)
else
oDC:Int_Inc(-867)
end
</TRIGGER>
<TRIGGER value="BECAME_TARGET_OF_ABILITY">
local oDC = RSN_GetObjectDC( TriggerObject(), true )
if oDC:Get_Int(-867) == nil then
oDC:Set_Int(-867, 1)
else
oDC:Int_Inc(-867)
end
</TRIGGER>
</TRIGGERED_ABILITY>
<!-- Resets the counter at the beginning of each turn -->
<TRIGGERED_ABILITY replacement_effect="1">
<TRIGGER value="BEGINNING_OF_PLAYERS_STEP">
return MTG():GetStep() == STEP_UNTAP
</TRIGGER>
<FILTER filter_id="0">
local filter = ClearFilter()
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_ENCHANTMENT )
subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_LAND )
subfilter:Add( FE_TYPE, OP_IS, CARD_TYPE_PLANESWALKER )
</FILTER>
<RESOLUTION_TIME_ACTION filter_id="0">
local oDC = RSN_GetObjectDC( FilteredCard(), false )
if oDC ~= nil and oDC:Get_Int(-867) ~= nil then
oDC:Set_Int(-867, 0)
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<AI_BASE_SCORE score="-5000" zone="ZONE_BATTLEFIELD" />
</CARD_V2>
Thanks for the help on this one as well. I suppose I should look at the original game files more often.thefiremind wrote:You are right, it's defined in SPECS\SPELL_TYPES.TXT but not in the LOL files. Just declare SPELL_TYPE_ARCANE = 3000 in a LOL file and you're set. Then test/filter SPELL_TYPE_ARCANE exactly as you test/filter ENCHANTMENT_TYPE_AURA or any other sub-type.MC Brodie wrote:As for arcane, I searched the recompiled LOL Wiki for arcane and nothing turned up. I assumed I had to add it. How can I test/filter for the arcane characteristic?
Btw Riiak, thanks for the amazing tool!
-----------------------------------------------------------------------
Song of the Day: 46 and 2 (cover)
Song of the Day: 46 and 2 (cover)
Re: Report cards error here
by Ferrix » 04 Apr 2014, 10:42
Radiance from 2013 is broken in 2014 (for example: Rally the Righteous).
Card text: ...targeted creature and each other creature that shares a color with it...
What the game does: ...each creature that shares a color with it...
This is an issue since the spell is not applied to colorless creatures (since nothing shares a color with colorless).
2013 code from the 2013 deck mod by GrovyleXShinyCelebi:
Card text: ...targeted creature and each other creature that shares a color with it...
What the game does: ...each creature that shares a color with it...
This is an issue since the spell is not applied to colorless creatures (since nothing shares a color with colorless).
2013 code from the 2013 deck mod by GrovyleXShinyCelebi:
- Code: Select all
<?xml version="1.0"?>
<CARD_V2 ExportVersion="2">
<FILENAME text="RALLY_THE_RIGHTEOUS_329852" />
<CARDNAME text="RALLY_THE_RIGHTEOUS" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Rally the Righteous]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Ralliement des justes]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Agrupar a los justos]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Sammeln der Gerechten]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Riorganizzare i Giusti]]></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[Reúna os Justos]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[动员义士]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[動員義士]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="329852" />
<ARTID value="88687" />
<ARTIST name="Dan Scott" />
<CASTING_COST cost="{1}{R}{W}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Yuri took up the ragged Boros banner, and his brethren, inspired by the act, followed him back into the fight.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Yuri ramassa la bannière déchirée de Boros, et ses frères, inspirés par son acte, le suivirent au combat.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Yuri tomó el destrozado estandarte boros, y sus hermanos, inspirados por su acción, lo siguieron a la batalla.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Juri reckte das zerfetzte Banner der Boros in die Luft, und seine Kumpanen, die dadurch ermutigt wurden, folgten ihm zurück in den Kampf.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Yuri raccolse lo stendardo lacero dei Boros e i suoi compagni, ispirati dal gesto, tornarono con lui nel vivo della battaglia.]]></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[Yuri pegou o já gasto estandarte dos Boros e seus irmãos, inspirados pelo ato, o acompanharam de volta à batalha.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[尤睿拿起了残破不堪的波洛斯旗帜,其伙伴为之士气大振,随他重返战场。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[尤睿拿起了殘破不堪的波洛斯旗幟,其夥伴為之士氣大振,隨他重返戰場。]]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="Instant" />
<EXPANSION value="DPH" />
<RARITY metaname="C" />
<SPELL_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[|Radiance| — Untap target creature and each other creature that shares a color with it. Those creatures get +2/+0 until end of turn.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[|Irradiance| — Dégagez la créature ciblée et chaque autre créature qui partage une couleur avec elle. Ces créatures gagnent +2/+0 jusqu’à la fin du tour.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[|Irradiar| — Endereza la criatura objetivo y cada una de las otras criaturas que compartan un color con ella. Esas criaturas obtienen +2/+0 hasta el final del turno.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[|Ausstrahlung| — Enttappe eine Kreatur deiner Wahl und alle anderen Kreaturen, die mit ihr eine Farbe gemeinsam haben. Diese Kreaturen erhalten +2/+0 bis zum Ende des Zuges.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[|Radianza| — STAPpa una creatura bersaglio e ogni altra creatura che condivide un colore con essa. Quelle creature prendono +2/+0 fino alla fine del turno.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[|光輝| ― クリーチャー1体を対象とする。それ、およびそれと共通の色を持つ他の各クリーチャーをアンタップする。それらのクリーチャーはターン終了時まで+2/+0の修整を受ける。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[||광휘|</i> —]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[|Сияние| — Разверните целевое существо и все другие существа, у которых есть такой же цвет, как у него. Эти существа получают +2/+0 до конца хода.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[|Radiação| — Desvire a criatura alvo e cada outra criatura que compartilhe uma cor com ela. Aquelas criaturas recebem +2/+0 até o final do turno.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[辉耀~重置目标生物和每个与该生物有共通颜色的其它生物。这些生物得+2/+0直到回合结束。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[輝耀~重置目標生物和每個與該生物有共通顏色的其它生物。這些生物得+2/+0直到回合結束。]]></LOCALISED_TEXT>
<SFX text="CASTER_BUFF_PLAY" />
<TARGET tag="CARD_QUERY_CHOOSE_CREATURE_TO_GET_2_0_AND_UNTAP" definition="0" compartment="0" count="1" />
<TARGET_DEFINITION id="0">
local filter = ClearFilter()
filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
</TARGET_DEFINITION>
<FILTER filter_id="0">
local filter = ClearFilter()
filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
filter:Add( FE_LUA_CONDITION, 1, EffectController(), EffectDC())
</FILTER>
<FILTER_CONDITION id="1">
local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
if FilteredCard() ~= nil and target ~= nil then
if FilteredCard():GetColour():TestAny(target:GetColour()) then
return true
else
return false
end
else
return false
end
</FILTER_CONDITION>
<RESOLUTION_TIME_ACTION filter_id="0">
if FilteredCard() ~= nil then
FilteredCard():Untap()
end
</RESOLUTION_TIME_ACTION>
<CONTINUOUS_ACTION layer="7C" filter_id="0">
if FilteredCard() ~= nil then
local characteristics = FilteredCard():GetCurrentCharacteristics()
characteristics:Power_Add( 2 )
characteristics:Toughness_Add( 0 )
end
</CONTINUOUS_ACTION>
<DURATION simple_duration="UntilEOT" />
<AI_SIMPLIFIED_TARGETING compartment="0" hint="HINT_ALLIED_ONLY" />
</SPELL_ABILITY>
<AI_AVAILABILITY window_step="end_of_turn" window_turn="their_turn" type="window" />
<AI_AVAILABILITY window_step="begin_combat" type="window" />
<AI_AVAILABILITY window_step="declare_blockers" type="window" />
<AI_BASE_SCORE score="600" zone="ZONE_HAND" />
</CARD_V2>
Re: Report cards error here
by thefiremind » 04 Apr 2014, 11:06
Try to changeFerrix wrote:Card text: ...targeted creature and each other creature that shares a color with it...
What the game does: ...each creature that shares a color with it...
This is an issue since the spell is not applied to colorless creatures (since nothing shares a color with colorless).
- Code: Select all
if FilteredCard():GetColour():TestAny(target:GetColour()) then
- Code: Select all
if FilteredCard() == target or FilteredCard():GetColour():TestAny(target:GetColour()) then
Use the spoiler tag: you find the button for it in the post editor, or you can write it yourself as [ spoiler=title]...[ /spoiler], without the spaces.Ferrix wrote:(Also, how do I create the extra layer used here so the card name is shown and the code needs to be unfolded first?)
By the way, if you try to quote a message that has something you don't know how to do, you'll see it by yourself (no need to post the message afterwards).
< 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: 721 times
Re: Report cards error here
by Ferrix » 04 Apr 2014, 21:07
Not a card error but possibly an engine error. Reveal() either does not reveal something to the person who controls the trigger or does not show the reveal. While this is not necessary in most cases, it is inconvenient for Shape Anew and other cards with similar effects.
Don't know a card to test now that doesn't shuffle the library but maybe puts cards at the bottom of it. If there is one and it still works that way, it is inconvenient.
Don't know a card to test now that doesn't shuffle the library but maybe puts cards at the bottom of it. If there is one and it still works that way, it is inconvenient.
Re: Report cards error here
by Zambooo » 27 Jan 2015, 18:42
when I cast Hands of Binding the card "triggers" the cipher ability but goes straight to the graveyard instead of letting me choose the creature to encode it in
I looked at the code but I counldn't find any difference from Stolen Identity, which actually works..
Edit: I tried it another time and it worked.. :/
dunno what was wrong during the first attempt
I looked at the code but I counldn't find any difference from Stolen Identity, which actually works..
Edit: I tried it another time and it worked.. :/
dunno what was wrong during the first attempt
Re: Report cards error here
by Bonktacular » 05 Aug 2016, 23:19
I've been poking around and I've noticed two things. In the current revision of the community WAD (582), it looks like in the planeswalker function file that someone forget to end line 98 with a comma, which makes planeswalkers immediately get sent to the graveyard after being played since the engine is expecting a closing bracket at that point and isn't getting one.
Additionally, when floating mana with abilities from cards like Kruphix, God of Horizons, if floating over 16 mana at any point will cause the player doing so to no longer be able to spend any mana on abilities or spells. I've found that a ham-fisted fix was to just extend the current rules for mana generation, which only detail up to 16 colorless mana, and extend it to 100. There may be a more eloquent way to reference the current amount of mana floated and, if it's colorless, simply generate it again for the next step.
So far, that's all I can see wrong in the current community wad. Let me know if it this thread doesn't apply.
Additionally, when floating mana with abilities from cards like Kruphix, God of Horizons, if floating over 16 mana at any point will cause the player doing so to no longer be able to spend any mana on abilities or spells. I've found that a ham-fisted fix was to just extend the current rules for mana generation, which only detail up to 16 colorless mana, and extend it to 100. There may be a more eloquent way to reference the current amount of mana floated and, if it's colorless, simply generate it again for the next step.
So far, that's all I can see wrong in the current community wad. Let me know if it this thread doesn't apply.
- Bonktacular
- Posts: 12
- Joined: 04 Aug 2016, 05:28
- Has thanked: 0 time
- Been thanked: 0 time
Re: Report cards error here
by Xander9009 » 05 Aug 2016, 23:41
The PLW function file has been fixed. However, I'm not sure what you mean about Kruphix. It doesn't have any mana abilities that "only detail up to 16 colorless mana". Kruphix doesn't count mana at all or have any built-in mana abilities. It just registers colorless and non-colorless mana tokens which would leave the battlefield without tapping and overrides it (for colorless) or makes colorless tokens (for non-colorless). Are you certain Kruphix was one of the cards that exhibited the issue? (Neither the numbers 15, 16, nor 17 appear on Kruphix at all, in fact.)
_______________________________
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
Who is online
Users browsing this forum: No registered users and 7 guests