It is currently 20 Jul 2025, 00:32
   
Text Size

Formal Request Thread

Moderator: CCGHQ Admins

Re: Formal Request Thread

Postby sumomole » 19 Dec 2013, 18:48

NeoAnderson wrote:Could you try my Xenograft version i have made the function about name a creature type we talked last time. I would know what you think about it.
This is indeed a feasible solution, but I don't like it, because I can't remember so many types. :lol:
And AI certainly don't like this method because it's poor English. :lol: :lol: :lol:
I see "1. You don't have to look the kinds into decks just type one valid kind.", if you are for this reason, you can remove the sort part from my functions, so it will always display the default order, you will not derive the deck information. But again, AI will not be able to make good choices, so you need to write additional code for AI.

NeoAnderson wrote:I disabled "always use optional abilities" in game settings, now it works, thanks but, the card when enters into battlefield, ask the targets selection and when you made it, it asks if you want to use the ability.
It is a little bit weird :-), i also tried to move the May tag before of the target tag but it is the same. Targets are evaluated first.
Yes, it's rule, target must be selected at ability plays, and "may" is decided at the time the ability resolves.
Last edited by sumomole on 19 Dec 2013, 18:55, edited 1 time in total.
User avatar
sumomole
Programmer
 
Posts: 611
Joined: 07 Jun 2011, 08:34
Has thanked: 51 times
Been thanked: 234 times

Re: Formal Request Thread

Postby NeoAnderson » 19 Dec 2013, 18:52

sumomole wrote:
NeoAnderson wrote:Could you try my Xenograft version i have made the function about name a creature type we talked last time. I would know what you think about it.
This is indeed a feasible solution, but I don't like it, because I can't remember so many types. :lol:
And AI certainly don't like this method because it's poor English. :lol: :lol: :lol:
I see "1. You don't have to look the kinds into decks just type one valid kind.", if you are for this reason, you can remove the sort part from my functions, so it will always display the default order, you will not derive the deck information. But again, AI will not be able to make good choices, so you need to write additional code for AI.
I know that it is needed to Implement the code for the AI choice, otherwise i can spend some of my time to teach him to write :lol:
I just made it because i had this idea and i would try if it was doable.
Have you any suggestion how to implement the AI selection?
Honestly until now i have worked few times for the AI implementation so i am not so prepared about it.

About your function as i told last time, i don't make it to replace your amazing work, i know that it can be used also without retrieve informations from the deck, i was just trying a different way.
You know what? Sometimes from weird ideas someone can take the starting point to make new interesting things.
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Formal Request Thread

Postby NeoAnderson » 19 Dec 2013, 23:04

Orangewaggs wrote:Hey guys amazing work you do here I have a few requests if I may
Norin the Wary
Burning Inquiry
Gift of Orzhova
If it's possible Genesis Chamber
Megrim
Putrid Leech
Any of the Merfolk not already made

Thank you
About your request :
Gift of Orzhova
Genesis Chamber + Myr Token
Putrid Leech
these tre cards are already coded by BloodReyvyn
You can find them into is mod here : http://www.slightlymagic.net/forum/viewtopic.php?f=109&t=11060
Or if you want i have extracted just these cards + token from his mod. You can download them here :

BloodReyvyn cards.zip
3 Cards + 1 Myr Token XML + TDX
(2.48 MiB) Downloaded 254 times


I have coded the other cards :
Norin the Wary | Open
Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
  <FILENAME text="NORIN_THE_WARY_113512" />
  <CARDNAME text="NORIN_THE_WARY" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Norin the Wary]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Norin le circonspect]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Norin el Precavido]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Norin der Vorsichtige]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Norin il Diffidente]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[二の足踏みのノリン]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Norin the Wary]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Норин Осторожный]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Norin, o Cauteloso]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="113512" />
  <ARTID value="113512" />
  <ARTIST name="Heather Hudson" />
  <CASTING_COST cost="{R}" />
  <FLAVOURTEXT>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[“I have a bad feeling about this.”]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[« J’ai un mauvais pressentiment. »]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[“Tengo un mal presentimiento.”]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[„Das gefällt mir irgendwie nicht.”]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[“Ho una brutta sensazione riguardo a questo.”]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[こいつは嫌な予感がするな。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[“I have a bad feeling about this.”]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[«У меня плохие предчувствия».]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[“Tive um pressentimento ruim sobre isso.”]]></LOCALISED_TEXT>
  </FLAVOURTEXT>
  <SUPERTYPE metaname="Legendary" />
  <TYPE metaname="Creature" />
  <SUB_TYPE metaname="Human" />
  <SUB_TYPE metaname="Warrior" />
  <EXPANSION value="TSP" />
  <RARITY metaname="R" />
  <POWER value="2" />
  <TOUGHNESS value="1" />
  <TRIGGERED_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[When a player casts a spell or a creature attacks, exile Norin the Wary. Return it to the battlefield under its owner’s control at the beginning of the next end step.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Quand un joueur joue un sort ou qu’une créature attaque, retirez Norin le circonspect de la partie. Renvoyez-le en jeu sous le contrôle de son propriétaire à la fin du tour.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Cuando un jugador juegue un hechizo o una criatura ataque, remueve del juego a Norin el Precavido. Regrésalo al juego bajo el control de su propietario al final del turno.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Wenn ein Spieler einen Zauberspruch spielt oder eine Kreatur angreift, entferne Norin den Vorsichtigen ganz aus dem Spiel. Bringe ihn am Ende des Zuges unter der Kontrolle seines Besitzers ins Spiel zurück.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Quando un giocatore lancia una magia o una creatura attacca, esilia Norin il Diffidente. Rimettilo nel campo di battaglia sotto il controllo del suo proprietario all’inizio all’inizio della prossima sottofase finale.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[いずれかのプレイヤーが呪文をプレイするかクリーチャーが攻撃したとき、二の足踏みのノリンをゲームから取り除く。 ターン終了時に、それをオーナーのコントロール下で場に戻す。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[When a player casts a spell or a creature attacks, exile Norin the Wary. Return it to the battlefield under its owner’s control at the beginning of the next end step.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Когда игрок играет заклинание или существо атакует, уберите Норина, Осторожного из игры. Верните его в игру под контролем владельца в конце хода.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Quando um jogador jogar uma mágica ou uma criatura atacar, remova Norin, o Cauteloso, do jogo. Devolva-o para o jogo, sob o controle de seu dono, no final do turno.]]></LOCALISED_TEXT>
 <TRIGGER value="SPELL_PLAYED" />
 <TRIGGER value="ATTACKING" />
<RESOLUTION_TIME_ACTION>
    local source = EffectSource()
    if source ~= nil then
       if source:IsToken() == false then
          EffectDC():Protect_CardPtr(COMPARTMENT_ID_EFFECT_SOURCE)
       end
       source:Exile()
    end
</RESOLUTION_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
    local source = EffectSource()
    if source ~= nil then
       local delayDC = EffectDC():Make_Chest(1)
       delayDC:Set_CardPtr(1, source)
       MTG():CreateDelayedTrigger(1, delayDC)
    end
</RESOLUTION_TIME_ACTION>

</TRIGGERED_ABILITY>

<TRIGGERED_ABILITY resource_id="1" >
      <TRIGGER value="BEGINNING_OF_STEP">
    return MTG():GetStep() == STEP_END_OF_TURN
    </TRIGGER>
<CLEANUP fire_once="1" />
<RESOLUTION_TIME_ACTION>
    local card = EffectDC():Get_CardPtr(1)
    if card ~= nil then
       card:PutOntoBattlefield( card:GetOwner() )
    end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
  <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>
NORIN_THE_WARY_113512.zip
Card Xml + Tdx
(548.02 KiB) Downloaded 244 times


Burning Inquiry | Open
Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
  <FILENAME text="BURNING_INQUIRY_191096" />
  <CARDNAME text="BURNING_INQUIRY" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Burning Inquiry]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Requête brûlante]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Pesquisa ardiente]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Brennende Frage]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Indagine Scottante]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[燃え立つ調査]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Burning Inquiry]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Горящий Вопрос]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Inquisição Ardente]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="191096" />
  <ARTID value="191096" />
  <ARTIST name="Zoltan Boros &amp; Gabor Szikszai" />
  <CASTING_COST cost="{R}" />
  <FLAVOURTEXT>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Jariad burned the midnight oil, burned through scroll after scroll, and then burned down his laboratory.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Jariad savait qu’il fallait se brûler les doigts pour apprendre, mais de là à incendier ses parchemins et son laboratoire...]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Jariad se quemó las pestañas, quemó un pergamino tras otro, y luego quemó su laboratorio.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Jariad arbeitete bis spät in die Nacht und kämpfte sich durch eine Schriftrolle nach der anderen, bis sein Kopf qualmte.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Jariad bruciò tutto l’olio durante la notte, bruciò pergamena dopo pergamena e poi incenerì il suo laboratorio.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[ジャリアドは夜を徹して情熱を燃やし、巻物を次々と燃やし、ついには研究所を燃やし尽くしてしまった。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Jariad burned the midnight oil, burned through scroll after scroll, and then burned down his laboratory.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Джариад был в таком запале, что сжег дотла свою лабораторию.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Jariad queimou tanto as pestanas, passando de pergaminho a pergaminho, que a ardência de sua busca incendiou seu laboratório.]]></LOCALISED_TEXT>
  </FLAVOURTEXT>
  <TYPE metaname="Sorcery" />
  <EXPANSION value="M10" />
  <RARITY metaname="C" />
  <SPELL_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Each player draws three cards, then discards three cards at random.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Chaque joueur pioche trois cartes, puis se défausse de trois cartes au hasard.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Cada jugador roba tres cartas, luego descarta tres cartas al azar.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Jeder Spieler zieht drei Karten und wirft dann drei zufällig bestimmte Karten aus seiner Hand ab.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Ogni giocatore pesca tre carte, poi scarta tre carte a caso.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[各プレイヤーはカードを3枚引き、その後カードを3枚無作為に選んで捨てる。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Each player draws three cards, then discards three cards at random.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Каждый игрок берет три карты, затем сбрасывает три случайно выбранные карты.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Cada jogador compra três cards e descarta três cards aleatórios.]]></LOCALISED_TEXT>
    <RESOLUTION_TIME_ACTION>
     for i=0,MTG():GetNumberOfPlayers()-1 do
       local nthPlayer = MTG():GetNthPlayer(i)
       if nthPlayer ~= nil then
          nthPlayer:DrawCards(3)
       end
     end
   </RESOLUTION_TIME_ACTION>
    <RESOLUTION_TIME_ACTION>
     for i=0,MTG():GetNumberOfPlayers()-1 do
       local nthPlayer = MTG():GetNthPlayer(i)
       if nthPlayer ~= nil then
           for i=0,2 do
              nthPlayer:DiscardRandomCard()
           end
       end
     end
   </RESOLUTION_TIME_ACTION>
  </SPELL_ABILITY>
</CARD_V2>
BURNING_INQUIRY_191096.zip
Card Xml + Tdx
(597.32 KiB) Downloaded 247 times


Megrim | Open
Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
  <FILENAME text="MEGRIM_189904" />
  <CARDNAME text="MEGRIM" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Megrim]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Céphalalgie]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Jaqueca]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Schwermut]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Emicrania]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[偏頭痛]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Megrim]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Мигрень]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Enxaqueca]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="189904" />
  <ARTID value="189904" />
  <ARTIST name="Nick Percival" />
  <CASTING_COST cost="{2}{B}" />
  <FLAVOURTEXT>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[“It’s a vicious circle. Stress breeds pain. Pain breeds stress. It’s simply beautiful, wouldn’t you agree?”
—Vradeen, vampire nocturnus]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[« C’est un cercle vicieux. Le stress engendre la souffrance. La souffrance engendre le stress. N’est-ce pas tout simplement merveilleux ? »
—Vradeen, nocturnus vampire]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[“Es un círculo vicioso. El cansancio da dolor. El dolor da cansancio. Es hermoso, ¿no lo crees?”
—Vradeen, nócturnus vampiro]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[„Es ist ein Teufelskreis. Stress verursacht Schmerz. Schmerz verursacht Stress. Einfach schön, findest du nicht auch?”
—Vradeen, Vampir der Nacht]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[“È un circolo vizioso. Lo stress genera dolore. Il dolore genera stress. È semplicemente bello, non sei d’accordo?”
—Vradeen, vampiro notturno]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[「それは悪循環よ。 緊張は苦痛を生む。 苦痛は緊張を生む。 単純で美しいとは思わぬか、のう?」
――吸血鬼の夜侯、ヴラディーン]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[“It’s a vicious circle. Stress breeds pain. Pain breeds stress. It’s simply beautiful, wouldn’t you agree?”
—Vradeen, vampire nocturnus]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[«Это порочный круг. Стресс порождает боль. Боль порождает стресс. Это же так прекрасно, не правда ли?»
— Врадин, вампир-ноктурнус]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[“É um círculo vicioso. A tensão resulta em dor. A dor resulta em tensão. É maravilhoso, você não acha?”
—Vradeen, vampiro noturno]]></LOCALISED_TEXT>
  </FLAVOURTEXT>
  <TYPE metaname="Enchantment" />
  <EXPANSION value="M10" />
  <RARITY metaname="U" />
  <TRIGGERED_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Whenever an opponent discards a card, Megrim deals 2 damage to that player.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[À chaque fois qu’un adversaire se défausse d’une carte, la Céphalalgie lui inflige 2 blessures.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Siempre que un oponente descarte una carta, la Jaqueca hace 2 puntos de daño a ese jugador.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Immer wenn ein Gegner eine Karte abwirft, fügt Schwermut diesem Spieler 2 Schadenspunkte zu.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Ogniqualvolta un avversario scarta una carta, l’Emicrania infligge 2 danni a quel giocatore.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[いずれかの対戦相手がカードを1枚捨てるたび、偏頭痛はそのプレイヤーに2点のダメージを与える。]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Whenever an opponent discards a card, Megrim deals 2 damage to that player.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Каждый раз, когда оппонент сбрасывает карту, Мигрень наносит тому игроку 2 повреждения.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Toda vez que um oponente descarta um card, Enxaqueca causa 2 pontos de dano àquele jogador.]]></LOCALISED_TEXT>
    <TRIGGER value="DISCARD">
    return TriggerObject():GetPlayer():GetTeam() ~= EffectController():GetTeam()
    </TRIGGER>
    <RESOLUTION_TIME_ACTION>
     local oPlayer = TriggerObjectLKI():GetPlayer()
     if oPlayer ~= nil then
        EffectSourceLKI():DealDamageTo(2, oPlayer)
     end
   </RESOLUTION_TIME_ACTION>
  </TRIGGERED_ABILITY>
</CARD_V2>
MEGRIM_189904.zip
Card Xml + Tdx
(506.09 KiB) Downloaded 279 times


About your merfolk request please be more specific so i can check if that cards are already coded or not, and also check if is possible to code.
Last edited by NeoAnderson on 19 Dec 2013, 23:52, edited 1 time in total.
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Formal Request Thread

Postby Orangewaggs » 19 Dec 2013, 23:21

I found the Merfolk so there is no worry for that as for the other files how do i go about installing them?
User avatar
Orangewaggs
 
Posts: 17
Joined: 18 Dec 2013, 23:39
Has thanked: 8 times
Been thanked: 0 time

Re: Formal Request Thread

Postby NeoAnderson » 20 Dec 2013, 00:08

Orangewaggs wrote:I found the Merfolk so there is no worry for that as for the other files how do i go about installing them?
My suggestion is to install Riiak Deck Builder tool, so you can edit and customize your decks.
Just a basic info to start :
If you install the program.
After started the tool, go to Tools then to Options.
In the options the first row is the directory of the game, be sure it is the same where you have installed Duels of Planeswalkers.
Close the options.
Go Again on Tools.
And push Set up Custom data Folder.
This action will create some directories into Duels of the Planeswalkers main folder.
You will find :
Folder : DATA_DLC_DECK_BUILDER_CUSTOM
SubFolder : DATA_ALL_PLATFORMS
Subfolders :
AI_PERSONALITIES
ART_ASSETS ( subfolder ILLUSTRATIONS)
CARDS
FUNCTIONS
SPECS
TEXT_PERMANENT

Ok for the moment you are interested about subfolders CARDS and ART_ASSETS\ILLUSTRATIONS
Copy the card XML file into CARDS folder.
Copy the Tdx file into ART_ASSETS\ILLUSTRATIONS folder.
Done.

Obviously if you don't have any deck with these cards the game will not show them.
To make custom deck i suggest to you to look riiak deck builder topic.
You can find it here : http://www.slightlymagic.net/forum/viewtopic.php?f=99&t=10999

If you have trouble with this procedure you can alternative download this core file.
I made it including all cards you have requested.
Just copy the Wad core file into main Duels of Planeswalker folder.
Same as before you have to add these cards into a custom deck to play with them.

Data_DLC_570_Core.zip
All requested 7 cards
(4.13 MiB) Downloaded 247 times
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Formal Request Thread

Postby NeoAnderson » 20 Dec 2013, 09:36

Hi my friends
I have a question i am coding a card but i have an issue.
The card shold have this effect.(The card is real not new card but an old vintage card)
{T}: deals 1 damage to target creature or player and 1 damage to target creature or player of an opponent’s choice.

So the steps are :
1. First Targetting a Player or a creature. And this is ok.
2. Second Select the Opponent who will replay the damage.
3. Third the opponent have to choose a Target player or creature.

Now I made the card to work but for the 3 point i am not able to use target functions.
I mean i tried to use SetTargetCount(1), SetTargetPrompt and ChooseTargets but it doesn't work always receive a scriptlog refering to a nil value.
Replacing these functions with SetItemCount(1), SetItemPrompt and ChooseItems it works.

The code is :
Code: Select all
  <ACTIVATED_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{T}: deals 1 damage to target creature or player and 1 damage to target creature or player of an opponent’s choice.]]></LOCALISED_TEXT>
    <COST type="TapSelf" />
    <TARGET tag="CARD_QUERY_CHOOSE_DEAL_1_DAMAGE" definition="0" compartment="0" count="1" />
    <TARGET tag="CARD_QUERY_CHOOSE_PLAYER" definition="1" compartment="1" count="1" />
    <TARGET_DEFINITION id="0">
    local filter = ClearFilter()
    filter:SetFilterType(FILTER_TYPE_CARDS + FILTER_TYPE_PLAYERS)
    filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
    </TARGET_DEFINITION>

    <TARGET_DEFINITION id="1">
      local filter = ClearFilter()
      filter:SetFilterType( FILTER_TYPE_PLAYERS)
      filter:Add( FE_TEAM, OP_NOT, EffectController():GetTeam() )
    </TARGET_DEFINITION>

    <PLAY_TIME_ACTION>
    local opponent_player = EffectDC():Get_Targets(1) and EffectDC():Get_Targets(1):Get_PlayerPtr(0)
    if opponent_player ~= nil then
    local oVal = 1
    local filter = ClearFilter()
    filter:SetFilterType(FILTER_TYPE_CARDS + FILTER_TYPE_PLAYERS)
    filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
    opponent_player:SetItemCount( oVal )
       for i=0, 1-1 do
       opponent_player:SetItemPrompt( i, "CARD_QUERY_CHOOSE_DEAL_1_DAMAGE" )
      end
      opponent_player:ChooseItems( EffectDC():Make_Targets(2) )
    end
    </PLAY_TIME_ACTION>

    <RESOLUTION_TIME_ACTION>
    local target_creature = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(0)
    local target_player = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_PlayerPtr(0)
    local target_creatureB = EffectDC():Get_Targets(2) and EffectDC():Get_Targets(2):Get_CardPtr(0)
    local target_playerB = EffectDC():Get_Targets(2) and EffectDC():Get_Targets(2):Get_PlayerPtr(0)
    if target_creature ~= nil then
       EffectSourceLKI():DealDamageTo(1, target_creature)
    elseif target_player ~= nil then
       EffectSourceLKI():DealDamageTo(1, target_player)
    end
    if target_creatureB ~= nil then
       EffectSourceLKI():DealDamageTo(1, target_creatureB)
    elseif target_playerB ~= nil then
       EffectSourceLKI():DealDamageTo(1, target_playerB)
    end
    </RESOLUTION_TIME_ACTION>
  </ACTIVATED_ABILITY>
How to fix this issue?
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Formal Request Thread

Postby sumomole » 20 Dec 2013, 10:01

NeoAnderson wrote:Hi my friends
I have a question i am coding a card but i have an issue.
The card shold have this effect.(The card is real not new card but an old vintage card)
{T}: deals 1 damage to target creature or player and 1 damage to target creature or player of an opponent’s choice.
Cuombajj Witches
You can think of it as two parts, two separate abilities, the first almost like Shock, the second target selection requires two steps, you can refer to Evangelize, I assume you have all the official card files.
User avatar
sumomole
Programmer
 
Posts: 611
Joined: 07 Jun 2011, 08:34
Has thanked: 51 times
Been thanked: 234 times

Re: Formal Request Thread

Postby NeoAnderson » 20 Dec 2013, 10:36

sumomole wrote:
NeoAnderson wrote:Hi my friends
I have a question i am coding a card but i have an issue.
The card shold have this effect.(The card is real not new card but an old vintage card)
{T}: deals 1 damage to target creature or player and 1 damage to target creature or player of an opponent’s choice.
Cuombajj Witches
You can think of it as two parts, two separate abilities, the first almost like Shock, the second target selection requires two steps, you can refer to Evangelize, I assume you have all the official card files.
Yes my friend is that card i am coding Arabian Nights set. Just for fun.

UPDATE : Ok thanks my friend, now i have resolved, thanks to you! Inside Evangelize code i found the answer : MTG():SetTargetAnswerer

Code: Select all
<ACTIVATED_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{T}: Cuombajj Witches deals 1 damage to target creature or player and 1 damage to target creature or player of an opponent’s choice.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[{T}: Cuombajj Witches deals 1 damage to target creature or player and 1 damage to target creature or player of an opponent’s choice.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[{T}: Cuombajj Witches deals 1 damage to target creature or player and 1 damage to target creature or player of an opponent’s choice.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[{T}: Cuombajj Witches deals 1 damage to target creature or player and 1 damage to target creature or player of an opponent’s choice.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[{T}: Le Streghe Cuombajj infliggono 1 danno alla creatura o al giocatore bersaglio e 1 danno alla creatura o al giocatore bersaglio a scelta di un avversario.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[{T}: Cuombajj Witches deals 1 damage to target creature or player and 1 damage to target creature or player of an opponent’s choice.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[{T}: Cuombajj Witches deals 1 damage to target creature or player and 1 damage to target creature or player of an opponent’s choice.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[{T}: Cuombajj Witches deals 1 damage to target creature or player and 1 damage to target creature or player of an opponent’s choice.]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[{T}: Cuombajj Witches deals 1 damage to target creature or player and 1 damage to target creature or player of an opponent’s choice.]]></LOCALISED_TEXT>
    <COST type="TapSelf" />
    <TARGET tag="CARD_QUERY_CHOOSE_DEAL_1_DAMAGE" definition="0" compartment="0" count="1" />
    <TARGET tag="CARD_QUERY_CHOOSE_PLAYER" definition="1" compartment="1" count="1" dependency="1" not_targeted="1" />
    <TARGET_DEFINITION id="0">
    local filter = ClearFilter()
    filter:SetFilterType(FILTER_TYPE_CARDS + FILTER_TYPE_PLAYERS)
    filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
    </TARGET_DEFINITION>

    <TARGET_DEFINITION id="1">
      local filter = ClearFilter()
      filter:SetFilterType( FILTER_TYPE_PLAYERS)
      filter:Add( FE_TEAM, OP_NOT, EffectController():GetTeam() )
    </TARGET_DEFINITION>

    <TARGET tag="CARD_QUERY_CHOOSE_DEAL_1_DAMAGE" definition="0" compartment="2" count="1">
    MTG():SetTargetAnswerer(EffectDC():Get_Targets(1):Get_PlayerPtr(0))
    </TARGET>

    <RESOLUTION_TIME_ACTION>
    local target_creature = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(0)
    local target_player = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_PlayerPtr(0)
    local target_creatureB = EffectDC():Get_Targets(2) and EffectDC():Get_Targets(2):Get_CardPtr(0)
    local target_playerB = EffectDC():Get_Targets(2) and EffectDC():Get_Targets(2):Get_PlayerPtr(0)
    if target_creature ~= nil then
       EffectSourceLKI():DealDamageTo(1, target_creature)
    elseif target_player ~= nil then
       EffectSourceLKI():DealDamageTo(1, target_player)
    end
    if target_creatureB ~= nil then
       EffectSourceLKI():DealDamageTo(1, target_creatureB)
    elseif target_playerB ~= nil then
       EffectSourceLKI():DealDamageTo(1, target_playerB)
    end
    </RESOLUTION_TIME_ACTION>
  </ACTIVATED_ABILITY>
Now works perfectly !!!
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Formal Request Thread

Postby NeoAnderson » 20 Dec 2013, 21:59

Hi my friends,
I am coding another card from Arabian nights set, i have made some code but i still not tested it, the conditions to test are little bit complicated to replicate, i think i have to arrange a custom deck for the AI just to test it.
I would know the opinion of skilled modders, to understand if it could work.

Guardian Beast UNTESTED | Open
Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<CARD_V2 ExportVersion="1">
  <FILENAME text="GUARDIAN_BEAST_202539" />
  <CARDNAME text="GUARDIAN_BEAST" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Guardian Beast]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Guardian Beast]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Guardian Beast]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Guardian Beast]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Guardian Beast]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Guardian Beast]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Guardian Beast]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Guardian Beast]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Guardian Beast]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="202539" />
  <ARTID value="202539" />
  <ARTIST name="Ken Meyer, Jr." />
  <CASTING_COST cost="{3}{B}" />
  <TYPE metaname="Creature" />
  <SUB_TYPE metaname="Beast" />
  <EXPANSION value="ME4" />
  <RARITY metaname="R" />
  <POWER value="2" />
  <TOUGHNESS value="4" />
  <STATIC_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[As long as Guardian Beast is untapped, noncreature artifacts you control can’t be enchanted, they have indestructible, and other players can’t gain control of them. This effect doesn’t remove Auras already attached to those artifacts.]]></LOCALISED_TEXT>
    <FILTER filter_id="0">
    local filter = ClearFilter()
    filter:Add( FE_TYPE, OP_IS, CARD_TYPE_ARTIFACT )
    filter:Add( FE_TYPE, OP_NOT, CARD_TYPE_CREATURE  )
    filter:Add( FE_CONTROLLER, OP_IS, EffectController())
    </FILTER>
   <CONTINUOUS_ACTION layer="6" filter_id="0">
    if FilteredCard() ~= nil and EffectSource():IsTapped() == false then
       local characteristics = FilteredCard():GetCurrentCharacteristics()
       characteristics:Bool_Set( CHARACTERISTIC_INDESTRUCTIBLE, 1 )
    end
    </CONTINUOUS_ACTION>
    <DURATION>
       if EffectSource() ~= nil then
         return EffectSource():IsTapped() 
       else
         return true
       end
    </DURATION>
   </STATIC_ABILITY>

<TRIGGERED_ABILITY replacement_effect="1">
<TRIGGER value="CARD_CONSIDERED_FOR_TARGETTING" simple_qualifier="objectyoucontrol" pre_trigger="1">
if EffectSource():IsTapped() == false and SecondaryObject()~= nil and TriggerObject()~= nil and SecondaryObject():GetSubType():Test( ENCHANTMENT_TYPE_AURA ) and TriggerObject():GetCardType():Test( CARD_TYPE_ARTIFACT ) then
   if TriggerObject():GetCardType():Test( CARD_TYPE_CREATURE ) then
         return false
       else
         return true
       end
else
        return false
end
</TRIGGER>
</TRIGGERED_ABILITY>

<TRIGGERED_ABILITY replacement_effect="1">
<TRIGGER value="CONTROLLER_CHANGED" simple_qualifier="objectyoucontrol" pre_trigger="1">
 if EffectSource():IsTapped() == false and TriggerObject()~= nil and TriggerObject():GetCardType():Test( CARD_TYPE_ARTIFACT ) then
 if TriggerObject():GetCardType():Test( CARD_TYPE_CREATURE ) then
         return false
       else
         return true
       end
else
        return false
end
</TRIGGER>
  </TRIGGERED_ABILITY>
  <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>
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Formal Request Thread

Postby thefiremind » 20 Dec 2013, 22:42

NeoAnderson wrote:Hi my friends,
I am coding another card from Arabian nights set, i have made some code but i still not tested it, the conditions to test are little bit complicated to replicate, i think i have to arrange a custom deck for the AI just to test it.
I would know the opinion of skilled modders, to understand if it could work.
If the controller change trigger can be properly overridden (which is unknown until you try), then it should work. Only one thing: the DURATION in a static ability is useless. Some official cards have it, but it does nothing.
< Former DotP 2012/2013/2014 modder >
Currently busy with life...
User avatar
thefiremind
Programmer
 
Posts: 3515
Joined: 07 Nov 2011, 10:55
Has thanked: 118 times
Been thanked: 722 times

Re: Formal Request Thread

Postby NeoAnderson » 20 Dec 2013, 22:54

thefiremind wrote:
NeoAnderson wrote:Hi my friends,
I am coding another card from Arabian nights set, i have made some code but i still not tested it, the conditions to test are little bit complicated to replicate, i think i have to arrange a custom deck for the AI just to test it.
I would know the opinion of skilled modders, to understand if it could work.
If the controller change trigger can be properly overridden (which is unknown until you try), then it should work. Only one thing: the DURATION in a static ability is useless. Some official cards have it, but it does nothing.
Thanks my dear friend,
I am glad to see your comments again.
I am still trying to testing it.
But i already find the first issue, if an enchantment aura is putonbattlefield without cast it allow to target the artifact.
I am trying to resolve it with the this additional trigger :

Code: Select all
<TRIGGERED_ABILITY replacement_effect="1">
      <TRIGGER value="TRIGGER_TARGETS_CHOSEN" simple_qualifier="objectyoucontrol" pre_trigger="1">
    if EffectSource():IsTapped() == false and SecondaryObject()~= nil and TriggerObject()~= nil and SecondaryObject():GetSubType():Test( ENCHANTMENT_TYPE_AURA ) and TriggerObject():GetCardType():Test( CARD_TYPE_ARTIFACT ) then
      if TriggerObject():GetCardType():Test( CARD_TYPE_CREATURE ) then
         return false
       else
         return true
       end
    else
        return false
    end
    </TRIGGER>
</TRIGGERED_ABILITY>
UPDATE : It doesn't work, this second trigger is useless here.
It seems that the trigger CARD_CONSIDERED_FOR_TARGETTING works when the player ig going to cast a spell who targets.
So it works on targetting checks before to cast a spell. If the spell is already on the stack the targetting is allowed and it doesn't trigger.
I am going to check if adding this trigger BECAME_TARGET_OF_SPELL could resolve the problem.

About the duration thanks i will remove it.

2. About the controller changed it is also my worry but i also have another solution if it doesn't work
i could add SetbaseController to getowner into static ability where i give indestructible.

3. Some posts ago i was discussing about a new implementation with sumomole, about this card Xenograft.
I have made a typing function, i would know your opinion, and i also need some help to understand how to implement the AI code for the selection. Can you take a look?
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Formal Request Thread

Postby thefiremind » 20 Dec 2013, 23:30

NeoAnderson wrote:if an enchantment aura is putonbattlefield without cast it allow to target the artifact.
I had to deal with Auras put onto the battlefield because of Copy Enchantment and I had been forced to use an approximation, so I don't know if there's a solution for this.

NeoAnderson wrote:I am trying to resolve it with the this additional trigger :
This won't work mainly because the trigger name should be TARGETS_CHOSEN without TRIGGER_, but even without that error I doubt it would work as intended. You can still try, though.

NeoAnderson wrote:Some posts ago i was discussing about a new implementation with sumomole, about this card Xenograft.
I have made a typing function, i would know your opinion, and i also need some help to understand how to implement the AI code for the selection. Can you take a look?
The typing idea is good for human players, but I think you'll still need to force default decisions for the AI. I don't even know what kind of combo deck Xenograft is needed for, but you could make the AI decide according to what cards it finds in its own zones (library, hand, battlefield). For example, let's say that Xenograft is needed for a combo together with cards A and B, and for another combo together with cards C and D. If the AI's library and/or hand and/or battlefield contains at least one copy of A and one copy of B, the AI will choose the creature type needed for the combo with A and B; same for C and D. If you cannot find any of the cards... well, I don't know, choose a random type. :oops:
< Former DotP 2012/2013/2014 modder >
Currently busy with life...
User avatar
thefiremind
Programmer
 
Posts: 3515
Joined: 07 Nov 2011, 10:55
Has thanked: 118 times
Been thanked: 722 times

Re: Formal Request Thread

Postby NeoAnderson » 20 Dec 2013, 23:40

thefiremind wrote:
NeoAnderson wrote:if an enchantment aura is putonbattlefield without cast it allow to target the artifact.
I had to deal with Auras put onto the battlefield because of Copy Enchantment and I had been forced to use an approximation, so I don't know if there's a solution for this.

NeoAnderson wrote:I am trying to resolve it with the this additional trigger :
This won't work mainly because the trigger name should be TARGETS_CHOSEN without TRIGGER_, but even without that error I doubt it would work as intended. You can still try, though.

NeoAnderson wrote:Some posts ago i was discussing about a new implementation with sumomole, about this card Xenograft.
I have made a typing function, i would know your opinion, and i also need some help to understand how to implement the AI code for the selection. Can you take a look?
The typing idea is good for human players, but I think you'll still need to force default decisions for the AI. I don't even know what kind of combo deck Xenograft is needed for, but you could make the AI decide according to what cards it finds in its own zones (library, hand, battlefield). For example, let's say that Xenograft is needed for a combo together with cards A and B, and for another combo together with cards C and D. If the AI's library and/or hand and/or battlefield contains at least one copy of A and one copy of B, the AI will choose the creature type needed for the combo with A and B; same for C and D. If you cannot find any of the cards... well, I don't know, choose a random type. :oops:
Thanks a lot for your support my friend,
About the Auras i am still trying.
Yeah just now i see that i made the syntax error about TARGETS_CHOSEN trigger it was copy and paste and i miss it.
I will try again.
Anyway i also tried BECAME_TARGET_OF_SPELL (with replacement effect and pretrigger, and without replacement and pretrigger), I tried with SecondaryObject and SecondaryObjectLKI() but nothing!

Do you have checked the code of this card Retether ?
There is an interesting function : MTG():BESPOKE_Retether_SetOnlyCreaturesCanBeEnchantedFlag(1)
Would be the best solution if there was a function to exclude a type from being enchanted.


About Xenograft, yeah i know i have to force the AI to choose, and i was already thinking to let it check the playing zone.
But my main doubt was how i can check the possibles combos between the cards?
Does the ai make this interpretation by itself? And the check should be extended also to the other ingame zones of the other players. I mean the Ai could have interest to have a type who interact with other cards in play undercontrol of other players.
So it should check all visible zones of ther player excluding the libraries.
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Formal Request Thread

Postby thefiremind » 21 Dec 2013, 00:53

NeoAnderson wrote:Anyway i also tried BECAME_TARGET_OF_SPELL (with replacement effect and pretrigger, and without replacement and pretrigger), I tried with SecondaryObject and SecondaryObjectLKI() but nothing!
The problem is that putting an Aura onto the battlefield and attach it to a creature doesn't target the creature (you can enchant creatures with shroud this way). I have only one idea, it's not elegant and it may cause unwanted effects (if it works at all :lol:) but that's all I have: grant your artifacts protection from Auras with no parent. I think you need a FILTER_CONDITION with FilteredCard():GetParent() == nil because I don't think there's another way, and some unusual protections were making DotP2013 crash, that's why I don't know if it works on DotP2014.

NeoAnderson wrote:Do you have checked the code of this card Retether ?
There is an interesting function : MTG():BESPOKE_Retether_SetOnlyCreaturesCanBeEnchantedFlag(1)
Would be the best solution if there was a function to exclude a type from being enchanted.
You can check by yourself that there's no other function like that:
http://www.slightlymagic.net/wiki/DotP_2014:_Functions
that's the funniest function, I imagine the developers saying: "Hey, why thinking at complicated structures that could be useful for other cards as well, let's just make a function that's useful only for Retether!" :lol:

NeoAnderson wrote:But my main doubt was how i can check the possibles combos between the cards?
You can't. With my suggestion I meant to get informed about the possible combos and hard-code the combo cards' names into Xenograft code. Personally, I don't see any other way out, and I don't think it's possible to make a Xenograft that the AI will use like a human. I'm sure that people who worked on this kind of functionality before (like RiiakShiNal or sumomole) will be more helpful than me on this matter.
< Former DotP 2012/2013/2014 modder >
Currently busy with life...
User avatar
thefiremind
Programmer
 
Posts: 3515
Joined: 07 Nov 2011, 10:55
Has thanked: 118 times
Been thanked: 722 times

Re: Formal Request Thread

Postby NeoAnderson » 21 Dec 2013, 01:31

thefiremind wrote:The problem is that putting an Aura onto the battlefield and attach it to a creature doesn't target the creature (you can enchant creatures with shroud this way). I have only one idea, it's not elegant and it may cause unwanted effects (if it works at all :lol:) but that's all I have: grant your artifacts protection from Auras with no parent. I think you need a FILTER_CONDITION with FilteredCard():GetParent() == nil because I don't think there's another way, and some unusual protections were making DotP2013 crash, that's why I don't know if it works on DotP2014.
It's a pleasure to exchange idea with person like you.
I will try also your idea but i also have another one. I am not sure if i am enough skilled to code it.
My idea is to use ZONECHANGE to check when an Aura come into battlefield without casting it (i think with WasCast() function).
Now we could try to retrieve targetting info from Aura doing something similar to the card made by you Hindering Light. Then force it to retrieve a new target loading the target definition and excluding from it non-creature artifacts.
thefiremind wrote:You can check by yourself that there's no other function like that:
http://www.slightlymagic.net/wiki/DotP_2014:_Functions
that's the funniest function, I imagine the developers saying: "Hey, why thinking at complicated structures that could be useful for other cards as well, let's just make a function that's useful only for Retether!" :lol:
I know i always use that page as a guide for function i still don't know! :(
The unbelievable think is how to program a function without leaving the possibility to use it for multiple situations!
All Wasted time! Anyway would be interesting if could be possible to see the decomplied function, but as i have seen for 2014 there are not decomplied LoL files.
thefiremind wrote:You can't. With my suggestion I meant to get informed about the possible combos and hard-code the combo cards' names into Xenograft code. Personally, I don't see any other way out, and I don't think it's possible to make a Xenograft that the AI will use like a human. I'm sure that people who worked on this kind of functionality before (like RiiakShiNal or sumomole) will be more helpful than me on this matter.
As i was imaging at this point i think the best solution is to let the AI CHOOSE for a value between the first Type and the latest one, then add that type. Who knows, could be interesting to view if it can add useful types!
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

PreviousNext

Return to 2014

Who is online

Users browsing this forum: No registered users and 6 guests

Main Menu

User Menu

Our Partners


Who is online

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

Users browsing this forum: No registered users and 6 guests

Login Form