It is currently 23 May 2024, 10:04
   
Text Size

Change Standard Cards Frames. (NEED HELP IMPORTANT)

Moderator: CCGHQ Admins

Change Standard Cards Frames. (NEED HELP IMPORTANT)

Postby NeoAnderson » 10 Nov 2014, 03:23

I was looking insde the unpacked CORE.WAD and i found the folder with all the cards frames..(\DATA_CORE\DATA_CORE\DATA_ALL_PLATFORMS\ART_ASSETS\TEXTURES\CARD_FRAMES)

I was just making a test how to replace a card frame with another one so i made a modified card frame (R.TDX) for red cards..
I used Gibbed.Duels.TdxConvert.exe to revert the standard R.TDX into R.PNG then i edited the frame with Photoshop i saved a new R.PNG then i reconverted the frame with Gibbed.Duels.TdxConvert.exe using the DXT5(i also tried DXT1) compression.
The compression should be DXT5 to preserve the alpha channell and also the size is the same of the source 239KB.
Now i copied the new frame into
(C:\Program Files (x86)\Wizards of the Coast LLC\Magic 2014 — Duels of the Planeswalkers\DATA_DLC_DECK_BUILDER_CUSTOM\DATA_ALL_PLATFORMS\ART_ASSETS\TEXTURES\CARD_FRAMES).

Now i found that the game load the new frame but it doesn't load the card pictures!

I also made the follow test i used Gibbed.Duels.TdxConvert.exe to convert a standard frame to png then i converted it back to TDX (without any modify) and i copied the file into Custom folder.. the game has the same issue.
So i decided to compare this Frame with the standard Frame and i found some Hex differeces, it seems that gibbed tools use some different values.

The idea i had was to edit Miracle frame ( that are few cards) to make a new frame for the Planeswalkers so we could use full pictures more similar to the orginal cards.
The only way to do it is to understand how to solve this issue.

Here you can see a modified Red frame more similar to M15.
Image
Last edited by NeoAnderson on 10 Nov 2014, 18:09, edited 1 time in total.
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Change Standard Cards Frames.

Postby thefiremind » 10 Nov 2014, 08:33

You need to hex-edit your frame TDX file and make the change explained by kevlahnota here:
viewtopic.php?f=65&t=3821
< 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: 721 times

Re: Change Standard Cards Frames.

Postby NeoAnderson » 10 Nov 2014, 14:00

thefiremind wrote:You need to hex-edit your frame TDX file and make the change explained by kevlahnota here:
viewtopic.php?f=65&t=3821
Thanks Fire i swear that yesterday when i made the HEX comparation i tought something like that about the same HEX value!! I am glad to see it is easy and only limited to that BYTE!
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Change Standard Cards Frames.

Postby NeoAnderson » 10 Nov 2014, 18:05

After some tests i got some results.
About the planeswalker i found a way to change the frame but there is still a problem, i need to force the game to use a full size picture instead of a normal card sized picture.
The only way i have right now is to use the bug i discovered some time ago removing all the types and colours from the card then restore the original values. unfortunately this workaround works only if is made targetting the card so it is not usable.

If someone would help we could have a nice effect.
Here you can see how appears the planewalker now and after applied the new frame.


ImageImage
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Change Standard Cards Frames. (NEED HELP IMPORTANT)

Postby NeoAnderson » 11 Nov 2014, 00:47

UPDATE :
I found a way to change the picture from standard picture to full size picture.
First of all it is needed to add the follow code to the planeswalker manager :

Planeslwakers Manager - Triggers to add | Open
Code: Select all
<TRIGGERED_ABILITY linked_ability_group="1" replacement_query="1">
 <TRIGGER value="ZONECHANGE_END" to_zone="ZONE_BATTLEFIELD" >
  if TriggerObject() ~= nil then
     local filter = ClearFilter()
     filter:Add( FE_CONTROLLER, OP_IS, EffectController() )
     PLW_FilterNameSet(filter, "PLANESWALKERS", true)
     filter:Add( FE_CARD_INSTANCE, OP_IS, TriggerObject() )
     local count = filter:Count()
     if count &gt;0 then
        return true
     end
  end
  return false
 </TRIGGER>
<TARGET tag="CARD_QUERY_CHOOSE_CREATURE_TO_EXILE" definition="0" compartment="0" at_random="1" count="1" />
      <TARGET_DEFINITION id="0">
    local filter = ClearFilter()
    if TriggerObject() ~= nil then
       filter:Add( FE_CARD_INSTANCE, OP_IS, TriggerObject() )
    end
    </TARGET_DEFINITION>
     <RESOLUTION_TIME_ACTION>
                      LinkedDC():Set_Int(88, 2)
                     EffectSource():StoreCopiableValues(EffectDC():Make_Chest(2))
      </RESOLUTION_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
                 local card = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(0)
                 if card ~= nil then
              card:UseCopiableValues(EffectDC():Get_Chest(2))
                end
      </RESOLUTION_TIME_ACTION>
   <CONTINUOUS_ACTION layer="1">
         local card = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(0)
         if card ~= nil and EffectDC():Get_Chest(2) ~= nil  then
           card:UseCopiableValues(EffectDC():Get_Chest(2))
        end
     </CONTINUOUS_ACTION>
     <CONTINUOUS_ACTION layer="4">
         local card = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(0)
         if card ~= nil then
              local characteristics = card:GetCurrentCharacteristics()
         local card_type = characteristics:CardType_GetWritable()
         local sub_type = characteristics:SubType_GetWritable()
         sub_type:ClearAllOfType( CARD_TYPE_ARTIFACT )
         sub_type:ClearAllOfType( CARD_TYPE_CREATURE )
         sub_type:ClearAllOfType( CARD_TYPE_ENCHANTMENT )
         sub_type:ClearAllOfType( CARD_TYPE_LAND )
         sub_type:ClearAllOfType( CARD_TYPE_PLANESWALKER )
         card_type:Clear()
        end
    </CONTINUOUS_ACTION>
     <CONTINUOUS_ACTION layer="5">
         local card = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(0)
         if card ~= nil then
         card:GetCurrentCharacteristics():Colour_Get():Clear()
        end
    </CONTINUOUS_ACTION>
      <RESOLUTION_TIME_ACTION>
            MTG():CreateDelayedTrigger(20, nil)
      </RESOLUTION_TIME_ACTION>
   <RESOLUTION_TIME_ACTION>
         MTG():ReevaluateContinuousEffects()
   </RESOLUTION_TIME_ACTION>
             <DURATION>
              return LinkedDC():Get_Int(88) == 1
              </DURATION>
  </TRIGGERED_ABILITY>
  <TRIGGERED_ABILITY resource_id="20" replacement_effect="1" linked_ability_group="1" active_zone="ZONE_ANY">
     <TRIGGER value="STATE_BASED_EFFECTS"/>
    <CLEANUP fire_once="1" />
      <RESOLUTION_TIME_ACTION>
            LinkedDC():Set_Int(88, 1)
      </RESOLUTION_TIME_ACTION>
   <RESOLUTION_TIME_ACTION>
         MTG():ReevaluateContinuousEffects()
   </RESOLUTION_TIME_ACTION>
  </TRIGGERED_ABILITY>
At this point the only problem is that we will have a nice Planeswalker picture only when it will be summoned.
After the first time it enters onto battlefield it will keep the right aspect also in other zones, for example if it returns into hand will still have the right picture proportions.
When the planeswalker is not already onto battlefield or if we are into deckbuilder the aspect will be forced to be resized and the picture will have not proportional size.
This is a screenshoot how it appears into deckbuilder :


Image
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Change Standard Cards Frames. (NEED HELP IMPORTANT)

Postby NeoAnderson » 11 Nov 2014, 02:04

I made a test also wi Liliana of the Veil i made a simple mask effect to have the head outside of the frame,
it looks nice but unfortunately we cannot make different masks for all the planeswalkers!
So it is just a test and it look so (LOOK THE HEAD!!) :

Image
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Change Standard Cards Frames. (NEED HELP IMPORTANT)

Postby NeoAnderson » 11 Nov 2014, 16:51

After some attempts, i found a way to display a cropped picture into deckbuilder,and other zone before the planeswalker is summoned.
When you summon it for the first time the picture changes to the full size picture.

To do this effect i had to duplicate the Planeswalker XML cards, then i copy into a chest the values of the full size picture card, and when we cast the planeswalker it is copied.
In this way we had only the issue of the copy icon on the card so i decided to replace it with a nice mtg icon.

Here you can see how the cards appears before cast and after cast.
--------------------------------------Chandra BEFORE--------------------------------------
Image
--------------------------------------Chandra AFTER--------------------------------------
Image
--------------------------------------Liliana BEFORE--------------------------------------
Image
--------------------------------------Liliana AFTER--------------------------------------
Image
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times


Return to Programming Talk

Who is online

Users browsing this forum: No registered users and 12 guests


Who is online

In total there are 12 users online :: 0 registered, 0 hidden and 12 guests (based on users active over the past 10 minutes)
Most users ever online was 4143 on 23 Jan 2024, 08:21

Users browsing this forum: No registered users and 12 guests

Login Form