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




Age of Dodekatheon - UPDATED 01/09/2014 DXT1 (183 cards)
Moderator: CCGHQ Admins
Re: Age of Dodekatheon - NEW UPDATED 10/12/2013 (48 cards)
by NeoAnderson » 13 Oct 2013, 00:35
Thanks a lot for your detailed and quick reply Riiak. Can you kindly let me know how i can change mana token proprerties to make them visible (add the type) to make some test? Sorry for the silly question but i'm still going into programming and you are the maker of this function 

- NeoAnderson
- Posts: 914
- Joined: 10 Sep 2013, 07:49
- Has thanked: 18 times
- Been thanked: 139 times
Re: Age of Dodekatheon - NEW UPDATED 10/12/2013 (48 cards)
by RiiakShiNal » 13 Oct 2013, 00:52
Well, the easiest way is to open up the token XMLs and put in:
- Code: Select all
<TYPE metaname="Land" />
Just getting started: Xander9009's DotP 2014 Community Wad
Need a deck builder: DotP 2014 Deck Builder
Problems Modding: DotP 2014 Frequent Modding Mistakes
Need a deck builder: DotP 2014 Deck Builder
Problems Modding: DotP 2014 Frequent Modding Mistakes
- RiiakShiNal
- Programmer
- Posts: 2188
- Joined: 16 May 2011, 21:37
- Has thanked: 75 times
- Been thanked: 497 times
Re: Age of Dodekatheon - NEW UPDATED 10/12/2013 (48 cards)
by NeoAnderson » 13 Oct 2013, 01:00
Thanks again for yout time my friend, i think your suggestion needs to edit the XMLs inside your mod. I tried another way it seems to work. I changed the proprerties of the Mox adding a static ability :
Thanks again for your time.
- Code: Select all
<STATIC_ABILITY>
<FILTER filter_id="0">
local filter = ClearFilter()
filter:Add(FE_CARD_INSTANCE, OP_NOT, EffectSource() )
filter:Add(FE_CONTROLLER, OP_IS, EffectController() )
filter:Add( FE_IS_TOKEN, true )
</FILTER>
<CONTINUOUS_ACTION layer="4" filter_id="0">
local card = FilteredCard()
if card ~= nil then
local characteristics = card:GetCurrentCharacteristics()
local type = characteristics:CardType_GetWritable()
type:Add( CARD_TYPE_LAND)
end
</CONTINUOUS_ACTION>
</STATIC_ABILITY>
Thanks again for your time.
- NeoAnderson
- Posts: 914
- Joined: 10 Sep 2013, 07:49
- Has thanked: 18 times
- Been thanked: 139 times
Re: Age of Dodekatheon - NEW UPDATED 10/12/2013 (48 cards)
by NeoAnderson » 13 Oct 2013, 01:12
Done as you can see inside the follow screenshoots using the left CTRL key are highlighted different token and the life points needed changes. but the system seems to wait a confirmation to go over! Any idea how to resolve this bug??






- NeoAnderson
- Posts: 914
- Joined: 10 Sep 2013, 07:49
- Has thanked: 18 times
- Been thanked: 139 times
Re: Age of Dodekatheon - NEW UPDATED 10/12/2013 (48 cards)
by RiiakShiNal » 13 Oct 2013, 01:47
That method works too, it's not necessarily as easy (it's more than 1 line) and can cause issues with other tokens, but it works.
I'm not exactly sure what I'm supposed to be seeing in those screenshots. Usually you choose the mana you want to spend on a spell with the Left Control key before you cast the spell, then when you are happy with the selected mana configuration you cast the spell and it uses the configuration you selected.
However, in your screenshots it looks like you have already cast a spell and you are selecting a mana configuration (though we can't tell from the screenshots which token is which colour of mana because we can't read the titles, image is too small to see) for some ability or something so I have no idea what you are doing in those screenshots nor do I have any idea what to tell you.
It might help if you posted the code of the card that is giving you problems, but without details about exactly what you are doing/trying to do (step-by-step so we can reproduce the problem), the expected outcome, and the actual outcome I'm not sure how much help we will be able to give.
I'm not exactly sure what I'm supposed to be seeing in those screenshots. Usually you choose the mana you want to spend on a spell with the Left Control key before you cast the spell, then when you are happy with the selected mana configuration you cast the spell and it uses the configuration you selected.
However, in your screenshots it looks like you have already cast a spell and you are selecting a mana configuration (though we can't tell from the screenshots which token is which colour of mana because we can't read the titles, image is too small to see) for some ability or something so I have no idea what you are doing in those screenshots nor do I have any idea what to tell you.
It might help if you posted the code of the card that is giving you problems, but without details about exactly what you are doing/trying to do (step-by-step so we can reproduce the problem), the expected outcome, and the actual outcome I'm not sure how much help we will be able to give.
Just getting started: Xander9009's DotP 2014 Community Wad
Need a deck builder: DotP 2014 Deck Builder
Problems Modding: DotP 2014 Frequent Modding Mistakes
Need a deck builder: DotP 2014 Deck Builder
Problems Modding: DotP 2014 Frequent Modding Mistakes
- RiiakShiNal
- Programmer
- Posts: 2188
- Joined: 16 May 2011, 21:37
- Has thanked: 75 times
- Been thanked: 497 times
Re: Age of Dodekatheon - NEW UPDATED 10/12/2013 (48 cards)
by NeoAnderson » 13 Oct 2013, 02:51
First of all thanks as always for your kindness.
1. Until today i didn't know about the left CTRL key to select mana combinations, for this reason in certain situations i was not happy about automatic mana tap.
2. Inside these screenshoots you see exactly the status of the game after i tried to cast the spell. It is blocked into the stack and doesn't go over. If i press the CTRL key the the mana combinations and life point still changes.
3. I tried many time with different mana, sometime it works and it is cast, other times it is blocked into the stack. I am using only Mox to test the deck so no basic land, this mox is a modified version take from your Mod, it produce 3 colored mana instead of one.
4. If i use 1 mox (3 mana of one color) it works except for the red mana (if you use 3 red mana it display the question)
If i use 2 mox (6 mana - 2 different colors, 3 mana per color) it display a question (see the screenshoot below)
If i use 3 mox (9 mana - 3 different colors 3 mana per color) it display a question (see the screenshoot below)
If i use 4 mox (12 mana - 4 different colors 3 mana per color) it display a question (see the screenshoot below)
If i use 5 mox (3 mana for each color) many times works but not always.
5. If you select or not different combinations with left CTRL doesn't matter it doesn't work. After click ok on that box the card is blocked into the stack, you still can select other mana combinations with CTRL but it doesn't go over.
6. Until now i haven't tried with normal land.
I hope these informations will be usefull and enough detailed to understand the problem.
IF you want to take a look i post the code of the cards "Horae" and the modded mox iam using "Chrome Mox"

1. Until today i didn't know about the left CTRL key to select mana combinations, for this reason in certain situations i was not happy about automatic mana tap.
2. Inside these screenshoots you see exactly the status of the game after i tried to cast the spell. It is blocked into the stack and doesn't go over. If i press the CTRL key the the mana combinations and life point still changes.
3. I tried many time with different mana, sometime it works and it is cast, other times it is blocked into the stack. I am using only Mox to test the deck so no basic land, this mox is a modified version take from your Mod, it produce 3 colored mana instead of one.
4. If i use 1 mox (3 mana of one color) it works except for the red mana (if you use 3 red mana it display the question)
If i use 2 mox (6 mana - 2 different colors, 3 mana per color) it display a question (see the screenshoot below)
If i use 3 mox (9 mana - 3 different colors 3 mana per color) it display a question (see the screenshoot below)
If i use 4 mox (12 mana - 4 different colors 3 mana per color) it display a question (see the screenshoot below)
If i use 5 mox (3 mana for each color) many times works but not always.
5. If you select or not different combinations with left CTRL doesn't matter it doesn't work. After click ok on that box the card is blocked into the stack, you still can select other mana combinations with CTRL but it doesn't go over.
6. Until now i haven't tried with normal land.
I hope these informations will be usefull and enough detailed to understand the problem.
IF you want to take a look i post the code of the cards "Horae" and the modded mox iam using "Chrome Mox"
- HORAE | Open
- Code: Select all
<?xml version="1.0"?>
<CARD_V2 ExportVersion="15">
<FILENAME text="HORAE_7272953" />
<CARDNAME text="Horae" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Horae]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Horae]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Horae]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Horae]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Horae]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Horae]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Horae]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Horae]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Horae]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="7272953" />
<ARTID value="7227953" />
<ARTIST name="Internet - Free resource" />
<CASTING_COST cost="{1}{W/P}{U/P}{G/P}{R/P}{B/P}" />
<SUPERTYPE metaname="Legendary" />
<TYPE metaname="Creature" />
<SUB_TYPE metaname="Minor_Divinity" />
<EXPANSION value="DPI" />
<RARITY metaname="M" />
<POWER value="0" />
<TOUGHNESS value="4" />
<STATIC_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Shroud]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Linceul]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Velo.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Verhüllt]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Velo]]></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[Manto]]></LOCALISED_TEXT>
<INTRINSIC characteristic="CHARACTERISTIC_SHROUD" />
</STATIC_ABILITY>
<TRIGGERED_ABILITY badge="BADGE_UNDYING" active_zone="ZONE_BATTLEFIELD" commaspace="1">
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Undying]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Survivance]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Resiliencia.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Unverwüstlich]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Immortale]]></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[Imortal]]></LOCALISED_TEXT>
<TRIGGER value="ZONECHANGE_BEGIN" simple_qualifier="self" to_zone="ZONE_GRAVEYARD"
from_zone="ZONE_BATTLEFIELD" />
<INTERVENING_IF ignore_resolution_check="1">
if TriggerObject():CountCounters(MTG():PlusOnePlusOneCounters()) == 0 then
return true
else
return false
end
</INTERVENING_IF>
<RESOLUTION_TIME_ACTION>
if TriggerObject() ~= nil then
EffectDC():Protect_CardPtr( COMPARTMENT_ID_PARAM_TRIGGER_OBJECT )
TriggerObject():PutOntoBattlefield( TriggerObject():GetOwner() )
end
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
if TriggerObject() ~= nil then
TriggerObject():AddCounters( MTG():PlusOnePlusOneCounters(), 1)
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[At the beginning of your upkeep, if Horae has at
least a +1 / +1, remove one of these counters.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Au début de votre entretien, si Horae a au moins un
marqueur +1 / +1, supprimer l'un de ces compteurs.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Al comienzo de tu mantenimiento, si Horae tiene por
lo menos un 1/1, eliminar uno de estos contadores.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Zu Beginn Ihres Unterhalt, wenn Horae mindestens eine
+1 / +1, entfernen Sie eine dieser Zähler.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[All'inizio del tuo mantenimento, se Horae ha almeno
un segnalino +1 / +1, rimuovi uno di questi segnalini.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Horaeが少なくとも+1 /+1を持っている場合あなたのアップキープの開始時に、これらのカウンタの1つを
削除します。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Horae 적어도 +1 / +1가있는 경우, 유지비의 시작 부분에서, 이러한 카운터
중 하나를 제거합니다.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[В начале вашего шага поддержки, если Horae имеет по
крайней мере один жетон +1 / +1, удалить один из этих счетчиков.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[No início de sua manutenção, se Horae tem pelo menos
um 1/1, remover um desses contadores.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[在你的維持開始,如果海悅至少有一個+1 / +1,刪除其中一個計數器。]]
></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[在你的維持開始,如果海悅至少有一個+1 / +1,刪除其中一個計數器。]]
></LOCALISED_TEXT>
<TRIGGER value="BEGINNING_OF_PLAYERS_STEP" simple_qualifier="controller">
return MTG():GetStep() == STEP_UPKEEP
</TRIGGER>
<RESOLUTION_TIME_ACTION>
if EffectSource() ~= nil then
local counters2 = EffectSource():CountCounters(MTG():PlusOnePlusOneCounters())
if counters2 ~= nil then
EffectSource():RemoveCounters( MTG():PlusOnePlusOneCounters(), 1 )
end
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY>
<TRIGGER value="ZONECHANGE_BEGIN" simple_qualifier="self" to_zone="ZONE_GRAVEYARD"
from_zone="ZONE_BATTLEFIELD" />
<FILTER filter_id="0">
local filter = ClearFilter()
filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
filter:Add( FE_CONTROLLER, OP_IS, EffectController())
filter:Add( FE_CARD_NAME, OP_IS, "HORAE_SEASON" )
</FILTER>
<RESOLUTION_TIME_ACTION filter_id="0">
if FilteredCard() ~= nil then
FilteredCard():Destroy()
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<ACTIVATED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[0: Put on the battlefield, the token of the following
season. Remove the token of the current season.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[0: Mettez sur le champ de bataille, le jeton de la
saison suivante. Retirez le jeton de la saison en cours.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[0: Pon en el campo de batalla, la muestra de la
siguiente temporada. Retire la muestra de la actual temporada.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[0: auf dem Schlachtfeld Put, das Token der folgenden
Saison. Entfernen Sie die Zeichen der aktuellen Saison.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[0: Metti sul campo di battaglia, la pedina relativa
alla stagione successiva.Rimuovi la pedina della stagione attuale.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[0:、戦場で次のシーズンのトークンを置く。現在のシーズンのトークンを削除します。]]
></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[0 : 전장에서 다음 시즌의 토큰을 놓습니다.현재 시즌의 토큰을
제거합니다.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[0: положите на поле боя, лексема следующего сезона.
Удалить маркер текущего сезона.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[0: Coloque no campo de batalha, o sinal da temporada
seguinte. Remover o símbolo da atual temporada.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[0:在戰場上,在接下來的賽季的令牌。當前賽季中取出令牌。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[0:在戰場上,在接下來的賽季的令牌。當前賽季中取出令牌。]]></LOCALISED_TEXT>
<SFX text="CASTER_BUFF_PLAY" />
<COUNTER_REGISTRATION name="Season" proliferate="11" />
<COST mana_cost="{0}" type="Mana" />
<FILTER filter_id="0">
local filter = ClearFilter()
filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
filter:Add( FE_CONTROLLER, OP_IS, EffectController())
filter:Add( FE_CARD_NAME, OP_IS, "HORAE_SEASON" )
</FILTER>
<RESOLUTION_TIME_ACTION filter_id="0">
if FilteredCard() ~= nil then
FilteredCard():Destroy()
end
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local counters = EffectSource():CountCounters(MTG():GetCountersType("Season"))
if (counters == 0) then
EffectSource():AddCounters( MTG():GetCountersType("Season"), 1)
MTG():PutTokensOntoBattlefield( "HORAE_A_7272954", 1, EffectController() )
else if (counters == 1) then
EffectSource():AddCounters( MTG():GetCountersType("Season"), 1)
MTG():PutTokensOntoBattlefield( "HORAE_A_7272955", 1, EffectController() )
else if (counters == 2) then
EffectSource():AddCounters( MTG():GetCountersType("Season"), 1)
MTG():PutTokensOntoBattlefield( "HORAE_A_7272956", 1, EffectController() )
else if (counters == 3) then
EffectSource():RemoveCounters( MTG():GetCountersType("Season"), 3)
MTG():PutTokensOntoBattlefield( "HORAE_A_7272957", 1, EffectController() )
end
end
end
end
</RESOLUTION_TIME_ACTION>
<AVAILABILITY per_turn_limit="1" />
</ACTIVATED_ABILITY>
<TOKEN_REGISTRATION reservation="1" type="HORAE_A_7272954" />
<TOKEN_REGISTRATION reservation="1" type="HORAE_A_7272955" />
<TOKEN_REGISTRATION reservation="1" type="HORAE_A_7272956" />
<TOKEN_REGISTRATION reservation="1" type="HORAE_A_7272957" />
</CARD_V2>
- CHORME MOX | Open
- Code: Select all
<?xml version="1.0"?>
<CARD_V2 ExportVersion="2">
<FILENAME text="MM_CHROME_MOX_7272730" />
<CARDNAME text="CHROME_MOX" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Chrome Mox BOOST]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Mox de chrome]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Mox de cromo]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Chrommox]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Mox di Cromo BOOST]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[金属モックス]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Chrome Mox]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Chrome Mox]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Mox de Cromo]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[五彩玛珂]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[五彩瑪珂]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="7272730" />
<ARTID value="7227730" />
<ARTIST name="Internet free" />
<CASTING_COST cost="{0}" />
<TYPE metaname="Artifact" />
<EXPANSION value="DPI" />
<RARITY metaname="R" />
<ACTIVATED_ABILITY forced_skip="1">
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{T}: Add 3 mana of any colors to your mana pool.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[{T} : Ajoutez un mana de la couleur de la carte dont le Mox de chrome a l’empreinte à votre réserve.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[{T}: Agrega un maná de uno de los colores de la carta estampada a tu reserva de maná.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[{T}: Erhöhe deinen Manavorrat um ein Mana einer der Farben der eingeprägten Karte.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[{T}: Aggiungi alla tua riserva 3 mana di un qualsiasi colore]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[{T}:あなたのマナ・プールに、刻印されているカードの色のうちいずれかの色のマナ1点を加える。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[{T}: Add one mana of any of the exiled card’s colors to your mana pool.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[{T}: Add one mana of any of the exiled card’s colors to your mana pool.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[{T}: Adiciona uma mana de qualquer uma das cores do card estampado à sua reserva de mana.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[{T}:加一点法术力到你的法术力的法术力池中,其颜色为压印的牌之任一颜色。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[{T}:加一點法術力到你的魔法力的法術力池中,其顏色為壓印的牌之任一顏色。]]></LOCALISED_TEXT>
<COST type="TapSelf" />
<PLAY_TIME_ACTION>
RSN_MarkManaAbilityStart()
local oPlayer = EffectController()
local oCard = EffectSource()
if (oPlayer ~= nil) then
oPlayer:BeginNewMultipleChoice()
oPlayer:AddMultipleChoiceAnswer( "RSN_MODE_PRODUCE_W" )
oPlayer:AddMultipleChoiceAnswer( "RSN_MODE_PRODUCE_U" )
oPlayer:AddMultipleChoiceAnswer( "RSN_MODE_PRODUCE_B" )
oPlayer:AddMultipleChoiceAnswer( "RSN_MODE_PRODUCE_R" )
oPlayer:AddMultipleChoiceAnswer( "RSN_MODE_PRODUCE_G" )
oPlayer:AskMultipleChoiceQuestion( "MODE_CHOOSE_ONE", oCard )
end
</PLAY_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local nColour = EffectController():GetMultipleChoiceResult() + 1
if (nColour == COLOUR_BLACK) then
RSN_Produce( "{B}{B}{B}", 1 )
elseif (nColour == COLOUR_BLUE) then
RSN_Produce( "{U}{U}{U}", 1 )
elseif (nColour == COLOUR_GREEN) then
RSN_Produce( "{G}{G}{G}", 1 )
elseif (nColour == COLOUR_RED) then
RSN_Produce( "{R}{R}{R}", 1 )
elseif (nColour == COLOUR_WHITE) then
RSN_Produce( "{W}{W}{W}", 1 )
end
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
RSN_EliminateExtraManaTokens()
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
S_DisplayManaPool(EffectController())
RSN_MarkManaAbilityEnd()
</RESOLUTION_TIME_ACTION>
<AI_AVAILABILITY window_step="upkeep" type="window" />
<AI_AVAILABILITY window_step="main_1" window_turn="my_turn" type="window" />
<AI_AVAILABILITY window_step="begin_combat" window_turn="their_turn" type="window" />
<AI_AVAILABILITY window_step="declare_attackers" window_turn="their_turn" type="window" />
<AI_AVAILABILITY window_step="declare_blockers" type="window" />
<AI_AVAILABILITY window_step="main_2" window_turn="my_turn" type="window" />
<AI_AVAILABILITY window_step="end_of_turn" type="window" />
<AI_AVAILABILITY window_step="end_of_turn" window_turn="their_turn" type="window" />
<AI_AVAILABILITY type="in_response" response_source="1" response_target="1" />
<AI_AVAILABILITY type="in_response" response_source="1" />
<AI_AVAILABILITY type="in_response" response_target="1" />
</ACTIVATED_ABILITY>
<STATIC_ABILITY>
<CONTINUOUS_ACTION layer="0">
RSN_ClearCanProduceMana()
if S_CountTypeInZoneOfPlayer(CARD_TYPE_ARTIFACT, ZONE_BATTLEFIELD, EffectController()) > 2 then
RSN_MarkCanProduceMana( "{W}{U}{B}{R}{G}" )
end
</CONTINUOUS_ACTION>
</STATIC_ABILITY>
<TRIGGERED_ABILITY forced_skip="1" replacement_effect="1">
<TRIGGER value="BEGINNING_OF_STEP" pre_trigger="1" />
<RESOLUTION_TIME_ACTION>
RSN_ClearProducedMana()
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<TOKEN_REGISTRATION reservation="1" type="RSN_TOKEN_MANA_W" />
<TOKEN_REGISTRATION reservation="1" type="RSN_TOKEN_MANA_U" />
<TOKEN_REGISTRATION reservation="1" type="RSN_TOKEN_MANA_B" />
<TOKEN_REGISTRATION reservation="1" type="RSN_TOKEN_MANA_R" />
<TOKEN_REGISTRATION reservation="1" type="RSN_TOKEN_MANA_G" />
<AI_BASE_SCORE score="300" zone="ZONE_BATTLEFIELD" />
</CARD_V2>

- NeoAnderson
- Posts: 914
- Joined: 10 Sep 2013, 07:49
- Has thanked: 18 times
- Been thanked: 139 times
Re: Age of Dodekatheon - NEW UPDATED 10/12/2013 (48 cards)
by thefiremind » 13 Oct 2013, 08:46
As far as I know, nobody ever ran into this problem when using Phyrexian mana, and it seems there's only one difference between your card and the official Magic cards with Phyrexian mana: your card has multiple colors of Phyrexian mana. I agree with RiiakShiNal, there must be a bug in the engine that makes it randomly hang when multiple colors of Phyrexian mana are on the same card. After all, this isn't something the developers would test, because there are no official cards with this characteristic.
I don't know what to suggest you... maybe you could use normal mana on the original cost and think about an interesting alternative cost to add? Or give those cards an all colorless original cost (you can still make them 5-colored by adding <COLOUR value="WUBRG" />, but be careful that it's sensitive to its position inside the XML, put it exactly where you find it on tokens), then give them an additional ability/effect if all colors of mana are spent to cast them? Those are just random ideas, but maybe they'll get you inspired.
I don't know what to suggest you... maybe you could use normal mana on the original cost and think about an interesting alternative cost to add? Or give those cards an all colorless original cost (you can still make them 5-colored by adding <COLOUR value="WUBRG" />, but be careful that it's sensitive to its position inside the XML, put it exactly where you find it on tokens), then give them an additional ability/effect if all colors of mana are spent to cast them? Those are just random ideas, but maybe they'll get you inspired.

< 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: Age of Dodekatheon - NEW UPDATED 10/12/2013 (48 cards)
by NeoAnderson » 13 Oct 2013, 11:47
Thanks a lot my friend, i am glad to hear i am not crazy, anyway, i already changed the casting cost using multiple colors mana like (U/B U/B R/B R/B W/P W/P), by this way the cards still be able to be playable with most of colors deck, and using just one Phyrexian mana doesn't give any problem.
To say the truth the starting idea was a little bit different :
Horae should be a creature with 4 morphing states, but i found some problems to implement it so i made it as a creature who cast 4 different tokens.
When i worked on the original idea, i created 4 different XML, with different <FILENAME text="" />, and cardname (<CARDNAME text="Horae_A" />,<CARDNAME text="Horae_B" />,<CARDNAME text="Horae_C" />,<CARDNAME text="Horae_D" />.
Inside the Cards there was the ability to Cast next creature example : Horae_A used PutTokensOntoBattelfield(Horae_B).
The problem is that each of these cards should remove from game the previous card, to do it i used 2 different ways, adding EffectSource():Exile() inside the previous card after the resolution block where it cast the next token. the second way adding a cardname check into each cards and Exile() function(in a trigger block when it come into battlefield) example :Horae_B, Trigger come into battlefield, check cardname ="Horae_A" (both ways with Getcardname and also with filters) then Exile, and for some reason it doesn't work.
The minor problem was that using PutTokensOntoBattelfied change the card into a token and it loses his permanent state.
So i decided to separate The Main Horae with Seasons Horae to alternate. Do you think was possible to work on first idea or i have to finish the second one?
I also appreciated your suggestions, i will take it in consideration for new cards
To say the truth the starting idea was a little bit different :
Horae should be a creature with 4 morphing states, but i found some problems to implement it so i made it as a creature who cast 4 different tokens.
When i worked on the original idea, i created 4 different XML, with different <FILENAME text="" />, and cardname (<CARDNAME text="Horae_A" />,<CARDNAME text="Horae_B" />,<CARDNAME text="Horae_C" />,<CARDNAME text="Horae_D" />.
Inside the Cards there was the ability to Cast next creature example : Horae_A used PutTokensOntoBattelfield(Horae_B).
The problem is that each of these cards should remove from game the previous card, to do it i used 2 different ways, adding EffectSource():Exile() inside the previous card after the resolution block where it cast the next token. the second way adding a cardname check into each cards and Exile() function(in a trigger block when it come into battlefield) example :Horae_B, Trigger come into battlefield, check cardname ="Horae_A" (both ways with Getcardname and also with filters) then Exile, and for some reason it doesn't work.
The minor problem was that using PutTokensOntoBattelfied change the card into a token and it loses his permanent state.
So i decided to separate The Main Horae with Seasons Horae to alternate. Do you think was possible to work on first idea or i have to finish the second one?
I also appreciated your suggestions, i will take it in consideration for new cards

- NeoAnderson
- Posts: 914
- Joined: 10 Sep 2013, 07:49
- Has thanked: 18 times
- Been thanked: 139 times
Re: Age of Dodekatheon - NEW UPDATED 10/12/2013 (48 cards)
by RiiakShiNal » 13 Oct 2013, 13:24
I haven't had a chance to run your test cases yet, but reading what you wanted originally, the original idea to have a creature with multiple states is indeed possible. This assumes that each state just has different stats/abilities/traits and not different types or super-types.
You make a hidden STATIC_ABILITY with linked_ability_group="1" that works in all zones (except ZONE_EXILE) and manages the states. This ability can also handle P/T changes, sub-type changes (if desired), colour changes, etc....
Then you have an ability that changes the state (you could have a different change state ability for each state so you could have different costs, text, etc...).
You make a hidden STATIC_ABILITY with linked_ability_group="1" that works in all zones (except ZONE_EXILE) and manages the states. This ability can also handle P/T changes, sub-type changes (if desired), colour changes, etc....
- Code: Select all
<STATIC_ABILITY linked_ability_group="1" active_zone="ZONE_ANY">
<CONTINUOUS_ACTION layer="0">
if (EffectSource():GetZone() == ZONE_BATTLEFIELD) then
local nState = LinkedDC():Int_Get( 0 )
if (nState == 0) then
-- Grant abilities it should have in Initial state
elseif (nState == 1) then
-- Grant abilities it should have in second state
elseif (nState == 2) then
-- Grant abilities it should have in third state
else
-- Grant abilities it should have in last state
end
else
-- Abilities it should have while outside the battlefield (these don't actually have to function outside of the battlefield, they could just be there for their text).
end
</CONTINUOUS_ACTION>
</STATIC_ABILITY>
Then you have an ability that changes the state (you could have a different change state ability for each state so you could have different costs, text, etc...).
- Code: Select all
<ACTIVATED_ABILITY linked_ability_group="1">
<LOCALISED_TEXT><![CDATA[{1}: Change to next state.]]></LOCALISED_TEXT>
<COST type="Mana" mana_cost="{1}" />
<RESOLUTION_TIME_ACTION>
local nCurrentState = LinkedDC():Int_Get( 0 )
if (nCurrentState < 3) then
-- Change to next state.
LinkedDC():Int_Inc( 0 )
else
-- Loop back around to first state.
LinkedDC():Int_Set( 0, 0 )
end
</RESOLUTION_TIME_ACTION>
</ACTIVATED_ABILITY>
Just getting started: Xander9009's DotP 2014 Community Wad
Need a deck builder: DotP 2014 Deck Builder
Problems Modding: DotP 2014 Frequent Modding Mistakes
Need a deck builder: DotP 2014 Deck Builder
Problems Modding: DotP 2014 Frequent Modding Mistakes
- RiiakShiNal
- Programmer
- Posts: 2188
- Joined: 16 May 2011, 21:37
- Has thanked: 75 times
- Been thanked: 497 times
Re: Age of Dodekatheon - NEW UPDATED 10/12/2013 (48 cards)
by NeoAnderson » 13 Oct 2013, 14:17
Thanks as always Riiak, your support is really appreciated, also your code will help me in future, my programming skills are too rusted.
Anyway there is also another reason why i didn't use just one card, this reason is that i would also change the Card picture and name, and i think these values cannot be dinamically changed.
I will make some test and finally i will decide how to implement it, surely i will keep your code suggestion for other cards of this set, i am glad to receive your feedback, it helps me a lot to improve new ideas.
Anyway there is also another reason why i didn't use just one card, this reason is that i would also change the Card picture and name, and i think these values cannot be dinamically changed.
I will make some test and finally i will decide how to implement it, surely i will keep your code suggestion for other cards of this set, i am glad to receive your feedback, it helps me a lot to improve new ideas.
- NeoAnderson
- Posts: 914
- Joined: 10 Sep 2013, 07:49
- Has thanked: 18 times
- Been thanked: 139 times
Re: Age of Dodekatheon - NEW UPDATED 10/12/2013 (48 cards)
by RiiakShiNal » 13 Oct 2013, 14:42
Card picture and name can't be changed using a single card method, but considering DotP represents a card game, real cards can't change their pictures or names either.
Utimately, since we don't have access to the source code of the DotP game and can't make changes to the engine itself for some cards we have to decide what we can sacrifice to implement the card. Personally, I'm fine with sacrificing some things that are visual to get the abilities working and keep problems to a minimum.
Utimately, since we don't have access to the source code of the DotP game and can't make changes to the engine itself for some cards we have to decide what we can sacrifice to implement the card. Personally, I'm fine with sacrificing some things that are visual to get the abilities working and keep problems to a minimum.
Just getting started: Xander9009's DotP 2014 Community Wad
Need a deck builder: DotP 2014 Deck Builder
Problems Modding: DotP 2014 Frequent Modding Mistakes
Need a deck builder: DotP 2014 Deck Builder
Problems Modding: DotP 2014 Frequent Modding Mistakes
- RiiakShiNal
- Programmer
- Posts: 2188
- Joined: 16 May 2011, 21:37
- Has thanked: 75 times
- Been thanked: 497 times
Re: Age of Dodekatheon - NEW UPDATED 10/12/2013 (48 cards)
by NeoAnderson » 13 Oct 2013, 15:53
I perfectly understand your meaning, and you're right, for this reason i am implementing your code inside Horae and now i am testing it. This code will help me a lot because in this way i haven't to manage counters and other aspect of the phases, like summon sickness, countering etc..etc..
Just last two question :
1) When you said : "Then copy it for ZONE_EXILE to eliminate any P/T setting bugs and allow it to keep any settings it should have while outside of the battlefield." have i to repeat the code with ZONE_EXILE instead of ZONE_ANY or ZONE_BATTELFIELD? (I suppose you are referring to the second one, because the ability is already active to ANY ZONES)
2)When we grant an ability the text is added as Blue text. Normally the card text is resized until the minimum size to avoid the scroll bar. There is anything i can do to make the added Blue text to be resized to avoid the scroll bar?? Because it seems to be added in normal size also if the card have the possibility to resize it.
Just last two question :
1) When you said : "Then copy it for ZONE_EXILE to eliminate any P/T setting bugs and allow it to keep any settings it should have while outside of the battlefield." have i to repeat the code with ZONE_EXILE instead of ZONE_ANY or ZONE_BATTELFIELD? (I suppose you are referring to the second one, because the ability is already active to ANY ZONES)
2)When we grant an ability the text is added as Blue text. Normally the card text is resized until the minimum size to avoid the scroll bar. There is anything i can do to make the added Blue text to be resized to avoid the scroll bar?? Because it seems to be added in normal size also if the card have the possibility to resize it.
- NeoAnderson
- Posts: 914
- Joined: 10 Sep 2013, 07:49
- Has thanked: 18 times
- Been thanked: 139 times
Re: Age of Dodekatheon - NEW UPDATED 10/12/2013 (48 cards)
by RiiakShiNal » 13 Oct 2013, 22:30
ZONE_ANY covers all zones except ZONE_EXILE, so if you want the abilities that should show outside of the battlefield to show on the card in exile then you need to copy the STATIC_ABILITY for ZONE_EXILE. An example of where this bug can be found is in official cards that set the P/T of the creature to something based on what is in players' hands or on the battlefield like Drove of Elves, Dungrove Elder, Geist-Honored Monk, Heedless One, Krovikan Mist, Multani, Maro-Sorcerer, Nightmare, and Primalcrux. This bug was first pointed out by thefiremind when he was testing Duplicant. All those cards have a STATIC_ABILITY with active_zone="ZONE_ANY", but when exiled that ability doesn't run. If the ability is copied and the copy is set to run in ZONE_EXILE the bug is fixed (you can see this in the core fixes v1.11).NeoAnderson wrote:1) When you said : "Then copy it for ZONE_EXILE to eliminate any P/T setting bugs and allow it to keep any settings it should have while outside of the battlefield." have i to repeat the code with ZONE_EXILE instead of ZONE_ANY or ZONE_BATTELFIELD? (I suppose you are referring to the second one, because the ability is already active to ANY ZONES)
As far as I know the only way to avoid the scroll bar is to not add abilities beyond what could show on the card without a scroll bar. Scroll bars on cards is controlled by the game engine (which we have no control over). The game engine considers regular ability (abilities without resource_id) text as an intrinsic part of the card and since it is based on a card game all of that text should be visible on the card without a scroll bar. Text that is added to a card through GrantAbility() is considered extra text that is not normally part of the card and if enough of that text is added it would extend beyond what would normally be on that box for the card so to keep things readable with a potentially unlimited amount of text it just defaults to the scroll bar.NeoAnderson wrote:2)When we grant an ability the text is added as Blue text. Normally the card text is resized until the minimum size to avoid the scroll bar. There is anything i can do to make the added Blue text to be resized to avoid the scroll bar?? Because it seems to be added in normal size also if the card have the possibility to resize it.
This is another of those points where you have to choose which is more important; the way the text looks on the card or how the card functions. Granted it is possible to summon a token with all black text and exile the original card allowing for you to avoid the scrollbar, but is it worth the extra effort and code? The answer is up to you as you are the mod developer and there is no one right answer.
Just getting started: Xander9009's DotP 2014 Community Wad
Need a deck builder: DotP 2014 Deck Builder
Problems Modding: DotP 2014 Frequent Modding Mistakes
Need a deck builder: DotP 2014 Deck Builder
Problems Modding: DotP 2014 Frequent Modding Mistakes
- RiiakShiNal
- Programmer
- Posts: 2188
- Joined: 16 May 2011, 21:37
- Has thanked: 75 times
- Been thanked: 497 times
Re: Age of Dodekatheon - NEW UPDATED 10/14/2013 (49 cards)
by NeoAnderson » 13 Oct 2013, 23:39
As always thanks Riiak, i perfectly understand your explanation about the Core's bug. I already coded the card and i don't need to add some particular ability to be reported into exile zone, but it will help for future cards.
About my questions about the look, this is just because i have few knowledge of DOTP and programming, so i always try to make the better result, and i don't want that my gaps , bring me on the wrong way. Many times i try to find the answer by myself through searching on the forum or inside the other cards' code, but Your answers are more specific and detailed!
So for now thanks of all your time and kindness, and if you want to take a look to these cards to let me know what you think i would be really glad.
About my questions about the look, this is just because i have few knowledge of DOTP and programming, so i always try to make the better result, and i don't want that my gaps , bring me on the wrong way. Many times i try to find the answer by myself through searching on the forum or inside the other cards' code, but Your answers are more specific and detailed!
So for now thanks of all your time and kindness, and if you want to take a look to these cards to let me know what you think i would be really glad.
- NeoAnderson
- Posts: 914
- Joined: 10 Sep 2013, 07:49
- Has thanked: 18 times
- Been thanked: 139 times
Re: Age of Dodekatheon - NEW UPDATED 10/15/2013 (51 cards)
by MysteryMindX » 16 Oct 2013, 16:17
Why after casting Poseidon it returns right back to my hand?
- MysteryMindX
- Posts: 10
- Joined: 28 Sep 2013, 19:08
- Has thanked: 1 time
- Been thanked: 0 time
Who is online
Users browsing this forum: No registered users and 3 guests