Duels of the Planeswalkers 2013
New decks and cards for Stainless Games' release
Moderator: CCGHQ Admins
Re: Duels of the Planeswalkers 2013
by thefiremind » 23 Jun 2012, 18:47
Sure, look here:MisterBenn wrote:Has the constants file been accessed yet?
viewtopic.php?f=65&t=7337
and for the available functions, there is RiiakShiNal's topic:
viewtopic.php?f=65&t=7330
< 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: Duels of the Planeswalkers 2013
by pcastellazzi » 23 Jun 2012, 20:17
I did not do a packing tool, i dont have the time right now. Also Rick is working on it and most importantly he is trying to patch the exe to allow mods. This is only a temporary workaround to see our new toy internals.sumomole wrote:Thank you very much!pcastellazzi wrote:I modified WadProgram to simple unpack de new format following the recommendations given by Gibbed.sumomole wrote:Could you release the download link of new pack/unpack tools?
This version can only unpack WAD files. To use it run from the command lineThe command will extract the files in the current directory.
- Code: Select all
java -jar wad-extractor <one or more wad files>
And then, could you tell me how to repackage it?
The lights then came up and the crowd erupted in applause, because that's what the crowd does after it watches destruction on a large screen.
— Ben Kuchera, Mordern Warfare 3 review.
— Ben Kuchera, Mordern Warfare 3 review.
-
pcastellazzi - Posts: 184
- Joined: 25 Apr 2012, 00:40
- Location: Montevideo, Uruguay
- Has thanked: 11 times
- Been thanked: 30 times
Re: Duels of the Planeswalkers 2013
by pcastellazzi » 23 Jun 2012, 20:22
I fixed the instructions. Thank you for noticing this.thefiremind wrote:By the way, i had to write wad-extractor.jar, not only wad-extractor, in order to make it work.
The lights then came up and the crowd erupted in applause, because that's what the crowd does after it watches destruction on a large screen.
— Ben Kuchera, Mordern Warfare 3 review.
— Ben Kuchera, Mordern Warfare 3 review.
-
pcastellazzi - Posts: 184
- Joined: 25 Apr 2012, 00:40
- Location: Montevideo, Uruguay
- Has thanked: 11 times
- Been thanked: 30 times
Re: Duels of the Planeswalkers 2013
by thefiremind » 23 Jun 2012, 23:06
I just detected the bug on Curiosity:
<TRIGGER value="CREATURE_DEALS_COMBAT_DAMAGE_TO_PLAYER">
A funny fact: the Italian 8th Edition version of Curiosity has the same mistake on the text.
<TRIGGER value="CREATURE_DEALS_COMBAT_DAMAGE_TO_PLAYER">
A funny fact: the Italian 8th Edition version of Curiosity has the same mistake on the text.

< 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: Duels of the Planeswalkers 2013
by GamerXYZ0 » 23 Jun 2012, 23:13
Great to see there's an extractor already
I don't mind it can't be packed yet: at least I can already prepare all the changes I like to make (fixes like changing Yeva from 4/5 to 4/4 and the Curiosity fix, and making each and every deck available for battle and for use, even the encounter decks for some original battles).
Talking about the Curiosity bug: what exactly needs to be changed? Just the combat and an underscore left out? I never coded cards, so I don't know exactly how things are coded.

Talking about the Curiosity bug: what exactly needs to be changed? Just the combat and an underscore left out? I never coded cards, so I don't know exactly how things are coded.
Re: Duels of the Planeswalkers 2013
by pcastellazzi » 24 Jun 2012, 00:28
The trigger is wrong. It should be something like:GamerXYZ0 wrote:Talking about the Curiosity bug: what exactly needs to be changed? Just the combat and an underscore left out? I never coded cards, so I don't know exactly how things are coded.
- Code: Select all
<TRIGGER value="PLAYER_TOOK_DAMAGE">
<![CDATA[
return (
Damage():GetSource() == Object():GetParent() and
-- others conditions goes here
)
]]>
</TRIGGER>
The lights then came up and the crowd erupted in applause, because that's what the crowd does after it watches destruction on a large screen.
— Ben Kuchera, Mordern Warfare 3 review.
— Ben Kuchera, Mordern Warfare 3 review.
-
pcastellazzi - Posts: 184
- Joined: 25 Apr 2012, 00:40
- Location: Montevideo, Uruguay
- Has thanked: 11 times
- Been thanked: 30 times
Re: Duels of the Planeswalkers 2013
by Rick » 24 Jun 2012, 03:46
Tools up (and WAD signature check disabler), see new thread.
gibbed
Re: Duels of the Planeswalkers 2013
by thefiremind » 24 Jun 2012, 09:02
I just noticed that now MOTHER.TXT is called SCRIPT_LOG.TXT... and mine is already full of errors about Bloodhunter Bat and Grand Ossuary!
but they are great at hiding the bugs: the text file doesn't show up automatically this time. 
EDIT: Now I'm looking at the code of those 2 cards. Grand Ossuary has a lot of code but it seems they just forgot to check player ~= nil after reading it from pointer #5. I'm not understanding what's wrong on Bloodhunter Bat: in DotP2012 they always checked the target chests before getting a pointer from them, so I would fix it this way... but the other cards in DotP2013 aren't checking the target chests either, so I don't know...
EDIT 2: I tried to unlock one of the guild decks I found in the Xbox version, by changing game_content="1" to "0". All went well, but the problem is that it lacks of TEXT_PERMANENT. Anyway, the cards can still be useful in order to see how they work. I'm wondering if it's still possible to make a single WAD for our mods... or even better, a WAD with all the cards and separate WADs for the decks, so everyone can choose the decks to use but still has the full card pool to make their own.
From now on, I'm officially starting to mod DotP2013, and I'd like to use a new approach. Unless I find a particular deck that I'm very eager to make, I'll try to make decks as close as possible to the intro/preconstructed decks of the various expansions, of course adding unlocks that make them more powerful and customizable. I still have to get used to the new terminology, so it will take some time.
EDIT 3: About mana generation:
Creatures with mana abilities take summoning sickness into account, with no further coding required.
TapSelf is still the only recognized cost when producing mana.
Playing a card that produces hybrid mana makes the game crash. I tried only with a creature, but I'm afraid it will be the same with lands.
With more mana abilities all active on the same card, bugs happen: I had one of the possible mana combinations that highlighted only 1 land for paying 2 mana, and when used, it didn't tap anything (not even that land).
EDIT 4: Infect works perfectly! You see the poison counters near the player's life, indicated by the sign of the green Phyrexian mana. So, for your joy, I'll start making the "Phyrexian Poison" preconstructed deck!
EDIT 5: First problem with poison deck: I don't know how to make Ichor Rats. It seems there's no way to increment poison counters without using infect damage. Yes, I could make Ichor Rats deal 1 damage to each player... but this would trigger unneeded things, as you may imagine.
- Code: Select all
[lua] [string "BLOODHUNTER_BAT_301073_TITLE (RESOLUTION_TIME_ACTION) [1878]"]:2: attempt to index a nil value
[lua] [string "GRAND_OSSUARY_281296_TITLE (PLAY_TIME_ACTION) [2955]"]:23: attempt to index local 'player' (a nil value)


EDIT: Now I'm looking at the code of those 2 cards. Grand Ossuary has a lot of code but it seems they just forgot to check player ~= nil after reading it from pointer #5. I'm not understanding what's wrong on Bloodhunter Bat: in DotP2012 they always checked the target chests before getting a pointer from them, so I would fix it this way... but the other cards in DotP2013 aren't checking the target chests either, so I don't know...

EDIT 2: I tried to unlock one of the guild decks I found in the Xbox version, by changing game_content="1" to "0". All went well, but the problem is that it lacks of TEXT_PERMANENT. Anyway, the cards can still be useful in order to see how they work. I'm wondering if it's still possible to make a single WAD for our mods... or even better, a WAD with all the cards and separate WADs for the decks, so everyone can choose the decks to use but still has the full card pool to make their own.
From now on, I'm officially starting to mod DotP2013, and I'd like to use a new approach. Unless I find a particular deck that I'm very eager to make, I'll try to make decks as close as possible to the intro/preconstructed decks of the various expansions, of course adding unlocks that make them more powerful and customizable. I still have to get used to the new terminology, so it will take some time.
EDIT 3: About mana generation:




EDIT 4: Infect works perfectly! You see the poison counters near the player's life, indicated by the sign of the green Phyrexian mana. So, for your joy, I'll start making the "Phyrexian Poison" preconstructed deck!
EDIT 5: First problem with poison deck: I don't know how to make Ichor Rats. It seems there's no way to increment poison counters without using infect damage. Yes, I could make Ichor Rats deal 1 damage to each player... but this would trigger unneeded things, as you may imagine.
< 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: Duels of the Planeswalkers 2013
by pcastellazzi » 24 Jun 2012, 16:39
What you mean whith "hybrid mana", produce mana of different colors at the same time like Gruul Signet, or something like Drowned Catacomb?thefiremind wrote:EDIT 3: About mana generation:
Creatures with mana abilities take summoning sickness into account, with no further coding required.
TapSelf is still the only recognized cost when producing mana.
Playing a card that produces hybrid mana makes the game crash. I tried only with a creature, but I'm afraid it will be the same with lands.
With more mana abilities all active on the same card, bugs happen: I had one of the possible mana combinations that highlighted only 1 land for paying 2 mana, and when used, it didn't tap anything (not even that land).
Also did you try something like Birds of Paradaise? I been thinking about it since i looked at Cloudpost. Probably an ACTIVATED_ABILITY without cost with a color selection dialog to enable/disable the right MANA_ABILITY block should work. I am not sure if the current color selection will do, it should be a way to disable mana generation. Do you think the AI will play a card like this?
The lights then came up and the crowd erupted in applause, because that's what the crowd does after it watches destruction on a large screen.
— Ben Kuchera, Mordern Warfare 3 review.
— Ben Kuchera, Mordern Warfare 3 review.
-
pcastellazzi - Posts: 184
- Joined: 25 Apr 2012, 00:40
- Location: Montevideo, Uruguay
- Has thanked: 11 times
- Been thanked: 30 times
Re: Duels of the Planeswalkers 2013
by GamerXYZ0 » 24 Jun 2012, 17:37
Firemind, do you also know how to make unplayable decks (Nicol Bolas and Revenge decks) available? I removed "never_available="true"" but it's still hidden. I also tried "always_available="true"", without results. I also gave the deck statistics, just to be certain.
Oh, and do you also know how to get rid of all those movies at the beginning?
Oh, and do you also know how to get rid of all those movies at the beginning?
Re: Duels of the Planeswalkers 2013
by thefiremind » 24 Jun 2012, 17:58
I successfully enabled one of those guild decks I found (but then disabled it again because I'm missing the TEXT_PERMANENT for them) just by adding "always_available="true"", so I would have done the same... I really don't know what to suggest you.GamerXYZ0 wrote:Firemind, do you also know how to make unplayable decks (Nicol Bolas and Revenge decks) available? I removed "never_available="true"" but it's still hidden. I also tried "always_available="true"", without results. I also gave the deck statistics, just to be certain.
I suggested to try coding permanents like Drowned Catacomb with <PRODUCES amount="{U/B}" />, so I tried to give this ability to a creature, but the game crashed when I played it.pcastellazzi wrote:What you mean whith "hybrid mana", produce mana of different colors at the same time like Gruul Signet, or something like Drowned Catacomb?
I thought about that, but I don't like to add a "fake" ACTIVATED_ABILITY because of the possible consequences (interactions with things that shut down activated abilities, or with Burning-Tree Shaman for example). I still hope that we find better options while we experiment with the new functions.pcastellazzi wrote:Also did you try something like Birds of Paradaise? I been thinking about it since i looked at Cloudpost. Probably an ACTIVATED_ABILITY without cost with a color selection dialog to enable/disable the right MANA_ABILITY block should work. I am not sure if the current color selection will do, it should be a way to disable mana generation. Do you think the AI will play a card like this?
I'd say, go to the Movies directory, find the movies you want to disable, and rename them (add an underscore to the name or something like that).GamerXYZ0 wrote:Oh, and do you also know how to get rid of all those movies at the beginning?
< 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: Duels of the Planeswalkers 2013
by thefiremind » 24 Jun 2012, 19:52
I still don't know how to add poison to players without damaging them with infect, but at least I invented a trick that allows me to read how many poison counters are on each player:
- Code: Select all
<TRIGGERED_ABILITY internal="1" active_zone="ZONE_ANY">
<TRIGGER value="PLAYER_POISON_CHANGED">
return TriggerPlayer() ~= nil
</TRIGGER>
<RESOLUTION_TIME_ACTION>
TriggerPlayer():PlayerDataChest():Int_Set(999, GetAmount())
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
< 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: Duels of the Planeswalkers 2013
by MisterBenn » 24 Jun 2012, 22:11
That's great news of course, I loved your 2012 pack. Looking at the individual wad file layout of 2013, it make me think that maybe keeping things modular might by good for 2013. Perhaps we could build up a "core" wad file that contains everyone's collective cards that have a definitive implementation (i.e. correctly defined, the best artwork available, good AI tags etc). Deck files and those cards that are approximations or that contain deck-specific rules or AI could be in seperate files that would plug into and reference the standard set of cards. Just a suggestion of course, it would allow the lesser contributers such as myself to submit plenty of straightforward cards at the very least. In 2012 I made plenty but I held back my decks because of individual card issues and because I referenced multiple other custom DLCs; I would have had to go through with a fine toothed comb to make them compatible with anything else out there. In light of that mess and the great packs already out there, I ended up actually posting nothing.thefiremind wrote:From now on, I'm officially starting to mod DotP2013, and I'd like to use a new approach.
- MisterBenn
- Posts: 97
- Joined: 19 Mar 2011, 16:19
- Has thanked: 24 times
- Been thanked: 11 times
Re: Duels of the Planeswalkers 2013
by alexandreonly » 24 Jun 2012, 23:47
Can you upload your custom made cards? I tried to add infect to a creature, but didn't work. Maybe if i use your cards as a example i can do something.thefiremind wrote:I just noticed that now MOTHER.TXT is called SCRIPT_LOG.TXT... and mine is already full of errors about Bloodhunter Bat and Grand Ossuary!It seems that the developers never do much testing...
- Code: Select all
[lua] [string "BLOODHUNTER_BAT_301073_TITLE (RESOLUTION_TIME_ACTION) [1878]"]:2: attempt to index a nil value
[lua] [string "GRAND_OSSUARY_281296_TITLE (PLAY_TIME_ACTION) [2955]"]:23: attempt to index local 'player' (a nil value)but they are great at hiding the bugs: the text file doesn't show up automatically this time.
EDIT: Now I'm looking at the code of those 2 cards. Grand Ossuary has a lot of code but it seems they just forgot to check player ~= nil after reading it from pointer #5. I'm not understanding what's wrong on Bloodhunter Bat: in DotP2012 they always checked the target chests before getting a pointer from them, so I would fix it this way... but the other cards in DotP2013 aren't checking the target chests either, so I don't know...
EDIT 2: I tried to unlock one of the guild decks I found in the Xbox version, by changing game_content="1" to "0". All went well, but the problem is that it lacks of TEXT_PERMANENT. Anyway, the cards can still be useful in order to see how they work. I'm wondering if it's still possible to make a single WAD for our mods... or even better, a WAD with all the cards and separate WADs for the decks, so everyone can choose the decks to use but still has the full card pool to make their own.
From now on, I'm officially starting to mod DotP2013, and I'd like to use a new approach. Unless I find a particular deck that I'm very eager to make, I'll try to make decks as close as possible to the intro/preconstructed decks of the various expansions, of course adding unlocks that make them more powerful and customizable. I still have to get used to the new terminology, so it will take some time.
EDIT 3: About mana generation:
Creatures with mana abilities take summoning sickness into account, with no further coding required.
TapSelf is still the only recognized cost when producing mana.
Playing a card that produces hybrid mana makes the game crash. I tried only with a creature, but I'm afraid it will be the same with lands.
With more mana abilities all active on the same card, bugs happen: I had one of the possible mana combinations that highlighted only 1 land for paying 2 mana, and when used, it didn't tap anything (not even that land).
EDIT 4: Infect works perfectly! You see the poison counters near the player's life, indicated by the sign of the green Phyrexian mana. So, for your joy, I'll start making the "Phyrexian Poison" preconstructed deck!
EDIT 5: First problem with poison deck: I don't know how to make Ichor Rats. It seems there's no way to increment poison counters without using infect damage. Yes, I could make Ichor Rats deal 1 damage to each player... but this would trigger unneeded things, as you may imagine.
- alexandreonly
- Posts: 145
- Joined: 04 Jul 2011, 17:27
- Has thanked: 0 time
- Been thanked: 8 times
Re: Duels of the Planeswalkers 2013
by thefiremind » 24 Jun 2012, 23:54
I'll upload the whole deck when I'm done with it. In the meanwhile, look at my Cystbearer:alexandreonly wrote:Can you upload your custom made cards? I tried to add infect to a creature, but didn't work. Maybe if i use your cards as a example i can do something.
- Code: Select all
<?xml version='1.0'?>
<CARD_V2>
<FILENAME text="CYSTBEARER_232904" />
<CARDNAME text="CYSTBEARER" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Cystbearer]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Portacisti]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Zystenträger]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Porteur de kystes]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Portaquistes]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[嚢胞抱え]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Cystbearer]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Кистоносец]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Porta-Quisto]]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="232904" />
<ARTID value="A232904" />
<ARTIST name="Kev Walker" />
<CASTING_COST cost="{2}{G}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Phyrexia strives to simulate natural life, but it can’t resist improving on the design.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Phyrexia si sforza di imitare la vita naturale, ma non può resistere a migliorarne la concezione.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Phyrexia versucht, das natürliche Leben zu simulieren, kann aber nicht widerstehen, es weiterzuentwickeln.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Phyrexia s’acharne à imiter la vie naturelle, mais ne peut résister au désir d’en améliorer la conception.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Pirexia se esfuerza por simular la vida natural, pero no puede resistirse a mejorar el diseño.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[ファイレクシアは自然の生命を模倣しようと努めてはいるが、そこについ改良を加えてしまう。]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Phyrexia strives to simulate natural life, but it can’t resist improving on the design.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Фирексия пытается копировать живое, но не может удержаться от усовершенствования прототипов.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Phyrexia empenha-se em simular a vida natural, mas não consegue resistir a aprimorar seu design.]]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="Creature" />
<SUB_TYPE metaname="Beast" />
<EXPANSION value="SOM" />
<RARITY metaname="C" />
<POWER value="2" />
<TOUGHNESS value="3" />
<STATIC_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Infect]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Infettare]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Infizieren]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Infection]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Infectar.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[感染]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Infect]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Инфекция]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Infectar]]></LOCALISED_TEXT>
<CONTINUOUS_ACTION>
local characteristics = Object():GetCurrentCharacteristics()
characteristics:Characteristic_Set( CHARACTERISTIC_INFECT, 1 )
</CONTINUOUS_ACTION>
</STATIC_ABILITY>
<HELP title="MORE_INFO_BADGE_TITLE_31" body="MORE_INFO_BADGE_BODY_31" zone="ZONE_ANY" />
<SFX text="COMBAT_BITE_LARGE_ATTACK" power_boundary_min="4" power_boundary_max="-1" />
<SFX text="COMBAT_BITE_SMALL_ATTACK" power_boundary_min="1" power_boundary_max="3" />
</CARD_V2>
Some recent findings:





I'm trying to respect modularity as I said, so I made a WAD called Deck_1999_ST which actually doesn't contain any deck, but it contains all the cards I made that work perfectly, and another WAD called Deck_199901_ST which contains my first custom deck and things related to that deck only. I'll go on with 199902, 199903 and so on when I make new decks, but the cards will go to 1999 when I'm sure (enough

< 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
Return to Magic: The Gathering - Duels of the Planeswalkers
Who is online
Users browsing this forum: No registered users and 35 guests