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)
2012




Sun Mar 25, 2012 DOTP 2012 Eglin's Decks v1.01
Moderator: CCGHQ Admins
Re: 03/10/2012 DOTP 2012 Eglin's Decks v0.93
by Eglin » 15 Mar 2012, 20:45
Thank you very much for the kind words, Ptisan.ptisan35700 wrote:The "I'll Take It" deck seems really interesting, but the Lux Cannon and Jinxed Idol cards don't seem to work right.
For me, Lux Cannon will charge but won't discharge. And Jinxed Idol won't change players after a creature sacrifice. Are you getting the same issues?
Love the interesting new cards you are putting out, Eglin! Keep up the great work!
Unfortunately, I haven't devoted the time to proper debugging (or really even playtesting) yet. I'm sure I have given the Jinxed Idol to the AI using the Bazaar Trader, but I guess I don't remember trying it w/ the sacrifice option. I wholeheartedly believe there's an issue, however - I've seen the AI sacrifice creature after creature to it, but not generally give the idol back to me. I have only recently learned that it's possible to set the controller outside of a continuous block, and I am hoping that making this change will improve the characteristics of several of the cards in that deck. I'll take a look at the Lux Cannon soon, too - that card is pretty simple, so the error inside is probably something trivially simple.
edit (five minutes later): I looked at the Lux Cannon, and it's trying to pay w/ ARROWHEAD counters instead of CHARGE counters. If you have the mod tools, you can easily change it. Otherwise, I'll post an update soon w/ a few fixes including this one and probably a few new decks.
Re: 03/10/2012 DOTP 2012 Eglin's Decks v0.93
by thefiremind » 16 Mar 2012, 00:08
The problem with Jinxed Idol is here:
- Code: Select all
<PLAY_TIME_ACTION>
local filter = Object():GetFilter()
filter:Clear()
filter:SetOwner( Object():GetPlayer() )
filter:SetFilterType( FILTER_TYPE_PLAYERS + FILTER_TYPE_OPPONENTS )
return TargetBadF()
</PLAY_TIME_ACTION>
< 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: 03/10/2012 DOTP 2012 Eglin's Decks v0.93
by Eglin » 16 Mar 2012, 00:27
I went back and revised the Jinxed Idol after reading your post about changing controllers outside of a continuous action. I, too, noticed the BadF function being badly out of place. Here's what I've got now, and it seems to work flawlessly:thefiremind wrote:The problem with Jinxed Idol is here:This part should be a <TARGET_DETERMINATION>, not a <PLAY_TIME_ACTION>.
- Code: Select all
<PLAY_TIME_ACTION>
local filter = Object():GetFilter()
filter:Clear()
filter:SetOwner( Object():GetPlayer() )
filter:SetFilterType( FILTER_TYPE_PLAYERS + FILTER_TYPE_OPPONENTS )
return TargetBadF()
</PLAY_TIME_ACTION>
- Code: Select all
<?xml version='1.0'?>
<CARD_V2 custom="true">
<FILENAME text="JINXED_IDOL_888262975" />
<CARDNAME text="JINXED_IDOL" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Jinxed Idol]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="888262975" />
<ARTID value="JINXEDIDOL" />
<FRAMECOLOUR name="A" />
<COLOUR value="A" />
<ARTIST name="jD" />
<CASTING_COST cost="{2}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA["Please, honored friend, take it with my compliments. I insist."]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[]]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="Artifact" order_de-DE="0" order_es-ES="0" order_fr-FR="0" order_it-IT="0" order_jp-JA="0" />
<EXPANSION value="M11" />
<RARITY metaname="R" />
<TRIGGERED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[At the beginning of your upkeep, Jinxed Idol deals 2 damgae to you.]]></LOCALISED_TEXT>
<TRIGGER value="BEGINNING_OF_STEP">
return (MTG():GetStep() == STEP_UPKEEP and Object():GetController():MyTurn() ~= 0 and TriggeredForMe() )
</TRIGGER>
<RESOLUTION_TIME_ACTION>
Object():GetController():DealDamage(2, Object())
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<ACTIVATED_ABILITY layer="2">
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Sacrifice a creature: Target opponent gains control of Jinxed Idol.]]></LOCALISED_TEXT>
<COST type="Sacrifice">
<PLAYTIME>
ChooseTarget( "CARD_QUERY_CHOOSE_CREATURE_TO_SACRIFICE" )
</PLAYTIME>
<TARGET_DETERMINATION>
local filter = Object():GetFilter()
filter:Clear()
filter:SetController( Object():GetPlayer() )
filter:AddCardType( CARD_TYPE_CREATURE )
filter:SetZone( ZONE_IN_PLAY )
return TargetBadF()
</TARGET_DETERMINATION></COST>
<PLAY_TIME_ACTION target_choosing="1">
local filter = Object():GetFilter()
filter:Clear()
filter:SetOwner( Object():GetPlayer() )
filter:SetFilterType( FILTER_TYPE_PLAYERS + FILTER_TYPE_OPPONENTS )
--todo: fix string
Object():GetPlayer():ChooseTargetDC( "CARD_QUERY_CHOOSE_TAKE_JINXED_IDOL", MTG():EffectDataChest():Make_Targets( 1 ))
</PLAY_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
local dc = MTG():EffectDataChest():Get_Targets(1)
if dc ~= nil then
local target_player = dc:Get_PlayerPtr(0)
if target_player ~= nil then
Object():SetPermanentController( target_player )
end
end
</RESOLUTION_TIME_ACTION>
</ACTIVATED_ABILITY>
<HELP title="MORE_INFO_BADGE_TITLE_21" body="MORE_INFO_BADGE_BODY_21" zone="Any" />
</CARD_V2>
Re: 03/10/2012 DOTP 2012 Eglin's Decks v0.93
by thefiremind » 16 Mar 2012, 09:12
This should work in most cases, but I don't know what will happen if your opponent gains hexproof. Probably, the card will still glow as you could use it, since there's no target determination that checks the availability of an opponent to target.
You could also remove the HELP tag: I can't remember which badge is #21, but this card has no badges for sure.
You could also remove the HELP tag: I can't remember which badge is #21, but this card has no badges for sure.

< 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: 03/10/2012 DOTP 2012 Eglin's Decks v0.93
by sadlyblue » 16 Mar 2012, 09:48
Btw, Oracle of Mul Daya lets you play land from the top of your library more than the limit for turn.
Before activating this ability, it should check if you can play land from your hand.
Before activating this ability, it should check if you can play land from your hand.
Re: 03/10/2012 DOTP 2012 Eglin's Decks v0.93
by thefiremind » 16 Mar 2012, 10:46
The problem is that Eglin's code puts the land into play, which is different from playing the land.sadlyblue wrote:Btw, Oracle of Mul Daya lets you play land from the top of your library more than the limit for turn.
Before activating this ability, it should check if you can play land from your hand.
I invented the following code, which should be as close as we can get to the real deal:
- Code: Select all
<?xml version='1.0'?>
<CARD_V2 custom="true">
<FILENAME text="ORACLE_OF_MUL_DAYA_888262874" />
<CARDNAME text="ORACLE_OF_MUL_DAYA" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Oracle of Mul Daya]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="888262874" />
<ARTID value="ORACLE OF MUL DAYA" />
<FRAMECOLOUR name="G" />
<COLOUR value="G" />
<ARTIST name="Vance Kovacs" />
<CASTING_COST cost="{3}{G}" />
<TYPE metaname="Creature" order_de-DE="0" order_es-ES="0" order_fr-FR="0" order_it-IT="0" order_jp-JA="0" />
<SUB_TYPE metaname="Elf" order_de-DE="0" order_es-ES="1" order_fr-FR="0" order_it-IT="1" order_jp-JA="0" />
<SUB_TYPE metaname="Shaman" order_de-DE="1" order_es-ES="0" order_fr-FR="1" order_it-IT="0" order_jp-JA="1" />
<EXPANSION value="ZEN" />
<RARITY metaname="R" />
<POWER value="2" />
<TOUGHNESS value="2" />
<TRIGGERED_ABILITY internal="1">
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[You may play an additional land on each of your turns.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[]]></LOCALISED_TEXT>
<TRIGGER value="BEGINNING_OF_STEP">
return ( MTG():GetStep() == STEP_UNTAP and TriggerPlayer():MyTurn() ~= 0 and TriggerPlayer() == Object():GetPlayer() )
</TRIGGER>
<CONTINUOUS_ACTION>
Object():GetPlayer():GetCurrentCharacteristics():Int_Increment(PLAYER_INTCHARACTERISTIC_EXTRA_LAND_DROPS)
</CONTINUOUS_ACTION>
<DURATION>
return (MTG():GetStep() == STEP_CLEANUP)
</DURATION>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY internal="1">
<TRIGGER value="LAND_PLAYED">
return ( TriggerPlayer() == Object():GetPlayer() )
</TRIGGER>
<RESOLUTION_TIME_ACTION>
local landstore = Storage( Object():GetPlayer() )
local nlands = landstore.get( "LANDS_PLAYED" )
landstore.set( "LANDS_PLAYED", nlands+1 )
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY internal="1">
<TRIGGER value="BEGINNING_OF_STEP">
return MTG():GetStep() == STEP_END_OF_TURN and TriggeredForMe()
</TRIGGER>
<RESOLUTION_TIME_ACTION>
local landstore = Storage( Object():GetPlayer() )
landstore.set( "LANDS_PLAYED", 0 )
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<STATIC_ABILITY influencing_zone="player" layer="8">
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Play with the top card of your library revealed.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[]]></LOCALISED_TEXT>
<CONTINUOUS_ACTION>
Object():GetPlayer():GetCurrentCharacteristics():Bool_Set( PLAYER_CHARACTERISTIC_PLAY_WITH_TOP_CARD_OF_LIBRARY_REVEALED, 1 )
</CONTINUOUS_ACTION>
</STATIC_ABILITY>
<ACTIVATED_ABILITY forced_skip="1" sorcery_time="1">
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[You may play the top card of your library if it’s a land card.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[]]></LOCALISED_TEXT>
<COST type="Mana" cost="{0}" />
<AVAILABILITY>
local card = Object():GetPlayer():Library_GetNth(0)
local landstore = Storage( Object():GetPlayer() )
local nlands = landstore.get( "LANDS_PLAYED" )
return ( card ~= nil and
card:GetCardType():Test(CARD_TYPE_LAND) ~= 0 and
nlands < Object():GetPlayer():GetCurrentCharacteristics():Int_Get(PLAYER_INTCHARACTERISTIC_EXTRA_LAND_DROPS) + 1 )
</AVAILABILITY>
<PLAY_TIME_ACTION>
local card = Object():GetPlayer():Library_GetNth(0)
if card == nil then
return
else
if card:GetCardType():Test(CARD_TYPE_LAND) ~= 0 then
card:PutIntoPlay( Object():GetPlayer() )
local landstore = Storage( Object():GetPlayer() )
local nlands = landstore.get( "LANDS_PLAYED" )
landstore.set( "LANDS_PLAYED", nlands+1 )
end
end
</PLAY_TIME_ACTION>
<AI_AVAILABILITY behaviour="SorceryTime" />
<AI_BASE_SCORE score="600" zone="in_play" />
</ACTIVATED_ABILITY>
<SFX text="COMBAT_GREEN_MAGIC_LARGE_ATTACK" power_boundary_min="4" power_boundary_max="-1" />
<SFX text="COMBAT_GREEN_MAGIC_SMALL_ATTACK" power_boundary_min="1" power_boundary_max="3" />
</CARD_V2>
Too bad we can't really play (with proper cost and such) the top card of the library, I would love to have Future Sight available.
< 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: 03/10/2012 DOTP 2012 Eglin's Decks v0.93
by Persee » 16 Mar 2012, 12:10
Why don't you use PlayFreeFromAnywhere to play the land from top of library ?
It's works with the limit for turn.
I used it in my Crucible of Worlds.
It's works with the limit for turn.
I used it in my Crucible of Worlds.
Re: 03/10/2012 DOTP 2012 Eglin's Decks v0.93
by thefiremind » 16 Mar 2012, 13:24
Because I thought it worked only with "real" spells...Persee wrote:Why don't you use PlayFreeFromAnywhere to play the land from top of library ?
It's works with the limit for turn.
I used it in my Crucible of Worlds.


< 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: 03/10/2012 DOTP 2012 Eglin's Decks v0.93
by Persee » 16 Mar 2012, 16:10
I thought that too until I read the text of Djinn of Wishes.thefiremind wrote:Because I thought it worked only with "real" spells...

Re: 03/10/2012 DOTP 2012 Eglin's Decks v0.93
by Eglin » 16 Mar 2012, 19:23
I'll try to make time to integrate thefiremind's Oracle implementation very soon, unless someone else wants to offer one using the PlayFreeFromAnywhere mechanism. Thanks for noting the issue and providing possible solutions, everyone.
Re: Mar 16, 2012 DOTP 2012 Eglin's Decks v0.93
by Eglin » 17 Mar 2012, 03:00
Updated, 3/16. Added a few new decks, quite a few new cards, fixed many bugs. Added some rudimentary box art for the decks - my apologies to anyone who is frustrated or confused by the change of images.
Still in search of a solution to the periodic end-match crashes - does this happen to everyone who tries this pack? Anyone have any clue as to what might be the culprit?
Still in search of a solution to the periodic end-match crashes - does this happen to everyone who tries this pack? Anyone have any clue as to what might be the culprit?
Re: Mar 16, 2012 DOTP 2012 Eglin's Decks v0.94
by elminster63500 » 17 Mar 2012, 06:39
great job !
But the game crashes with almost of your decks. Several cards have no text (exemple - tarmogoyf). The crash is active :
- when we consult some of your decks in the deck composition like the 5 color cascade deck
- or when we play with your decks (and nearly for all).
sorry for my poor english (i am French)
But the game crashes with almost of your decks. Several cards have no text (exemple - tarmogoyf). The crash is active :
- when we consult some of your decks in the deck composition like the 5 color cascade deck
- or when we play with your decks (and nearly for all).
sorry for my poor english (i am French)
- elminster63500
- Posts: 48
- Joined: 30 Jan 2012, 15:43
- Has thanked: 12 times
- Been thanked: 1 time
Re: Mar 16, 2012 DOTP 2012 Eglin's Decks v0.94
by Eglin » 17 Mar 2012, 07:23
Thank you!elminster63500 wrote:great job !
But the game crashes with almost of your decks. Several cards have no text (exemple - tarmogoyf). The crash is active :
- when we consult some of your decks in the deck composition like the 5 color cascade deck
- or when we play with your decks (and nearly for all).
sorry for my poor english (i am French)
Hrm... the problems you describe do not match my experiences. Maybe I can help. Some of my decks still crash the game at the end of a match, but as far as I know, all of them should be playable. Did you install Kev's mod, as listed in the requirements at the beginning of my post in bold? Many of the cards and quite a few of the programming functions I use depend on his work, and if you didn't have his Data_DLC_7777.wad (recent, this year) in your game directory you might have some problems. The same is probably true for the official DLC decks.
For the missing text on some cards, like Tarmogoyf... My skill in most foreign languages is rather poor, so I have not provided localization strings. There may be a way for you to force the game to run in English - I am not sure. If you would like to volunteer to translate into French, I would be happy to do everything possible to make it easy for you.
Cheers,
Eglin
Re: Mar 16, 2012 DOTP 2012 Eglin's Decks v0.94
by elminster63500 » 17 Mar 2012, 07:45
Thanks for your advises but
- I have already downloaded dotp2012.exe with the dlc and the 2 pack.
- I don't want french text (i understand wroten english but i speak english like a spanish cow - ) on the cards. Perhaps, i miss an operation to recuperate the english texts so i will in your debt if you explain to me how to recuperate them.
- perhaps i should download the dotp2012 and the packs again ?
- and once more, you have made a great job !!
Cheers
- I have already downloaded dotp2012.exe with the dlc and the 2 pack.
- I don't want french text (i understand wroten english but i speak english like a spanish cow - ) on the cards. Perhaps, i miss an operation to recuperate the english texts so i will in your debt if you explain to me how to recuperate them.
- perhaps i should download the dotp2012 and the packs again ?
- and once more, you have made a great job !!
Cheers
- elminster63500
- Posts: 48
- Joined: 30 Jan 2012, 15:43
- Has thanked: 12 times
- Been thanked: 1 time
Re: Mar 16, 2012 DOTP 2012 Eglin's Decks v0.94
by Eglin » 17 Mar 2012, 09:06
I really appreciate the kind words, and I will do my best to help you get this thing working.elminster63500 wrote:Thanks for your advises but
- I have already downloaded dotp2012.exe with the dlc and the 2 pack.
- I don't want french text (i understand wroten english but i speak english like a spanish cow - ) on the cards. Perhaps, i miss an operation to recuperate the english texts so i will in your debt if you explain to me how to recuperate them.
- perhaps i should download the dotp2012 and the packs again ?
- and once more, you have made a great job !!
Cheers
I have added a list of step-by-step instructions on how to get setup on the first page of this thread. If you believe you've followed all of the steps and are still having trouble, please post the last-modified date and file size for each of the following files in your dotp2012 directory: Magic_2012.exe, Data_DLC_7777.wad, Data_DLC_2868.wad. I'm looking for a format like: Data_DLC_7777.wad, 12/24/2011, 84.1 MB.
I think we'll figure this out, so bear with me.
Regards,
Eglin
Who is online
Users browsing this forum: No registered users and 1 guest