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




Formal Request Thread
Moderator: CCGHQ Admins
Re: Formal Request Thread
by Xander9009 » 25 Sep 2014, 13:26
I've accounted for the first scenario, already. If it doesn't work as is, I might have to redo it slightly, but it checks when a colorless token leaves the battlefield, and if at any point there are fewer tokens than the current number of creatures that you can grant haste, it drops that number to the number of colorless tokens. If you cast a sol ring, you end up with one colorless mana, at which point the code lowers the number of creatures remaining to 1 even though it hasn't granted haste to anything yet.RiiakShiNal wrote:There are more problems with your method as for example if you use Generator Servant and then cast a Sol Ring which you then tapped so you could cast 3 copies of Arcbound Worker. Your method would give 2 of those Arcbound Workers haste even though only 1 should get it. The case here is that you aren't considering that the mana was used for something that isn't a creature.
Another problem you be if you manually produced amana and then used Generator Servant and cast in this order Soul Warden and 2 copies of Arcbound Worker the Soul Warden and 1 Arcbound Worker would get haste instead of the correct case where both Arcbound Workers would get haste. The problem here is that you aren't considering the case where the player casts a creature that doesn't colourless mana.
Another case would be if you used some of the colourless mana for an ability to say generate coloured mana to use to cast a spell (such as passing it into a Dimir Signet to then cast a Tidehollow Strix). You can have any amount of mana in the pool at any given time (up to 100 of each type as that is a hardcoded limit on tokens placed by the engine) as such any specific mana can be used for anything. For example if you are hoarding mana with Upwelling you aren't even guaranteed to use that mana in that turn it could be much later that you actually end up using it.
So in short yes, my method is more reliable and will behave better in most cases at the moment. Yes, it has issues with fringe cases where a user would want to save the mana and/or split it up to cast multiple creatures, but it behaves better in other cases where some of that mana would get used for some other reason such as increasing the amount of mana available, not using it for creatures without colourless mana, converting it to coloured mana, etc....
I accounted for the second scenario, already, too. When a player considers a card for casting, I count the colorless mana, then when they cast a card, if it's the one that was just considered, it counts the colorless mana again to see if any colorless mana was used, and if so, it decrements the creatures remaining and waits for it to resolve. If it resolves, it gives the resulting creature haste.
The third one does need accounted for. I even thought about that specifically but didn't consider that it wouldn't work if the player tapped it for mana while they still had the previous mana. That's an easy fix, though. Just changing the set_int to int_inc should correct that (well, not the set_int that reset everything, but the set_int that gets it ready).
_______________________________
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
Re: Formal Request Thread
by Hacker85 » 25 Sep 2014, 14:05
the cards are now looking like this with the following problemsXander9009 wrote:Back from the Brink: It's probably not possible for a perfect card, but with a lot of work you might be able to approximate it.Hacker85 wrote:im making the Innistrad Set Cards which werent made from any other modders. ive done most of them now, but havent testet them. when i know they all work properly im going to share it.
but i need some help with some harder cards so maybe someone can help.
the missing cards are:
Back from the Brink (almost impossible)
Divine Reckoning
Runic Repetition
Stitcher’s Apprentice
Stony Silence (impossible)
some help would be niceRunic Repetition: I don't think we can target exiled cards.
- Divine Reckoning | Open
- Code: Select all
<RESOLUTION_TIME_ACTION repeating="1">
local n = MTG():GetActionRepCount()
local num_Players = MTG():GetNumberOfPlayers()
if (n < num_Players) then
local player = MTG():GetNthPlayer(n)
local filter = ClearFilter()
filter:Add(FE_CONTROLLER, OP_IS, player)
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
local numItemsToSacrifice = filter:Count() - EffectDC():Get_Int(0)
player:SetItemCount( 1 )
player:SetItemPrompt( 0, "CARD_QUERY_CHOOSE_CREATURE" )
player:ChooseItems( EffectDC():Make_Targets(n+1) )
return true
else
for i = 0, (num_Players-1) do
local player = MTG():GetNthPlayer(n)
local targetDC = EffectDC():Get_Targets(i+1)
local filter = ClearFilter()
filter:Add(FE_CONTROLLER, OP_IS, player)
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
local Count = filter:EvaluateObjects()
for i=0,(Count-1) do
local Card = filter:GetNthEvaluatedObject(i)
if Card ~= nil and Card ~= targetDC:Get_CardPtr(0) then
Card:Destroy()
end
end
end
return false
end
</RESOLUTION_TIME_ACTION>Note that you should change all instances of 909017 in the above card and token to a unique number for your mod.
- Stitcher’s Apprentice | Open
- Code: Select all
<ACTIVATED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{1}{U}, {T}: Put a 2/2 blue Homunculus creature token onto the battlefield, then sacrifice a creature.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[{1}{U}, {T} : Mettez sur le champ de bataille un jeton de créature 2/2 bleue Homoncule, puis sacrifiez une créature.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[{1}{U}, {T}: Pon en el campo de batalla una ficha de criatura Homúnculo azul 2/2, luego sacrifica una criatura.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[{1}{U}, {T}: Bringe einen 2/2 blauen Homunkulus-Kreaturenspielstein ins Spiel und opfere dann eine Kreatur.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[{1}{U}, {T}: Metti sul campo di battaglia una pedina creatura Omuncolo 2/2 blu, poi sacrifica una creatura.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[{1}{U}, {T}:青の2/2のホムンクルス・クリーチャー・トークンを1体戦場に出し、その後クリーチャーを1体生け贄に捧げる。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[{1}{U}, {T}: Put a 2/2 blue Homunculus creature token onto the battlefield, then sacrifice a creature.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[{1}{U}, {T}: положите на поле битвы одну фишку существа 2/2 синий Гомункул, затем пожертвуйте существо.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[{1}{U}, {T}: Coloque no campo de batalha uma ficha de criatura azul 2/2 do tipo Homúnculo e depois sacrifique uma criatura.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[{1}{U},{T}:将一个2/2蓝色造妖衍生生物放进战场,然后牺牲一个生物。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[{1}{U},{T}:將一個2/2藍色造妖衍生生物放進戰場,然後犧牲一個生物。]]></LOCALISED_TEXT>
<COST mana_cost="{1}{U}" type="Mana" />
<COST type="TapSelf" />
<RESOLUTION_TIME_ACTION>
MTG():PutTokensOntoBattlefield( "TOKEN_HOMUNCULUS_2_2_U_909017", 1, EffectController() )
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local filter = ClearFilter()
local subfilter = filter:AddSubFilter_Or()
filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
filter:Add( FE_CONTROLLER, OP_IS, EffectController() )
EffectController():ChooseItem( "CARD_QUERY_CHOOSE_CREATURE_TO_SACRIFICE", EffectDC():Make_Targets(0) )
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
if EffectDC() ~= nil then
local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
if target ~= nil then
EffectController():Sacrifice( target )
end
end
</RESOLUTION_TIME_ACTION>
</ACTIVATED_ABILITY>
<TOKEN_REGISTRATION reservation="1" type="TOKEN_HOMUNCULUS_2_2_U_909017" />
- Code: Select all
<?xml version="1.0"?>
<CARD_V2 ExportVersion="1">
<FILENAME text="TOKEN_HOMUNCULUS_2_2_U_909017" />
<CARDNAME text="HOMUNCULUS" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[HOMUNCULUS]]></LOCALISED_TEXT>
</TITLE>
<ARTID value="909017" />
<COLOUR value="U" />
<ARTIST name="Unknown" />
<CASTING_COST cost="" />
<TYPE metaname="Creature" />
<SUB_TYPE metaname="Homunculus" />
<EXPANSION value="DPI" />
<RARITY metaname="T" />
<POWER value="2" />
<TOUGHNESS value="2" />
<TOKEN />
<SFX text="COMBAT_CLAW_LARGE_ATTACK" power_boundary_min="4" power_boundary_max="-1" />
<SFX text="COMBAT_CLAW_SMALL_ATTACK" power_boundary_min="1" power_boundary_max="3" />
</CARD_V2>I haven't tested any of these. Let me know if any need fixed and I'll take a look.
- Stony Silence | Open
- Code: Select all
<CONTINUOUS_ACTION layer="8">
local filter = ClearFilter()
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_ARTIFACT)
local Count = filter:EvaluateObjects()
for i=0,(Count-1) do
local CurrentArtifact = filter:GetNthEvaluatedObject(i)
if CurrentArtifact ~= nil then
CurrentArtifact:GetCurrentCharacteristics():Bool_Set( CHARACTERISTIC_CANT_USE_ACTIVATED_ABILITIES, 1 )
end
end
</CONTINUOUS_ACTION>
Stony Silence
- Code: Select all
<CARD_V2 ExportVersion="1">
<FILENAME text="STONY_SILENCE_168247425" />
<CARDNAME text="STONY_SILENCE" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Stony Silence]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Silence de pierre]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Silencio pétreo]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Steinerne Stille]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Silenzio di Pietra]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[石のような静寂]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Stony Silence]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Гробовое Молчание]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Silêncio Pétreo]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[沉重静寂]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[沈重靜寂]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="168247425" />
<ARTID value="168247425" />
<ARTIST name="Wayne England" />
<CASTING_COST cost="{1}{W}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Let moss grow over gargoyles]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Puisse la mousse recouvrir les gargouilles]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Deja que el musgo crezca sobre las gárgolas.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Moos über Gargoylen wachsen lassen]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Lasciar crescere il muschio sui gargoyle]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[ガーゴイルを苔むさせる。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Let moss grow over gargoyles]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Пусть горгульи порастут мхом.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Deixe o musgo crescer sobre as gárgulas.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[就让石像鬼生苔。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[就讓石像鬼生苔。]]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="Enchantment" />
<EXPANSION value="ISD" />
<RARITY metaname="R" />
<STATIC_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Activated abilities of artifacts can’t be activated.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Les capacités activées des artefacts ne peuvent pas être activées.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Las habilidades activadas de los artefactos no pueden ser activadas.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Aktivierte Fähigkeiten von Artefakten können nicht aktiviert werden.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Le abilità attivate degli artefatti non possono essere attivate.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[アーティファクトの起動型能力は起動できない。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Activated abilities of artifacts can’t be activated.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Активируемые способности артефактов не могут быть активированы.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[As habilidades ativadas de artefatos não podem ser ativadas.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[不能起动神器的起动式异能。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[不能起動神器的起動式異能。]]></LOCALISED_TEXT>
<CONTINUOUS_ACTION layer="8">
local filter = ClearFilter()
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_ARTIFACT)
local Count = filter:EvaluateObjects()
for i=0,(Count-1) do
local CurrentArtifact = filter:GetNthEvaluatedObject(i)
if CurrentArtifact ~= nil then
CurrentArtifact:GetCurrentCharacteristics():Bool_Set( CHARACTERISTIC_CANT_USE_ACTIVATED_ABILITIES, 1 )
end
end
</CONTINUOUS_ACTION>
</STATIC_ABILITY>
</CARD_V2>
Divine Reckoning
- Code: Select all
<?xml version="1.0"?>
<CARD_V2 ExportVersion="1">
<FILENAME text="DIVINE_RECKONING_168245196" />
<CARDNAME text="DIVINE_RECKONING" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Divine Reckoning]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Jugement divin]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Venganza divina]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Göttliche Abrechnung]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Giudizio Divino]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[神聖なる報い]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Divine Reckoning]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Божественный Расчет]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Ajuste de Contas Divino]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[神圣报应]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[神聖報應]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="168245196" />
<ARTID value="168245196" />
<ARTIST name="Greg Staples" />
<CASTING_COST cost="{2}{W}{W}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Survival of the purest.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[La loi du plus pur.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Supervivencia de los más puros.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Die Reinsten überleben.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Sopravvivenza dei più puri.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[聖者生存。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Survival of the purest.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Выживает чистейший.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Seleção sobrenatural.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[纯者生存。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[純者生存。]]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="Sorcery" />
<EXPANSION value="ISD" />
<RARITY metaname="R" />
<SPELL_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Each player chooses a creature he or she controls. Destroy the rest.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Chaque joueur choisit une créature qu’il contrôle. Détruisez le reste.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Cada jugador elige una criatura que controla. Destruye el resto.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Jeder Spieler bestimmt eine Kreatur, die er kontrolliert. Zerstöre den Rest.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Ogni giocatore sceglie una creatura che controlla. Distruggi le altre.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[各プレイヤーは。自分がコントロールするクリーチャーを1体選ぶ。 残りを破壊する。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Each player chooses a creature he or she controls. Destroy the rest.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Каждый игрок выбирает существо под своим контролем. Уничтожьте все остальные.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Cada jogador escolhe uma criatura que ele controla. Destrua o restante.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[每位牌手各选择一个由他操控的生物。 将其它的消灭。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[每位玩家各選擇一個由他操控的生物。 將其它的消滅。]]></LOCALISED_TEXT>
<RESOLUTION_TIME_ACTION repeating="1">
local n = MTG():GetActionRepCount()
local num_Players = MTG():GetNumberOfPlayers()
if (n < num_Players) then
local player = MTG():GetNthPlayer(n)
local filter = ClearFilter()
filter:Add(FE_CONTROLLER, OP_IS, player)
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
local numItemsToSacrifice = filter:Count() - EffectDC():Get_Int(0)
player:SetItemCount( 1 )
player:SetItemPrompt( 0, "CARD_QUERY_CHOOSE_CREATURE" )
player:ChooseItems( EffectDC():Make_Targets(n+1) )
return true
else
for i = 0, (num_Players-1) do
local player = MTG():GetNthPlayer(n)
local targetDC = EffectDC():Get_Targets(i+1)
local filter = ClearFilter()
filter:Add(FE_CONTROLLER, OP_IS, player)
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
local Count = filter:EvaluateObjects()
for i=0,(Count-1) do
local Card = filter:GetNthEvaluatedObject(i)
if Card ~= nil and Card ~= targetDC:Get_CardPtr(0) then
Card:Destroy()
end
end
end
return false
end
</RESOLUTION_TIME_ACTION>
<SPELL_ABILITY>
<UTILITY_ABILITY qualifier="Flashback" active_zone="ZONE_GRAVEYARD">
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Flashback {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Flashback {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Retrospectiva {5}{W}{W}.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Rückblende {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Flashback {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[フラッシュバック {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Flashback {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Воспоминание {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Recapitular {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[返照{5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[返照{5}{W}{W}]]></LOCALISED_TEXT>
<COST mana_cost="{5}{W}{W}" type="Mana" />
</UTILITY_ABILITY>
<HELP title="MORE_INFO_TITLE_FLASHBACK" body="MORE_INFO_BODY_FLASHBACK" zone="ZONE_ANY" />
</CARD_V2>
Stitchers Apprentice
- Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
<FILENAME text="STITCHERS_APPRENTICE_168220631" />
<CARDNAME text="STITCHERS_APPRENTICE" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Stitcher’s Apprentice]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Apprenti du raccommodeur]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Aprendiz de suturador]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Lehrling des Nähers]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Apprendista del Cucitore]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[縫い師の見習い]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Stitcher’s Apprentice]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Ученик Сшивателя]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Aprendiz de Suturador]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="168220631" />
<ARTID value="168220631" />
<ARTIST name="Johann Bodin" />
<CASTING_COST cost="{1}{U}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[“Oglor create life, Oglor take it away. Oglor god! . . . until Master return.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[« Oglor crée vie. Oglor détruit vie. Oglor dieu ! . . . jusqu’au retour de Maître. »]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[“Oglor crea vida, Oglor la quita. ¡Oglor dios! ...hasta que el amo regrese.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[„Oglor erzeugen Leben, Oglor nehmen es wieder weg. Oglor ist sich Gott! ... bis Meister wieder zurück.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[“Oglor crea vita, Oglor la toglie. Oglor è dio! . . . fino a ritorno del Padrone.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[「オグロール、生命作る、オグロール、それ奪う。 オグロール、神! ……主人戻るまで。」]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[“Oglor create life, Oglor take it away. Oglor god! . . . until Master return.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[«Оглор создает жизнь, Оглор ее отбирает. Оглор — бог! ...пока не вернется Хозяин».]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[“Oglor criar vida, Oglor tomar vida. Oglor deus! ...até o retorno do Mestre.”]]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="Creature" />
<SUB_TYPE metaname="Homunculus" />
<EXPANSION value="ISD" />
<RARITY metaname="C" />
<POWER value="1" />
<TOUGHNESS value="2" />
<ACTIVATED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{1}{U}, {T}: Put a 2/2 blue Homunculus creature token onto the battlefield, then sacrifice a creature.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[{1}{U}, {T} : Mettez sur le champ de bataille un jeton de créature 2/2 bleue Homoncule, puis sacrifiez une créature.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[{1}{U}, {T}: Pon en el campo de batalla una ficha de criatura Homúnculo azul 2/2, luego sacrifica una criatura.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[{1}{U}, {T}: Bringe einen 2/2 blauen Homunkulus-Kreaturenspielstein ins Spiel und opfere dann eine Kreatur.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[{1}{U}, {T}: Metti sul campo di battaglia una pedina creatura Omuncolo 2/2 blu, poi sacrifica una creatura.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[{1}{U}, {T}:青の2/2のホムンクルス・クリーチャー・トークンを1体戦場に出し、その後クリーチャーを1体生け贄に捧げる。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[{1}{U}, {T}: Put a 2/2 blue Homunculus creature token onto the battlefield, then sacrifice a creature.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[{1}{U}, {T}: положите на поле битвы одну фишку существа 2/2 синий Гомункул, затем пожертвуйте существо.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[{1}{U}, {T}: Coloque no campo de batalha uma ficha de criatura azul 2/2 do tipo Homúnculo e depois sacrifique uma criatura.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[{1}{U},{T}:将一个2/2蓝色造妖衍生生物放进战场,然后牺牲一个生物。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[{1}{U},{T}:將一個2/2藍色造妖衍生生物放進戰場,然後犧牲一個生物。]]></LOCALISED_TEXT>
<COST mana_cost="{1}{U}" type="Mana" />
<COST type="TapSelf" />
<RESOLUTION_TIME_ACTION>
MTG():PutTokensOntoBattlefield( "TOKEN_HOMUNCULUS_2_2_U_909017", 1, EffectController() )
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local filter = ClearFilter()
local subfilter = filter:AddSubFilter_Or()
filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
filter:Add( FE_CONTROLLER, OP_IS, EffectController() )
EffectController():ChooseItem( "CARD_QUERY_CHOOSE_CREATURE_TO_SACRIFICE", EffectDC():Make_Targets(0) )
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
if EffectDC() ~= nil then
local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
if target ~= nil then
EffectController():Sacrifice( target )
end
end
</RESOLUTION_TIME_ACTION>
</ACTIVATED_ABILITY>
<TOKEN_REGISTRATION reservation="1" type="TOKEN_HOMUNCULUS_2_2_U_909017" />
<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>
Re: Formal Request Thread
by Xander9009 » 25 Sep 2014, 16:07
Hacker85 wrote:The cards are now looking like this with the following problems
Stony SilenceNot shown in Deckbuilder
- Code: Select all
snip
Divine ReckoningAlso not shown in Deckbuilder
- Code: Select all
snip
Stitchers ApprenticeIt generates the token but i dont need to sacrifie anything
- Code: Select all
snip
- Stony Silence | Open
- Code: Select all
<CARD_V2 ExportVersion="1">
<FILENAME text="STONY_SILENCE_CW_247425" />
<CARDNAME text="STONY_SILENCE" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Stony Silence]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Silence de pierre]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Silencio pétreo]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Steinerne Stille]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Silenzio di Pietra]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[石のような静寂]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Stony Silence]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Гробовое Молчание]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Silêncio Pétreo]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[沉重静寂]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[沈重靜寂]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="247425" />
<ARTID value="CW247425" />
<ARTIST name="Wayne England" />
<CASTING_COST cost="{1}{W}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Let moss grow over gargoyles]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Puisse la mousse recouvrir les gargouilles]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Deja que el musgo crezca sobre las gárgolas.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Moos über Gargoylen wachsen lassen]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Lasciar crescere il muschio sui gargoyle]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[ガーゴイルを苔むさせる。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Let moss grow over gargoyles]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Пусть горгульи порастут мхом.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Deixe o musgo crescer sobre as gárgulas.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[就让石像鬼生苔。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[就讓石像鬼生苔。]]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="Enchantment" />
<EXPANSION value="ISD" />
<RARITY metaname="R" />
<STATIC_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Activated abilities of artifacts can’t be activated.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Les capacités activées des artefacts ne peuvent pas être activées.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Las habilidades activadas de los artefactos no pueden ser activadas.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Aktivierte Fähigkeiten von Artefakten können nicht aktiviert werden.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Le abilità attivate degli artefatti non possono essere attivate.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[アーティファクトの起動型能力は起動できない。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Activated abilities of artifacts can’t be activated.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Активируемые способности артефактов не могут быть активированы.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[As habilidades ativadas de artefatos não podem ser ativadas.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[不能起动神器的起动式异能。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[不能起動神器的起動式異能。]]></LOCALISED_TEXT>
<CONTINUOUS_ACTION layer="8">
local filter = ClearFilter()
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_ARTIFACT)
local Count = filter:EvaluateObjects()
for i=0,(Count-1) do
local CurrentArtifact = filter:GetNthEvaluatedObject(i)
if CurrentArtifact ~= nil then
CurrentArtifact:GetCurrentCharacteristics():Bool_Set( CHARACTERISTIC_CANT_USE_ACTIVATED_ABILITIES, 1 )
end
end
</CONTINUOUS_ACTION>
</STATIC_ABILITY>
</CARD_V2>
- Stitcher's Apprentice | Open
- Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
<FILENAME text="STITCHERS_APPRENTICE_CW_220631" />
<CARDNAME text="STITCHERS_APPRENTICE" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Stitcher’s Apprentice]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Apprenti du raccommodeur]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Aprendiz de suturador]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Lehrling des Nähers]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Apprendista del Cucitore]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[縫い師の見習い]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Stitcher’s Apprentice]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Ученик Сшивателя]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Aprendiz de Suturador]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="220631" />
<ARTID value="CW220631" />
<ARTIST name="Johann Bodin" />
<CASTING_COST cost="{1}{U}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[“Oglor create life, Oglor take it away. Oglor god! . . . until Master return.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[« Oglor crée vie. Oglor détruit vie. Oglor dieu ! . . . jusqu’au retour de Maître. »]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[“Oglor crea vida, Oglor la quita. ¡Oglor dios! ...hasta que el amo regrese.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[„Oglor erzeugen Leben, Oglor nehmen es wieder weg. Oglor ist sich Gott! ... bis Meister wieder zurück.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[“Oglor crea vita, Oglor la toglie. Oglor è dio! . . . fino a ritorno del Padrone.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[「オグロール、生命作る、オグロール、それ奪う。 オグロール、神! ……主人戻るまで。」]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[“Oglor create life, Oglor take it away. Oglor god! . . . until Master return.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[«Оглор создает жизнь, Оглор ее отбирает. Оглор — бог! ...пока не вернется Хозяин».]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[“Oglor criar vida, Oglor tomar vida. Oglor deus! ...até o retorno do Mestre.”]]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="Creature" />
<SUB_TYPE metaname="Homunculus" />
<EXPANSION value="ISD" />
<RARITY metaname="C" />
<POWER value="1" />
<TOUGHNESS value="2" />
<ACTIVATED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{1}{U}, {T}: Put a 2/2 blue Homunculus creature token onto the battlefield, then sacrifice a creature.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[{1}{U}, {T} : Mettez sur le champ de bataille un jeton de créature 2/2 bleue Homoncule, puis sacrifiez une créature.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[{1}{U}, {T}: Pon en el campo de batalla una ficha de criatura Homúnculo azul 2/2, luego sacrifica una criatura.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[{1}{U}, {T}: Bringe einen 2/2 blauen Homunkulus-Kreaturenspielstein ins Spiel und opfere dann eine Kreatur.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[{1}{U}, {T}: Metti sul campo di battaglia una pedina creatura Omuncolo 2/2 blu, poi sacrifica una creatura.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[{1}{U}, {T}:青の2/2のホムンクルス・クリーチャー・トークンを1体戦場に出し、その後クリーチャーを1体生け贄に捧げる。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[{1}{U}, {T}: Put a 2/2 blue Homunculus creature token onto the battlefield, then sacrifice a creature.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[{1}{U}, {T}: положите на поле битвы одну фишку существа 2/2 синий Гомункул, затем пожертвуйте существо.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[{1}{U}, {T}: Coloque no campo de batalha uma ficha de criatura azul 2/2 do tipo Homúnculo e depois sacrifique uma criatura.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[{1}{U},{T}:将一个2/2蓝色造妖衍生生物放进战场,然后牺牲一个生物。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[{1}{U},{T}:將一個2/2藍色造妖衍生生物放進戰場,然後犧牲一個生物。]]></LOCALISED_TEXT>
<COST mana_cost="{1}{U}" type="Mana" />
<COST type="TapSelf" />
<RESOLUTION_TIME_ACTION>
MTG():PutTokensOntoBattlefield( "TOKEN_HOMUNCULUS_C_2_2_U_CW_1", 1, EffectController() )
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local filter = ClearFilter()
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
filter:Add( FE_CONTROLLER, OP_IS, EffectController() )
EffectController():ChooseItem( "CARD_QUERY_CHOOSE_CREATURE_TO_SACRIFICE", EffectDC():Make_Targets(0) )
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local creature = EffectDC():Get_Targets(0):Get_CardPtr(0)
if creature ~= nil then
EffectController():Sacrifice(creature)
end
</RESOLUTION_TIME_ACTION>
</ACTIVATED_ABILITY>
<TOKEN_REGISTRATION reservation="1" type="TOKEN_HOMUNCULUS_C_2_2_U_CW_1" />
<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>
- Divine Reckoning | Open
- Code: Select all
<?xml version="1.0"?>
<CARD_V2 ExportVersion="1">
<FILENAME text="DIVINE_RECKONING_CW_245196" />
<CARDNAME text="DIVINE_RECKONING" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Divine Reckoning]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Jugement divin]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Venganza divina]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Göttliche Abrechnung]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Giudizio Divino]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[神聖なる報い]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Divine Reckoning]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Божественный Расчет]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Ajuste de Contas Divino]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[神圣报应]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[神聖報應]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="245196" />
<ARTID value="CW245196" />
<ARTIST name="Greg Staples" />
<CASTING_COST cost="{2}{W}{W}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Survival of the purest.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[La loi du plus pur.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Supervivencia de los más puros.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Die Reinsten überleben.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Sopravvivenza dei più puri.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[聖者生存。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Survival of the purest.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Выживает чистейший.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Seleção sobrenatural.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[纯者生存。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[純者生存。]]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="Sorcery" />
<EXPANSION value="ISD" />
<RARITY metaname="R" />
<SPELL_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Each player chooses a creature he or she controls. Destroy the rest.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Chaque joueur choisit une créature qu’il contrôle. Détruisez le reste.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Cada jugador elige una criatura que controla. Destruye el resto.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Jeder Spieler bestimmt eine Kreatur, die er kontrolliert. Zerstöre den Rest.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Ogni giocatore sceglie una creatura che controlla. Distruggi le altre.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[各プレイヤーは。自分がコントロールするクリーチャーを1体選ぶ。 残りを破壊する。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Each player chooses a creature he or she controls. Destroy the rest.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Каждый игрок выбирает существо под своим контролем. Уничтожьте все остальные.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Cada jogador escolhe uma criatura que ele controla. Destrua o restante.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[每位牌手各选择一个由他操控的生物。 将其它的消灭。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[每位玩家各選擇一個由他操控的生物。 將其它的消滅。]]></LOCALISED_TEXT>
<RESOLUTION_TIME_ACTION repeating="1">
local n = MTG():GetActionRepCount()
local num_Players = MTG():GetNumberOfPlayers()
if (n < num_Players) then
local player = MTG():GetNthPlayer(n)
local filter = ClearFilter()
filter:Add(FE_CONTROLLER, OP_IS, player)
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
local Count = filter:Count()
if Count > 0 then
player:SetItemCount( 1 )
player:SetItemPrompt( 0, "CARD_QUERY_CHOOSE_CREATURE" )
player:ChooseItems( EffectDC():Make_Targets(n+1) )
end
return true
else
for i = 0, (num_Players-1) do
local player = MTG():GetNthPlayer(i)
local targetDC = EffectDC():Get_Targets(i+1)
local filter = ClearFilter()
filter:Add(FE_CONTROLLER, OP_IS, player)
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
Count = filter:Count()
filter:EvaluateObjects()
EffectController():DisplayMessage("Player "..i.." has "..Count.." creatures.")
if Count > 0 then
for j=0,(Count-1) do
local Card = filter:GetNthEvaluatedObject(j)
if Card ~= nil and Card ~= targetDC:Get_CardPtr(0) then
Card:Destroy()
EffectController():DisplayMessage("Destroyed player "..i.."'s creature; number: "..j)
elseif Card == nil then
EffectController():DisplayMessage("Player "..i.."'s creature number: "..j.." was nil.")
else
EffectController():DisplayMessage("Player "..i.."'s creature number: "..j.." was their chosen creature.")
end
end
end
end
return false
end
</RESOLUTION_TIME_ACTION>
</SPELL_ABILITY>
<UTILITY_ABILITY qualifier="Flashback" active_zone="ZONE_GRAVEYARD">
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Flashback {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Flashback {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Retrospectiva {5}{W}{W}.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Rückblende {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Flashback {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[フラッシュバック {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Flashback {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Воспоминание {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Recapitular {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[返照{5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[返照{5}{W}{W}]]></LOCALISED_TEXT>
<COST mana_cost="{5}{W}{W}" type="Mana" />
</UTILITY_ABILITY>
<HELP title="MORE_INFO_TITLE_FLASHBACK" body="MORE_INFO_BODY_FLASHBACK" zone="ZONE_ANY" />
</CARD_V2>
_______________________________
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
Re: Formal Request Thread
by sumomole » 25 Sep 2014, 16:24
I convert the functions of Flash from 2013 to 2014, and try to use it for Back from the Brink, hope it works.
this idea from TFM, I don't remember what he had wanted, finally I used to code Flash.
this idea from TFM, I don't remember what he had wanted, finally I used to code Flash.

- Back from the Brink | Open
- Code: Select all
<?xml version="1.0"?>
<CARD_V2 ExportVersion="1">
<FILENAME text="BACK_FROM_THE_BRINK_249663" />
<CARDNAME text="BACK_FROM_THE_BRINK" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Back from the Brink]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Retour de la mort]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Regresar del umbral]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Zurück vom Abgrund]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Ritorno dal Baratro]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[瀬戸際からの帰還]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Back from the Brink]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Возвращение с Края Пропасти]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Voltar do Abismo]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[边缘归来]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[邊緣歸來]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="249663" />
<ARTID value="249663" />
<ARTIST name="Anthony Palumbo" />
<CASTING_COST cost="{4}{U}{U}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[On Innistrad, death is just a career change.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Sur Innistrad, la mort n’est qu’un changement de carrière.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[En Innistrad, la muerte es solo un cambio de profesión.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[In Innistrad ist der Tod nur ein Berufswechsel.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[In Innistrad, la morte non è altro che una diversa carriera.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[イニストラードでは、死は転職に過ぎない。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[On Innistrad, death is just a career change.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[В Иннистраде смерть — лишь смена занятия.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Em Innistrad, a morte é apenas uma mudança de carreira.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[在依尼翠,死亡只是转职。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[在依尼翠,死亡只是轉職。]]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="Enchantment" />
<EXPANSION value="DPI" />
<RARITY metaname="R" />
<ACTIVATED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Exile a creature card from your graveyard and pay its mana cost: Put a token onto the battlefield that’s a copy of that card. Activate this ability only any time you could cast a sorcery.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Exilez une carte de créature de votre cimetière et payez son coût de mana : Mettez sur le champ de bataille un jeton qui est une copie de cette carte. N’activez cette capacité que lorsque vous pourriez lancer un rituel.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Exiliar una carta de criatura de tu cementerio y pagar su coste de maná: Pon en el campo de batalla una ficha de criatura que es una copia de esa carta. Activa esta habilidad sólo cuando puedas lanzar un conjuro.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Schicke eine Kreaturenkarte aus deinem Friedhof ins Exil und bezahle ihre Manakosten: Bringe einen Spielstein ins Spiel, der eine Kopie dieser Karte ist. Aktiviere diese Fähigkeit nur zu einem Zeitpunkt, zu dem du auch eine Hexerei wirken könntest.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Esilia una carta creatura dal tuo cimitero e pagane il costo di mana: Metti sul campo di battaglia una pedina che è una copia di quella carta. Attiva questa abilità solo quando potresti lanciare una stregoneria.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[あなたの墓地にあるクリーチャー・カードを1枚追放し、それのマナ・コストを支払う:そのカードのコピーであるトークンを1体戦場に出す。 この能力は、あなたがソーサリーを唱えられるときにのみ起動できる。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Exile a creature card from your graveyard and pay its mana cost: Put a token onto the battlefield that’s a copy of that card. Activate this ability only any time you could cast a sorcery.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Изгоните карту существа из вашего кладбища и заплатите ее мана-стоимость: положите на поле битвы одну фишку, являющуюся копией той карты. Активируйте эту способность только при возможности разыгрывать волшебство.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Exile um card de criatura de seu cemitério e pague seu custo de mana: Coloque no campo de batalha uma ficha que seja uma cópia daquele card. Ative esta habilidade somente nos momentos em que poderia conjurar um feitiço.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[从你的坟墓场放逐一张生物牌并支付其法术力费用:将一个衍生物放进战场,且为该牌的复制品。 你只可以于你能施放法术的时机下起动此异能。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[從你的墳墓場放逐一張生物牌並支付其魔法力費用:將一個衍生物放進戰場,且為該牌的複製品。 你只可以於你能施放巫術的時機下起動此異能。]]></LOCALISED_TEXT>
<COST type="Generic">
<PREREQUISITE>
local player = EffectController()
local number = player:Graveyard_Count()
for i=0,(number-1) do
local card = player:Graveyard_GetNth(i)
if card ~= nil and card:GetCardType():Test(CARD_TYPE_CREATURE) then
local mana = S_GetManaCostString(card, EffectController(), 0)
if EffectController():CanPayManaCost(mana) then
return true
end
end
end
return false
</PREREQUISITE>
<RESOLUTION_TIME_ACTION>
local answerDC = EffectDC():Make_Targets(0)
local queryDC = EffectDC():Make_Chest(1)
local player = EffectController()
local number = player:Graveyard_Count()
for i=0,(number-1) do
local card = player:Graveyard_GetNth(i)
if card ~= nil then
queryDC:Set_CardPtr(i, card)
local mana = S_GetManaCostString(card, EffectController(), 0)
if not (card:GetCardType():Test(CARD_TYPE_CREATURE) and EffectController():CanPayManaCost(mana)) then
queryDC:QueryUnselect_CardPtr(i)
end
else
break
end
end
player:ChooseItemFromDC( "CARD_QUERY_CHOOSE_CARD_TO_EXILE_FROM_A_GRAVEYARD", queryDC, answerDC )
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local targetCard = EffectDC():Get_Targets(0):Get_CardPtr(0)
if targetCard ~= nil then
EffectDC():Get_Targets(0):Protect_CardPtr(0)
targetCard:Exile()
end
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local targetCard = EffectDC():Get_Targets(0):Get_CardPtr(0)
if targetCard ~= nil then
local mana = S_GetManaCostString(targetCard, EffectController(), 0)
EffectController():PayManaCost(mana)
end
</RESOLUTION_TIME_ACTION></COST>
<AVAILABILITY sorcery_time="1" />
<RESOLUTION_TIME_ACTION>
local targetCard = EffectDC():Get_Targets(0):Get_CardPtr(0)
if targetCard ~= nil then
MTG():PutTokenCopiesOntoBattlefield( targetCard, 1, EffectController() )
end
</RESOLUTION_TIME_ACTION>
<AI_SIMPLIFIED_TARGETING compartment="0" hint="HINT_ALLIED" />
</ACTIVATED_ABILITY>
<AI_BASE_SCORE score="1050" zone="ZONE_BATTLEFIELD" />
</CARD_V2>
- functions | Open
- Code: Select all
S_GetNumOfColorSymbol = function(object, color)
local filter = ClearFilter()
filter:SetZone( ZONE_ANYWHERE )
filter:Add( FE_CARD_INSTANCE, OP_IS, object )
return filter:ChromaCount(color)
end
S_PhyrexianManaValue = function(object)
local value = 0
if (object:GetCardName() == "APOSTLES_BLESSING" or object:GetCardName() == "CATHEDRAL_MEMBRANE" or object:GetCardName() == "MARROW_SHARDS" or object:GetCardName() == "NORNS_ANNEX" or object:GetCardName() == "PORCELAIN_LEGIONNAIRE") then
value = 1
elseif (object:GetCardName() == "GITAXIAN_PROBE" or object:GetCardName() == "MENTAL_MISSTEP" or object:GetCardName() == "PHYREXIAN_METAMORPH" or object:GetCardName() == "SPINED_THOPTER" or object:GetCardName() == "TEZZERETS_GAMBIT") then
value = 2
elseif (object:GetCardName() == "DISMEMBER" or object:GetCardName() == "PITH_DRILLER" or object:GetCardName() == "POSTMORTEM_LUNGE" or object:GetCardName() == "SURGICAL_EXTRACTION" or object:GetCardName() == "VAULT_SKIRGE") then
value = 3
elseif (object:GetCardName() == "ACT_OF_AGGRESSION" or object:GetCardName() == "GUT_SHOT" or object:GetCardName() == "MOLTENSTEEL_DRAGON" or object:GetCardName() == "RAGE_EXTRACTOR" or object:GetCardName() == "RUTHLESS_INVASION" or object:GetCardName() == "SLASH_PANTHER") then
value = 4
elseif (object:GetCardName() == "BIRTHING_POD" or object:GetCardName() == "CORROSIVE_GALE" or object:GetCardName() == "MUTAGENIC_GROWTH" or object:GetCardName() == "NOXIOUS_REVIVAL" or object:GetCardName() == "THUNDERING_TANADON") then
value = 5
end
return value
end
S_HybridColourValue = function(object)
local count = object:GetColour():GetNumColours()
local common_value = 0
local value = 1
if count > 1 then
for i=1,5 do
if object:GetColour():Test(i) then
if count ~= 3 or common_value ~= 1 then
value = value * i
end
common_value = common_value + 1
end
end
end
return value
end
S_HybridColourCommonValue = function(object)
local common_value = 0
if object:GetColour():GetNumColours() == 3 then
local value = S_HybridColourValue(object)
for i=1,5 do
if i * (i + 2) == value then
common_value = i + 1
elseif i * (i + 3) == value then
common_value = i + 4
end
end
if common_value > 5 then
common_value = common_value - 5
end
end
return common_value
end
S_ColourToString = function(colour)
local mana_table = {"", "{W/U}", "{W/B}", "{R/W}", "{G/W}", "{U/B}", "", "{U/R}", "", "{G/U}", "", "{B/R}", "", "", "{B/G}", "", "", "", "", "{R/G}", "{2/W}", "{2/U}", "{2/B}", "{2/R}", "{2/G}", "{W}", "{U}", "{B}", "{R}", "{G}", "{W/P}", "{U/P}", "{B/P}", "{R/P}", "{G/P}"}
return mana_table[colour]
end
S_ManaString = function(colour, amount)
local string = ""
if amount == 0 then
return "{0}"
else
for i=1,amount do
string = string..S_ColourToString(colour)
end
return string
end
end
S_GetManaCostString = function(object, player, index)
local cmc = object:GetConvertedManaCost()
if cmc > 0 then
local string = ""
local amount = {}
local num_total_mana = 0
local num_colored_mana = 0
local total_cmc = cmc - index
for i=0,5 do
amount[i] = S_GetNumOfColorSymbol(object, i)
num_total_mana = num_total_mana + amount[i]
if i == 0 then
num_colored_mana = cmc - amount[i]
end
end
if num_total_mana == cmc then
for j=1,5 do
if amount[j] > 0 then
if S_PhyrexianManaValue(object) == j then
string = string..S_ManaString(j + 30, amount[j])
else
string = string..S_ManaString(j + 25, amount[j])
end
end
end
elseif num_total_mana > cmc then
local num_hybrid_symbol = num_total_mana - cmc
if num_colored_mana > 0 then
local hybrid_colors = S_HybridColourValue(object)
local common_color = S_HybridColourCommonValue(object)
if hybrid_colors > 1 then
string = string..S_ManaString(hybrid_colors, num_hybrid_symbol)
end
if common_color > 0 then
string = string..S_ManaString(common_color + 25, num_colored_mana - num_hybrid_symbol)
end
else
local n = index
if n < 0 then
n = 0
end
local symbolindex = math.ceil(n/2)
num_colored_mana = (cmc/2 - symbolindex) * 2
if object:GetColour():GetNumColours() == 1 then
for k=1,5 do
if amount[k] - symbolindex > 0 then
string = string..S_ManaString(k + 20, amount[k] - symbolindex)
end
end
else
for l=1,5 do
if (player:CanPayManaCost(S_ColourToString(l + 25)) == 0 and symbolindex > 0) or (symbolindex + l > 5) then
symbolindex = symbolindex - 1
else
string = string..S_ColourToString(l + 20)
end
end
end
end
end
if total_cmc > num_colored_mana then
string = "{"..(total_cmc-num_colored_mana).."}"..string
end
return string
else
return "{0}"
end
end
-
sumomole - Programmer
- Posts: 611
- Joined: 07 Jun 2011, 08:34
- Has thanked: 51 times
- Been thanked: 234 times
Re: Formal Request Thread
by Hacker85 » 25 Sep 2014, 19:27
i tested the cards a bit a it seems they all wor fine now thx.Xander9009 wrote:Hacker85 wrote:The cards are now looking like this with the following problems
Stony SilenceNot shown in Deckbuilder
- Code: Select all
snip
Divine ReckoningAlso not shown in Deckbuilder
- Code: Select all
snip
Stitchers ApprenticeIt generates the token but i dont need to sacrifie anything
- Code: Select all
snip
This worked without an issue. Not sure what's up, but you might have had a different internal and external filename.
- Stony Silence | Open
- Code: Select all
<CARD_V2 ExportVersion="1">
<FILENAME text="STONY_SILENCE_CW_247425" />
<CARDNAME text="STONY_SILENCE" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Stony Silence]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Silence de pierre]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Silencio pétreo]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Steinerne Stille]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Silenzio di Pietra]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[石のような静寂]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Stony Silence]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Гробовое Молчание]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Silêncio Pétreo]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[沉重静寂]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[沈重靜寂]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="247425" />
<ARTID value="CW247425" />
<ARTIST name="Wayne England" />
<CASTING_COST cost="{1}{W}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Let moss grow over gargoyles]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Puisse la mousse recouvrir les gargouilles]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Deja que el musgo crezca sobre las gárgolas.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Moos über Gargoylen wachsen lassen]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Lasciar crescere il muschio sui gargoyle]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[ガーゴイルを苔むさせる。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Let moss grow over gargoyles]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Пусть горгульи порастут мхом.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Deixe o musgo crescer sobre as gárgulas.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[就让石像鬼生苔。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[就讓石像鬼生苔。]]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="Enchantment" />
<EXPANSION value="ISD" />
<RARITY metaname="R" />
<STATIC_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Activated abilities of artifacts can’t be activated.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Les capacités activées des artefacts ne peuvent pas être activées.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Las habilidades activadas de los artefactos no pueden ser activadas.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Aktivierte Fähigkeiten von Artefakten können nicht aktiviert werden.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Le abilità attivate degli artefatti non possono essere attivate.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[アーティファクトの起動型能力は起動できない。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Activated abilities of artifacts can’t be activated.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Активируемые способности артефактов не могут быть активированы.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[As habilidades ativadas de artefatos não podem ser ativadas.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[不能起动神器的起动式异能。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[不能起動神器的起動式異能。]]></LOCALISED_TEXT>
<CONTINUOUS_ACTION layer="8">
local filter = ClearFilter()
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_ARTIFACT)
local Count = filter:EvaluateObjects()
for i=0,(Count-1) do
local CurrentArtifact = filter:GetNthEvaluatedObject(i)
if CurrentArtifact ~= nil then
CurrentArtifact:GetCurrentCharacteristics():Bool_Set( CHARACTERISTIC_CANT_USE_ACTIVATED_ABILITIES, 1 )
end
end
</CONTINUOUS_ACTION>
</STATIC_ABILITY>
</CARD_V2>I accidentally had an empty subfilter, which always returned false, thus nullifying the creature choice. Fixed now.
- Stitcher's Apprentice | Open
- Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
<FILENAME text="STITCHERS_APPRENTICE_CW_220631" />
<CARDNAME text="STITCHERS_APPRENTICE" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Stitcher’s Apprentice]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Apprenti du raccommodeur]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Aprendiz de suturador]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Lehrling des Nähers]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Apprendista del Cucitore]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[縫い師の見習い]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Stitcher’s Apprentice]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Ученик Сшивателя]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Aprendiz de Suturador]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="220631" />
<ARTID value="CW220631" />
<ARTIST name="Johann Bodin" />
<CASTING_COST cost="{1}{U}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[“Oglor create life, Oglor take it away. Oglor god! . . . until Master return.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[« Oglor crée vie. Oglor détruit vie. Oglor dieu ! . . . jusqu’au retour de Maître. »]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[“Oglor crea vida, Oglor la quita. ¡Oglor dios! ...hasta que el amo regrese.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[„Oglor erzeugen Leben, Oglor nehmen es wieder weg. Oglor ist sich Gott! ... bis Meister wieder zurück.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[“Oglor crea vita, Oglor la toglie. Oglor è dio! . . . fino a ritorno del Padrone.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[「オグロール、生命作る、オグロール、それ奪う。 オグロール、神! ……主人戻るまで。」]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[“Oglor create life, Oglor take it away. Oglor god! . . . until Master return.”]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[«Оглор создает жизнь, Оглор ее отбирает. Оглор — бог! ...пока не вернется Хозяин».]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[“Oglor criar vida, Oglor tomar vida. Oglor deus! ...até o retorno do Mestre.”]]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="Creature" />
<SUB_TYPE metaname="Homunculus" />
<EXPANSION value="ISD" />
<RARITY metaname="C" />
<POWER value="1" />
<TOUGHNESS value="2" />
<ACTIVATED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{1}{U}, {T}: Put a 2/2 blue Homunculus creature token onto the battlefield, then sacrifice a creature.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[{1}{U}, {T} : Mettez sur le champ de bataille un jeton de créature 2/2 bleue Homoncule, puis sacrifiez une créature.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[{1}{U}, {T}: Pon en el campo de batalla una ficha de criatura Homúnculo azul 2/2, luego sacrifica una criatura.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[{1}{U}, {T}: Bringe einen 2/2 blauen Homunkulus-Kreaturenspielstein ins Spiel und opfere dann eine Kreatur.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[{1}{U}, {T}: Metti sul campo di battaglia una pedina creatura Omuncolo 2/2 blu, poi sacrifica una creatura.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[{1}{U}, {T}:青の2/2のホムンクルス・クリーチャー・トークンを1体戦場に出し、その後クリーチャーを1体生け贄に捧げる。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[{1}{U}, {T}: Put a 2/2 blue Homunculus creature token onto the battlefield, then sacrifice a creature.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[{1}{U}, {T}: положите на поле битвы одну фишку существа 2/2 синий Гомункул, затем пожертвуйте существо.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[{1}{U}, {T}: Coloque no campo de batalha uma ficha de criatura azul 2/2 do tipo Homúnculo e depois sacrifique uma criatura.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[{1}{U},{T}:将一个2/2蓝色造妖衍生生物放进战场,然后牺牲一个生物。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[{1}{U},{T}:將一個2/2藍色造妖衍生生物放進戰場,然後犧牲一個生物。]]></LOCALISED_TEXT>
<COST mana_cost="{1}{U}" type="Mana" />
<COST type="TapSelf" />
<RESOLUTION_TIME_ACTION>
MTG():PutTokensOntoBattlefield( "TOKEN_HOMUNCULUS_C_2_2_U_CW_1", 1, EffectController() )
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local filter = ClearFilter()
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
filter:Add( FE_CONTROLLER, OP_IS, EffectController() )
EffectController():ChooseItem( "CARD_QUERY_CHOOSE_CREATURE_TO_SACRIFICE", EffectDC():Make_Targets(0) )
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local creature = EffectDC():Get_Targets(0):Get_CardPtr(0)
if creature ~= nil then
EffectController():Sacrifice(creature)
end
</RESOLUTION_TIME_ACTION>
</ACTIVATED_ABILITY>
<TOKEN_REGISTRATION reservation="1" type="TOKEN_HOMUNCULUS_C_2_2_U_CW_1" />
<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>I forgot a slash in the end spell ability tag. Then, I was using EvaluateObects to get a count and I was getting the current player with teh wrong variable. All fixed now and tested.
- Divine Reckoning | Open
- Code: Select all
<?xml version="1.0"?>
<CARD_V2 ExportVersion="1">
<FILENAME text="DIVINE_RECKONING_CW_245196" />
<CARDNAME text="DIVINE_RECKONING" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Divine Reckoning]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Jugement divin]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Venganza divina]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Göttliche Abrechnung]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Giudizio Divino]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[神聖なる報い]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Divine Reckoning]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Божественный Расчет]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Ajuste de Contas Divino]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[神圣报应]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[神聖報應]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="245196" />
<ARTID value="CW245196" />
<ARTIST name="Greg Staples" />
<CASTING_COST cost="{2}{W}{W}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Survival of the purest.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[La loi du plus pur.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Supervivencia de los más puros.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Die Reinsten überleben.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Sopravvivenza dei più puri.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[聖者生存。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Survival of the purest.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Выживает чистейший.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Seleção sobrenatural.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[纯者生存。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[純者生存。]]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="Sorcery" />
<EXPANSION value="ISD" />
<RARITY metaname="R" />
<SPELL_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Each player chooses a creature he or she controls. Destroy the rest.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Chaque joueur choisit une créature qu’il contrôle. Détruisez le reste.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Cada jugador elige una criatura que controla. Destruye el resto.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Jeder Spieler bestimmt eine Kreatur, die er kontrolliert. Zerstöre den Rest.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Ogni giocatore sceglie una creatura che controlla. Distruggi le altre.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[各プレイヤーは。自分がコントロールするクリーチャーを1体選ぶ。 残りを破壊する。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Each player chooses a creature he or she controls. Destroy the rest.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Каждый игрок выбирает существо под своим контролем. Уничтожьте все остальные.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Cada jogador escolhe uma criatura que ele controla. Destrua o restante.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[每位牌手各选择一个由他操控的生物。 将其它的消灭。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[每位玩家各選擇一個由他操控的生物。 將其它的消滅。]]></LOCALISED_TEXT>
<RESOLUTION_TIME_ACTION repeating="1">
local n = MTG():GetActionRepCount()
local num_Players = MTG():GetNumberOfPlayers()
if (n < num_Players) then
local player = MTG():GetNthPlayer(n)
local filter = ClearFilter()
filter:Add(FE_CONTROLLER, OP_IS, player)
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
local Count = filter:Count()
if Count > 0 then
player:SetItemCount( 1 )
player:SetItemPrompt( 0, "CARD_QUERY_CHOOSE_CREATURE" )
player:ChooseItems( EffectDC():Make_Targets(n+1) )
end
return true
else
for i = 0, (num_Players-1) do
local player = MTG():GetNthPlayer(i)
local targetDC = EffectDC():Get_Targets(i+1)
local filter = ClearFilter()
filter:Add(FE_CONTROLLER, OP_IS, player)
filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
Count = filter:Count()
filter:EvaluateObjects()
EffectController():DisplayMessage("Player "..i.." has "..Count.." creatures.")
if Count > 0 then
for j=0,(Count-1) do
local Card = filter:GetNthEvaluatedObject(j)
if Card ~= nil and Card ~= targetDC:Get_CardPtr(0) then
Card:Destroy()
EffectController():DisplayMessage("Destroyed player "..i.."'s creature; number: "..j)
elseif Card == nil then
EffectController():DisplayMessage("Player "..i.."'s creature number: "..j.." was nil.")
else
EffectController():DisplayMessage("Player "..i.."'s creature number: "..j.." was their chosen creature.")
end
end
end
end
return false
end
</RESOLUTION_TIME_ACTION>
</SPELL_ABILITY>
<UTILITY_ABILITY qualifier="Flashback" active_zone="ZONE_GRAVEYARD">
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Flashback {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Flashback {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Retrospectiva {5}{W}{W}.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Rückblende {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Flashback {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[フラッシュバック {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Flashback {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Воспоминание {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Recapitular {5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[返照{5}{W}{W}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[返照{5}{W}{W}]]></LOCALISED_TEXT>
<COST mana_cost="{5}{W}{W}" type="Mana" />
</UTILITY_ABILITY>
<HELP title="MORE_INFO_TITLE_FLASHBACK" body="MORE_INFO_BODY_FLASHBACK" zone="ZONE_ANY" />
</CARD_V2>
thx for ur help but what i need to do with ur second object Functions?sumomole wrote:I convert the functions of Flash from 2013 to 2014, and try to use it for Back from the Brink, hope it works.
this idea from TFM, I don't remember what he had wanted, finally I used to code Flash.![]()
- Back from the Brink | Open
- Code: Select all
<?xml version="1.0"?>
<CARD_V2 ExportVersion="1">
<FILENAME text="BACK_FROM_THE_BRINK_249663" />
<CARDNAME text="BACK_FROM_THE_BRINK" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Back from the Brink]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Retour de la mort]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Regresar del umbral]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Zurück vom Abgrund]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Ritorno dal Baratro]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[瀬戸際からの帰還]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Back from the Brink]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Возвращение с Края Пропасти]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Voltar do Abismo]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[边缘归来]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[邊緣歸來]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="249663" />
<ARTID value="249663" />
<ARTIST name="Anthony Palumbo" />
<CASTING_COST cost="{4}{U}{U}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[On Innistrad, death is just a career change.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Sur Innistrad, la mort n’est qu’un changement de carrière.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[En Innistrad, la muerte es solo un cambio de profesión.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[In Innistrad ist der Tod nur ein Berufswechsel.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[In Innistrad, la morte non è altro che una diversa carriera.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[イニストラードでは、死は転職に過ぎない。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[On Innistrad, death is just a career change.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[В Иннистраде смерть — лишь смена занятия.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Em Innistrad, a morte é apenas uma mudança de carreira.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[在依尼翠,死亡只是转职。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[在依尼翠,死亡只是轉職。]]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="Enchantment" />
<EXPANSION value="DPI" />
<RARITY metaname="R" />
<ACTIVATED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Exile a creature card from your graveyard and pay its mana cost: Put a token onto the battlefield that’s a copy of that card. Activate this ability only any time you could cast a sorcery.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Exilez une carte de créature de votre cimetière et payez son coût de mana : Mettez sur le champ de bataille un jeton qui est une copie de cette carte. N’activez cette capacité que lorsque vous pourriez lancer un rituel.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Exiliar una carta de criatura de tu cementerio y pagar su coste de maná: Pon en el campo de batalla una ficha de criatura que es una copia de esa carta. Activa esta habilidad sólo cuando puedas lanzar un conjuro.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Schicke eine Kreaturenkarte aus deinem Friedhof ins Exil und bezahle ihre Manakosten: Bringe einen Spielstein ins Spiel, der eine Kopie dieser Karte ist. Aktiviere diese Fähigkeit nur zu einem Zeitpunkt, zu dem du auch eine Hexerei wirken könntest.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Esilia una carta creatura dal tuo cimitero e pagane il costo di mana: Metti sul campo di battaglia una pedina che è una copia di quella carta. Attiva questa abilità solo quando potresti lanciare una stregoneria.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[あなたの墓地にあるクリーチャー・カードを1枚追放し、それのマナ・コストを支払う:そのカードのコピーであるトークンを1体戦場に出す。 この能力は、あなたがソーサリーを唱えられるときにのみ起動できる。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Exile a creature card from your graveyard and pay its mana cost: Put a token onto the battlefield that’s a copy of that card. Activate this ability only any time you could cast a sorcery.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Изгоните карту существа из вашего кладбища и заплатите ее мана-стоимость: положите на поле битвы одну фишку, являющуюся копией той карты. Активируйте эту способность только при возможности разыгрывать волшебство.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Exile um card de criatura de seu cemitério e pague seu custo de mana: Coloque no campo de batalha uma ficha que seja uma cópia daquele card. Ative esta habilidade somente nos momentos em que poderia conjurar um feitiço.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[从你的坟墓场放逐一张生物牌并支付其法术力费用:将一个衍生物放进战场,且为该牌的复制品。 你只可以于你能施放法术的时机下起动此异能。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[從你的墳墓場放逐一張生物牌並支付其魔法力費用:將一個衍生物放進戰場,且為該牌的複製品。 你只可以於你能施放巫術的時機下起動此異能。]]></LOCALISED_TEXT>
<COST type="Generic">
<PREREQUISITE>
local player = EffectController()
local number = player:Graveyard_Count()
for i=0,(number-1) do
local card = player:Graveyard_GetNth(i)
if card ~= nil and card:GetCardType():Test(CARD_TYPE_CREATURE) then
local mana = S_GetManaCostString(card, EffectController(), 0)
if EffectController():CanPayManaCost(mana) then
return true
end
end
end
return false
</PREREQUISITE>
<RESOLUTION_TIME_ACTION>
local answerDC = EffectDC():Make_Targets(0)
local queryDC = EffectDC():Make_Chest(1)
local player = EffectController()
local number = player:Graveyard_Count()
for i=0,(number-1) do
local card = player:Graveyard_GetNth(i)
if card ~= nil then
queryDC:Set_CardPtr(i, card)
local mana = S_GetManaCostString(card, EffectController(), 0)
if not (card:GetCardType():Test(CARD_TYPE_CREATURE) and EffectController():CanPayManaCost(mana)) then
queryDC:QueryUnselect_CardPtr(i)
end
else
break
end
end
player:ChooseItemFromDC( "CARD_QUERY_CHOOSE_CARD_TO_EXILE_FROM_A_GRAVEYARD", queryDC, answerDC )
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local targetCard = EffectDC():Get_Targets(0):Get_CardPtr(0)
if targetCard ~= nil then
EffectDC():Get_Targets(0):Protect_CardPtr(0)
targetCard:Exile()
end
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local targetCard = EffectDC():Get_Targets(0):Get_CardPtr(0)
if targetCard ~= nil then
local mana = S_GetManaCostString(targetCard, EffectController(), 0)
EffectController():PayManaCost(mana)
end
</RESOLUTION_TIME_ACTION></COST>
<AVAILABILITY sorcery_time="1" />
<RESOLUTION_TIME_ACTION>
local targetCard = EffectDC():Get_Targets(0):Get_CardPtr(0)
if targetCard ~= nil then
MTG():PutTokenCopiesOntoBattlefield( targetCard, 1, EffectController() )
end
</RESOLUTION_TIME_ACTION>
<AI_SIMPLIFIED_TARGETING compartment="0" hint="HINT_ALLIED" />
</ACTIVATED_ABILITY>
<AI_BASE_SCORE score="1050" zone="ZONE_BATTLEFIELD" />
</CARD_V2>PS: if available, please change the prefix of functions to yours.
- functions | Open
- Code: Select all
S_GetNumOfColorSymbol = function(object, color)
local filter = ClearFilter()
filter:SetZone( ZONE_ANYWHERE )
filter:Add( FE_CARD_INSTANCE, OP_IS, object )
return filter:ChromaCount(color)
end
S_PhyrexianManaValue = function(object)
local value = 0
if (object:GetCardName() == "APOSTLES_BLESSING" or object:GetCardName() == "CATHEDRAL_MEMBRANE" or object:GetCardName() == "MARROW_SHARDS" or object:GetCardName() == "NORNS_ANNEX" or object:GetCardName() == "PORCELAIN_LEGIONNAIRE") then
value = 1
elseif (object:GetCardName() == "GITAXIAN_PROBE" or object:GetCardName() == "MENTAL_MISSTEP" or object:GetCardName() == "PHYREXIAN_METAMORPH" or object:GetCardName() == "SPINED_THOPTER" or object:GetCardName() == "TEZZERETS_GAMBIT") then
value = 2
elseif (object:GetCardName() == "DISMEMBER" or object:GetCardName() == "PITH_DRILLER" or object:GetCardName() == "POSTMORTEM_LUNGE" or object:GetCardName() == "SURGICAL_EXTRACTION" or object:GetCardName() == "VAULT_SKIRGE") then
value = 3
elseif (object:GetCardName() == "ACT_OF_AGGRESSION" or object:GetCardName() == "GUT_SHOT" or object:GetCardName() == "MOLTENSTEEL_DRAGON" or object:GetCardName() == "RAGE_EXTRACTOR" or object:GetCardName() == "RUTHLESS_INVASION" or object:GetCardName() == "SLASH_PANTHER") then
value = 4
elseif (object:GetCardName() == "BIRTHING_POD" or object:GetCardName() == "CORROSIVE_GALE" or object:GetCardName() == "MUTAGENIC_GROWTH" or object:GetCardName() == "NOXIOUS_REVIVAL" or object:GetCardName() == "THUNDERING_TANADON") then
value = 5
end
return value
end
S_HybridColourValue = function(object)
local count = object:GetColour():GetNumColours()
local common_value = 0
local value = 1
if count > 1 then
for i=1,5 do
if object:GetColour():Test(i) then
if count ~= 3 or common_value ~= 1 then
value = value * i
end
common_value = common_value + 1
end
end
end
return value
end
S_HybridColourCommonValue = function(object)
local common_value = 0
if object:GetColour():GetNumColours() == 3 then
local value = S_HybridColourValue(object)
for i=1,5 do
if i * (i + 2) == value then
common_value = i + 1
elseif i * (i + 3) == value then
common_value = i + 4
end
end
if common_value > 5 then
common_value = common_value - 5
end
end
return common_value
end
S_ColourToString = function(colour)
local mana_table = {"", "{W/U}", "{W/B}", "{R/W}", "{G/W}", "{U/B}", "", "{U/R}", "", "{G/U}", "", "{B/R}", "", "", "{B/G}", "", "", "", "", "{R/G}", "{2/W}", "{2/U}", "{2/B}", "{2/R}", "{2/G}", "{W}", "{U}", "{B}", "{R}", "{G}", "{W/P}", "{U/P}", "{B/P}", "{R/P}", "{G/P}"}
return mana_table[colour]
end
S_ManaString = function(colour, amount)
local string = ""
if amount == 0 then
return "{0}"
else
for i=1,amount do
string = string..S_ColourToString(colour)
end
return string
end
end
S_GetManaCostString = function(object, player, index)
local cmc = object:GetConvertedManaCost()
if cmc > 0 then
local string = ""
local amount = {}
local num_total_mana = 0
local num_colored_mana = 0
local total_cmc = cmc - index
for i=0,5 do
amount[i] = S_GetNumOfColorSymbol(object, i)
num_total_mana = num_total_mana + amount[i]
if i == 0 then
num_colored_mana = cmc - amount[i]
end
end
if num_total_mana == cmc then
for j=1,5 do
if amount[j] > 0 then
if S_PhyrexianManaValue(object) == j then
string = string..S_ManaString(j + 30, amount[j])
else
string = string..S_ManaString(j + 25, amount[j])
end
end
end
elseif num_total_mana > cmc then
local num_hybrid_symbol = num_total_mana - cmc
if num_colored_mana > 0 then
local hybrid_colors = S_HybridColourValue(object)
local common_color = S_HybridColourCommonValue(object)
if hybrid_colors > 1 then
string = string..S_ManaString(hybrid_colors, num_hybrid_symbol)
end
if common_color > 0 then
string = string..S_ManaString(common_color + 25, num_colored_mana - num_hybrid_symbol)
end
else
local n = index
if n < 0 then
n = 0
end
local symbolindex = math.ceil(n/2)
num_colored_mana = (cmc/2 - symbolindex) * 2
if object:GetColour():GetNumColours() == 1 then
for k=1,5 do
if amount[k] - symbolindex > 0 then
string = string..S_ManaString(k + 20, amount[k] - symbolindex)
end
end
else
for l=1,5 do
if (player:CanPayManaCost(S_ColourToString(l + 25)) == 0 and symbolindex > 0) or (symbolindex + l > 5) then
symbolindex = symbolindex - 1
else
string = string..S_ColourToString(l + 20)
end
end
end
end
end
if total_cmc > num_colored_mana then
string = "{"..(total_cmc-num_colored_mana).."}"..string
end
return string
else
return "{0}"
end
end
Re: Formal Request Thread
by Xander9009 » 25 Sep 2014, 20:22
GoodHacker85 wrote:i tested the cards a bit a it seems they all wor fine now thx.Xander9009 wrote:Hacker85 wrote:The cards are now looking like this with the following problems
Stony SilenceNot shown in Deckbuilder
- Code: Select all
snip
Divine ReckoningAlso not shown in Deckbuilder
- Code: Select all
snip
Stitchers ApprenticeIt generates the token but i dont need to sacrifie anything
- Code: Select all
snip
This worked without an issue. Not sure what's up, but you might have had a different internal and external filename.
- Stony Silence | Open
- Code: Select all
snip
I accidentally had an empty subfilter, which always returned false, thus nullifying the creature choice. Fixed now.
- Stitcher's Apprentice | Open
- Code: Select all
snip
I forgot a slash in the end spell ability tag. Then, I was using EvaluateObects to get a count and I was getting the current player with teh wrong variable. All fixed now and tested.
- Divine Reckoning | Open
- Code: Select all
snip
thx for ur help but what i need to do with ur second object Functions?sumomole wrote:I convert the functions of Flash from 2013 to 2014, and try to use it for Back from the Brink, hope it works.
this idea from TFM, I don't remember what he had wanted, finally I used to code Flash.![]()
- Back from the Brink | Open
- Code: Select all
snip
PS: if available, please change the prefix of functions to yours.
- functions | Open
- Code: Select all
snip

And for the functions, put them in a file with the .lol extension. It can be titled pretty much anything, but I don't think it can have spaces, use underscores instead, and they're always all caps (don't know why, I tried it with lowercase and it worked fine). Stick that file (Possibly called S_MANA_FUNCTIONS.LOL or something) in your FUNCTIONS folder (it's next to your CARDS folder).
_______________________________
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
Re: Formal Request Thread
by Hacker85 » 25 Sep 2014, 21:11
so added the functions, the cards works halfway now. i can exile creatures from my graveyard and also get the copy but i dont need to pay mana for it.sumomole wrote:I convert the functions of Flash from 2013 to 2014, and try to use it for Back from the Brink, hope it works.
this idea from TFM, I don't remember what he had wanted, finally I used to code Flash.![]()
- Back from the Brink | Open
- Code: Select all
<?xml version="1.0"?>
<CARD_V2 ExportVersion="1">
<FILENAME text="BACK_FROM_THE_BRINK_249663" />
<CARDNAME text="BACK_FROM_THE_BRINK" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Back from the Brink]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Retour de la mort]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Regresar del umbral]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Zurück vom Abgrund]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Ritorno dal Baratro]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[瀬戸際からの帰還]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Back from the Brink]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Возвращение с Края Пропасти]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Voltar do Abismo]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[边缘归来]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[邊緣歸來]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="249663" />
<ARTID value="249663" />
<ARTIST name="Anthony Palumbo" />
<CASTING_COST cost="{4}{U}{U}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[On Innistrad, death is just a career change.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Sur Innistrad, la mort n’est qu’un changement de carrière.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[En Innistrad, la muerte es solo un cambio de profesión.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[In Innistrad ist der Tod nur ein Berufswechsel.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[In Innistrad, la morte non è altro che una diversa carriera.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[イニストラードでは、死は転職に過ぎない。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[On Innistrad, death is just a career change.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[В Иннистраде смерть — лишь смена занятия.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Em Innistrad, a morte é apenas uma mudança de carreira.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[在依尼翠,死亡只是转职。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[在依尼翠,死亡只是轉職。]]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="Enchantment" />
<EXPANSION value="DPI" />
<RARITY metaname="R" />
<ACTIVATED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Exile a creature card from your graveyard and pay its mana cost: Put a token onto the battlefield that’s a copy of that card. Activate this ability only any time you could cast a sorcery.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Exilez une carte de créature de votre cimetière et payez son coût de mana : Mettez sur le champ de bataille un jeton qui est une copie de cette carte. N’activez cette capacité que lorsque vous pourriez lancer un rituel.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Exiliar una carta de criatura de tu cementerio y pagar su coste de maná: Pon en el campo de batalla una ficha de criatura que es una copia de esa carta. Activa esta habilidad sólo cuando puedas lanzar un conjuro.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Schicke eine Kreaturenkarte aus deinem Friedhof ins Exil und bezahle ihre Manakosten: Bringe einen Spielstein ins Spiel, der eine Kopie dieser Karte ist. Aktiviere diese Fähigkeit nur zu einem Zeitpunkt, zu dem du auch eine Hexerei wirken könntest.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Esilia una carta creatura dal tuo cimitero e pagane il costo di mana: Metti sul campo di battaglia una pedina che è una copia di quella carta. Attiva questa abilità solo quando potresti lanciare una stregoneria.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[あなたの墓地にあるクリーチャー・カードを1枚追放し、それのマナ・コストを支払う:そのカードのコピーであるトークンを1体戦場に出す。 この能力は、あなたがソーサリーを唱えられるときにのみ起動できる。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Exile a creature card from your graveyard and pay its mana cost: Put a token onto the battlefield that’s a copy of that card. Activate this ability only any time you could cast a sorcery.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Изгоните карту существа из вашего кладбища и заплатите ее мана-стоимость: положите на поле битвы одну фишку, являющуюся копией той карты. Активируйте эту способность только при возможности разыгрывать волшебство.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Exile um card de criatura de seu cemitério e pague seu custo de mana: Coloque no campo de batalha uma ficha que seja uma cópia daquele card. Ative esta habilidade somente nos momentos em que poderia conjurar um feitiço.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[从你的坟墓场放逐一张生物牌并支付其法术力费用:将一个衍生物放进战场,且为该牌的复制品。 你只可以于你能施放法术的时机下起动此异能。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[從你的墳墓場放逐一張生物牌並支付其魔法力費用:將一個衍生物放進戰場,且為該牌的複製品。 你只可以於你能施放巫術的時機下起動此異能。]]></LOCALISED_TEXT>
<COST type="Generic">
<PREREQUISITE>
local player = EffectController()
local number = player:Graveyard_Count()
for i=0,(number-1) do
local card = player:Graveyard_GetNth(i)
if card ~= nil and card:GetCardType():Test(CARD_TYPE_CREATURE) then
local mana = S_GetManaCostString(card, EffectController(), 0)
if EffectController():CanPayManaCost(mana) then
return true
end
end
end
return false
</PREREQUISITE>
<RESOLUTION_TIME_ACTION>
local answerDC = EffectDC():Make_Targets(0)
local queryDC = EffectDC():Make_Chest(1)
local player = EffectController()
local number = player:Graveyard_Count()
for i=0,(number-1) do
local card = player:Graveyard_GetNth(i)
if card ~= nil then
queryDC:Set_CardPtr(i, card)
local mana = S_GetManaCostString(card, EffectController(), 0)
if not (card:GetCardType():Test(CARD_TYPE_CREATURE) and EffectController():CanPayManaCost(mana)) then
queryDC:QueryUnselect_CardPtr(i)
end
else
break
end
end
player:ChooseItemFromDC( "CARD_QUERY_CHOOSE_CARD_TO_EXILE_FROM_A_GRAVEYARD", queryDC, answerDC )
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local targetCard = EffectDC():Get_Targets(0):Get_CardPtr(0)
if targetCard ~= nil then
EffectDC():Get_Targets(0):Protect_CardPtr(0)
targetCard:Exile()
end
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local targetCard = EffectDC():Get_Targets(0):Get_CardPtr(0)
if targetCard ~= nil then
local mana = S_GetManaCostString(targetCard, EffectController(), 0)
EffectController():PayManaCost(mana)
end
</RESOLUTION_TIME_ACTION></COST>
<AVAILABILITY sorcery_time="1" />
<RESOLUTION_TIME_ACTION>
local targetCard = EffectDC():Get_Targets(0):Get_CardPtr(0)
if targetCard ~= nil then
MTG():PutTokenCopiesOntoBattlefield( targetCard, 1, EffectController() )
end
</RESOLUTION_TIME_ACTION>
<AI_SIMPLIFIED_TARGETING compartment="0" hint="HINT_ALLIED" />
</ACTIVATED_ABILITY>
<AI_BASE_SCORE score="1050" zone="ZONE_BATTLEFIELD" />
</CARD_V2>PS: if available, please change the prefix of functions to yours.
- functions | Open
- Code: Select all
S_GetNumOfColorSymbol = function(object, color)
local filter = ClearFilter()
filter:SetZone( ZONE_ANYWHERE )
filter:Add( FE_CARD_INSTANCE, OP_IS, object )
return filter:ChromaCount(color)
end
S_PhyrexianManaValue = function(object)
local value = 0
if (object:GetCardName() == "APOSTLES_BLESSING" or object:GetCardName() == "CATHEDRAL_MEMBRANE" or object:GetCardName() == "MARROW_SHARDS" or object:GetCardName() == "NORNS_ANNEX" or object:GetCardName() == "PORCELAIN_LEGIONNAIRE") then
value = 1
elseif (object:GetCardName() == "GITAXIAN_PROBE" or object:GetCardName() == "MENTAL_MISSTEP" or object:GetCardName() == "PHYREXIAN_METAMORPH" or object:GetCardName() == "SPINED_THOPTER" or object:GetCardName() == "TEZZERETS_GAMBIT") then
value = 2
elseif (object:GetCardName() == "DISMEMBER" or object:GetCardName() == "PITH_DRILLER" or object:GetCardName() == "POSTMORTEM_LUNGE" or object:GetCardName() == "SURGICAL_EXTRACTION" or object:GetCardName() == "VAULT_SKIRGE") then
value = 3
elseif (object:GetCardName() == "ACT_OF_AGGRESSION" or object:GetCardName() == "GUT_SHOT" or object:GetCardName() == "MOLTENSTEEL_DRAGON" or object:GetCardName() == "RAGE_EXTRACTOR" or object:GetCardName() == "RUTHLESS_INVASION" or object:GetCardName() == "SLASH_PANTHER") then
value = 4
elseif (object:GetCardName() == "BIRTHING_POD" or object:GetCardName() == "CORROSIVE_GALE" or object:GetCardName() == "MUTAGENIC_GROWTH" or object:GetCardName() == "NOXIOUS_REVIVAL" or object:GetCardName() == "THUNDERING_TANADON") then
value = 5
end
return value
end
S_HybridColourValue = function(object)
local count = object:GetColour():GetNumColours()
local common_value = 0
local value = 1
if count > 1 then
for i=1,5 do
if object:GetColour():Test(i) then
if count ~= 3 or common_value ~= 1 then
value = value * i
end
common_value = common_value + 1
end
end
end
return value
end
S_HybridColourCommonValue = function(object)
local common_value = 0
if object:GetColour():GetNumColours() == 3 then
local value = S_HybridColourValue(object)
for i=1,5 do
if i * (i + 2) == value then
common_value = i + 1
elseif i * (i + 3) == value then
common_value = i + 4
end
end
if common_value > 5 then
common_value = common_value - 5
end
end
return common_value
end
S_ColourToString = function(colour)
local mana_table = {"", "{W/U}", "{W/B}", "{R/W}", "{G/W}", "{U/B}", "", "{U/R}", "", "{G/U}", "", "{B/R}", "", "", "{B/G}", "", "", "", "", "{R/G}", "{2/W}", "{2/U}", "{2/B}", "{2/R}", "{2/G}", "{W}", "{U}", "{B}", "{R}", "{G}", "{W/P}", "{U/P}", "{B/P}", "{R/P}", "{G/P}"}
return mana_table[colour]
end
S_ManaString = function(colour, amount)
local string = ""
if amount == 0 then
return "{0}"
else
for i=1,amount do
string = string..S_ColourToString(colour)
end
return string
end
end
S_GetManaCostString = function(object, player, index)
local cmc = object:GetConvertedManaCost()
if cmc > 0 then
local string = ""
local amount = {}
local num_total_mana = 0
local num_colored_mana = 0
local total_cmc = cmc - index
for i=0,5 do
amount[i] = S_GetNumOfColorSymbol(object, i)
num_total_mana = num_total_mana + amount[i]
if i == 0 then
num_colored_mana = cmc - amount[i]
end
end
if num_total_mana == cmc then
for j=1,5 do
if amount[j] > 0 then
if S_PhyrexianManaValue(object) == j then
string = string..S_ManaString(j + 30, amount[j])
else
string = string..S_ManaString(j + 25, amount[j])
end
end
end
elseif num_total_mana > cmc then
local num_hybrid_symbol = num_total_mana - cmc
if num_colored_mana > 0 then
local hybrid_colors = S_HybridColourValue(object)
local common_color = S_HybridColourCommonValue(object)
if hybrid_colors > 1 then
string = string..S_ManaString(hybrid_colors, num_hybrid_symbol)
end
if common_color > 0 then
string = string..S_ManaString(common_color + 25, num_colored_mana - num_hybrid_symbol)
end
else
local n = index
if n < 0 then
n = 0
end
local symbolindex = math.ceil(n/2)
num_colored_mana = (cmc/2 - symbolindex) * 2
if object:GetColour():GetNumColours() == 1 then
for k=1,5 do
if amount[k] - symbolindex > 0 then
string = string..S_ManaString(k + 20, amount[k] - symbolindex)
end
end
else
for l=1,5 do
if (player:CanPayManaCost(S_ColourToString(l + 25)) == 0 and symbolindex > 0) or (symbolindex + l > 5) then
symbolindex = symbolindex - 1
else
string = string..S_ColourToString(l + 20)
end
end
end
end
end
if total_cmc > num_colored_mana then
string = "{"..(total_cmc-num_colored_mana).."}"..string
end
return string
else
return "{0}"
end
end
Re: Formal Request Thread
by sumomole » 26 Sep 2014, 07:41
I put Back from the Brink(without art) and functions in my mod now, if you don't know how to use functions, you can download Core(DATA_DLC_S62).Hacker85 wrote:so added the functions, the cards works halfway now. i can exile creatures from my graveyard and also get the copy but i dont need to pay mana for it.
-
sumomole - Programmer
- Posts: 611
- Joined: 07 Jun 2011, 08:34
- Has thanked: 51 times
- Been thanked: 234 times
Re: Formal Request Thread
by NeoAnderson » 26 Sep 2014, 07:52
Hey Sumo if you want you can also add the HQ Art, i attach here the TDXsumomole wrote:I put Back from the Brink(without art) and functions in my mod now, if you don't know how to use functions, you can download Core(DATA_DLC_S62).Hacker85 wrote:so added the functions, the cards works halfway now. i can exile creatures from my graveyard and also get the copy but i dont need to pay mana for it.

- Attachments
-
BackfromtheBrink.rar
- Back from the Brink HQ TDX
- (114.47 KiB) Downloaded 295 times
- NeoAnderson
- Posts: 914
- Joined: 10 Sep 2013, 07:49
- Has thanked: 18 times
- Been thanked: 139 times
Re: Formal Request Thread
by sumomole » 26 Sep 2014, 08:05
no thanks, I won't update arts pack, it's too trouble.NeoAnderson wrote:Hey Sumo if you want you can also add the HQ Art, i attach here the TDXsumomole wrote:I put Back from the Brink(without art) and functions in my mod now, if you don't know how to use functions, you can download Core(DATA_DLC_S62).Hacker85 wrote:so added the functions, the cards works halfway now. i can exile creatures from my graveyard and also get the copy but i dont need to pay mana for it.

-
sumomole - Programmer
- Posts: 611
- Joined: 07 Jun 2011, 08:34
- Has thanked: 51 times
- Been thanked: 234 times
Re: Formal Request Thread
by Tejahn » 29 Sep 2014, 20:52
I have a few cards I'm having trouble with so I would like to request some.
Fungal Shambler
Guided Passage
Oros, the Avenger
Ruhan of the Fomori
Sepulchral Primordial
Skullbriar, the Walking Grave
Zedruu the Greathearted
Fungal Shambler
Guided Passage
Oros, the Avenger
Ruhan of the Fomori
Sepulchral Primordial
Skullbriar, the Walking Grave
Zedruu the Greathearted
Re: Formal Request Thread
by sweetLu » 29 Sep 2014, 21:12
Some of those look pretty interesting. I'll give them a shot the next time I get a chance. Though if they are from Khans I should check with Neo first since they are likely done already.
On a different note, I don't think Ruhan of the Fomori is possible similar to the same reasons we cannot do "Creature A blocks Creature B if able" but that might be such a rare occurrence that people won't care.
On a different note, I don't think Ruhan of the Fomori is possible similar to the same reasons we cannot do "Creature A blocks Creature B if able" but that might be such a rare occurrence that people won't care.
Re: Formal Request Thread
by Xander9009 » 29 Sep 2014, 21:35
Don't know if it works and I have no cards handy that use it, but there's a function called "MustAttackPlayer()".sweetLu wrote:Some of those look pretty interesting. I'll give them a shot the next time I get a chance. Though if they are from Khans I should check with Neo first since they are likely done already.
On a different note, I don't think Ruhan of the Fomori is possible similar to the same reasons we cannot do "Creature A blocks Creature B if able" but that might be such a rare occurrence that people won't care.
_______________________________
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
Re: Formal Request Thread
by thefiremind » 30 Sep 2014, 09:32
I have never tried to use it either, but you can try...Xander9009 wrote:Don't know if it works and I have no cards handy that use it, but there's a function called "MustAttackPlayer()".
- Ruhan of the Fomori's triggered ability (untested) | Open
- Code: Select all
<TRIGGERED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[At the beginning of combat on your turn, choose an opponent at random. Ruhan of the Fomori attacks that player this combat if able.]]></LOCALISED_TEXT>
<TRIGGER value="BEGINNING_OF_PLAYERS_STEP" simple_qualifier="controller">
return MTG():GetStep() == STEP_BEGIN_COMBAT
</TRIGGER>
<RESOLUTION_TIME_ACTION>
local filter = ClearFilter()
filter:SetFilterType(FILTER_TYPE_PLAYERS)
filter:Add( FE_TEAM, OP_NOT, EffectController():GetTeam() )
local count = filter:EvaluatePlayers()
local index = MTG():RandomNumberBetween(0, count-1)
local opponent = filter:GetNthEvaluatedPlayer(index)
EffectDC():Set_PlayerPtr(0, opponent)
</RESOLUTION_TIME_ACTION>
<CONTINUOUS_ACTION layer="8">
local source = EffectSource()
if source ~= nil then
local opponent = EffectDC():Get_PlayerPtr(0)
if opponent ~= nil then
source:GetCurrentCharacteristics():MustAttackPlayer(opponent)
end
end
</CONTINUOUS_ACTION>
<DURATION>
return MTG():GetStep() >= STEP_END_OF_COMBAT
</DURATION>
<AUTO_SKIP no_effect_source="1" />
</TRIGGERED_ABILITY>
I thought about trying to code a Skullbriar lots of times, but my hopes were too low. I don't know if we can override a COUNTERS_CHANGED trigger so that the interested zone changes don't remove the counters (that would be awesome). The alternative way is to re-add the counters after the interested zone changes, but I think it would bring lots of incompatibilities.Tejahn wrote:Skullbriar, the Walking Grave
< 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: Formal Request Thread
by migookman » 30 Sep 2014, 11:01
I was wondering how I could code the following:
You may cast [card name] as though it had flash. If you cast it any time a sorcery couldn’t have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step
I have seen the posts about pseudoflash but putting it together with the sacrifice is eluding me.
You may cast [card name] as though it had flash. If you cast it any time a sorcery couldn’t have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step
I have seen the posts about pseudoflash but putting it together with the sacrifice is eluding me.
Who is online
Users browsing this forum: No registered users and 21 guests