Jump to content

Open Community  ·  10 members

Far Cry

Guide on reskin weapons


inakrin

Recommended Posts

Well, basically I'd like to be able to apply new skins whenever I have an idea. Right now I have a RealTree HD texture i would like to apply to either an existing skin or new one, doesn't matter really.

 

What I do not understand is how exactly are the file paths in the .bin files related to each skin (ie Sand, Jungle, Tribal, Fire, etc) when they all point to roughly the same .xbt texture of the weapon itself and not one of the"skins". I even went so far as to change the .xbt textures that the .bin files were pointing to to my RealTree texture but still nothing.. What am I missing and where are the 'skin' textures located?

Oh, you stuck in the easiest part.

If you'll open any weapon file you'd like to edit (entitylibrary/weapons) you can see both unpainted and painted one. So that's not so hard to make a quick compare to check if skin apply something to weapon or not.

 

let's check back PKM with CAMO_01 paint

               <object name="Material">
                 <field name="text_disSlotId" type="String">grassam-m-20120621110104</field>
                 <field name="disSlotId" type="Hash32">21F25986</field>
                 <field name="text_matMaterial" type="String"></field>
                 <field name="matMaterial" type="Hash64">FFFFFFFFFFFFFFFF</field>
               </object>
               <object name="Material">
                 <field name="text_disSlotId" type="String">grassam-m-2305201262546020</field>
                 <field name="disSlotId" type="Hash32">53492547</field>
                 <field name="text_matMaterial" type="String">graphics\_materials\grassam-m-20120523172804.material.bin</field>
                 <field name="matMaterial" type="Hash64">28DBF12B0BC1FBB1</field>
               </object>
               <object name="Material">
                 <field name="text_disSlotId" type="String">hlevasseur-m-20120920141628</field>
                 <field name="disSlotId" type="Hash32">5A36439E</field>
                 <field name="text_matMaterial" type="String"></field>
                 <field name="matMaterial" type="Hash64">FFFFFFFFFFFFFFFF</field>
               </object>
               <object name="Material">
                 <field name="text_disSlotId" type="String">xperreault-m-2011012062249433</field>
                 <field name="disSlotId" type="Hash32">680D65A0</field>
                 <field name="text_matMaterial" type="String"></field>
                 <field name="matMaterial" type="Hash64">FFFFFFFFFFFFFFFF</field>
               </object>
               <object name="Material">
                 <field name="text_disSlotId" type="String">grassam-m-2305201262070026</field>
                 <field name="disSlotId" type="Hash32">882C34CD</field>
                 <field name="text_matMaterial" type="String"></field>
                 <field name="matMaterial" type="Hash64">FFFFFFFFFFFFFFFF</field>
               </object>
               <object name="Material">
                 <field name="text_disSlotId" type="String">xperreault-m-2011012062275874</field>
                 <field name="disSlotId" type="Hash32">9669090B</field>
                 <field name="text_matMaterial" type="String"></field>
                 <field name="matMaterial" type="Hash64">FFFFFFFFFFFFFFFF</field>
               </object>
               <object name="Material">
                 <field name="text_disSlotId" type="String">xperreault-m-2011012062306359</field>
                 <field name="disSlotId" type="Hash32">BD72588E</field>
                 <field name="text_matMaterial" type="String">graphics\_materials\grassam-m-20120723170611.material.bin</field>
                 <field name="matMaterial" type="Hash64">DBCD112B0BC61D19</field>
               </object>

 

as you can see, there are 7 parts invloved. But in fact your skin will use only those part where is something special added.

 

thats how unpainted part will look like

               <object name="Material">
                 <field name="text_disSlotId" type="String">xperreault-m-2011012062275874</field>
                 <field name="disSlotId" type="Hash32">9669090B</field>
                 <field name="text_matMaterial" type="String"></field>
                 <field name="matMaterial" type="Hash64">FFFFFFFFFFFFFFFF</field>
               </object>

and that's for painted one

               <object name="Material"> - this is header
                 <field name="text_disSlotId" type="String">xperreault-m-2011012062306359</field> - this is involved part name
                 <field name="disSlotId" type="Hash32">BD72588E</field> - this is invloved part path
                 <field name="text_matMaterial" type="String">graphics\_materials\grassam-m-20120723170611.material.bin</field> - bingo! this field is not empty, so we can check its material
                 <field name="matMaterial" type="Hash64">DBCD112B0BC61D19</field> - same there, this field is different than FFFFFFFFFFFFFFFF and that means we've got some physical object with its physical path.
               </object>

Empty fields in the "text_matMaterial" means that part will not be painted and " FFFFFFFFFFFFFFFF" in the "matMaterial" field means that there will be default textures in use.

 

So once again:

1. Check "text_disSlotId" for the name of involved part

2. Check "disSlotId" for the path of involved part

3. Check "text_matMaterial" to find a way to the material you'll need

4. Check "matMaterial" to make sure that this part will use some kind of painting during using your new skin

 

Open material then, find any xbt-files with suffix _d intact and begin to work

Edited by inakrin
Link to comment
Share on other sites

EDIT*** Ahhh, figured it out.. I was looking in the wrong field for the .bin. I was using text_disSlotId to search my _materials folder and not using text_mat. Works perfectly now now, thank you man. Now, is there a way I can edit these .bin files to point to a seperate texture? Using notepad++ doesn't work for me.

 

I guess its those hashed values that are fooling me as I don't know how to figure them out. Also, if you look at the bow there's only one material that does not have FFFFFFFFFFFF for matMaterial in ALL the CAMO_* and TONE_ * objects and that .bin only points to the bows main texture, bow_new_d.xbt. I just don't get it.. lol

 

<object name="Material">
                 <field name="text_disSlotId" type="String">grassam-m-2404201235465008</field>
                 <field name="disSlotId" type="Hash32">075D06A9</field>
                 <field name="text_matMaterial" type="String"></field>
                 <field name="matMaterial" type="Hash64">FFFFFFFFFFFFFFFF</field>
               </object>
               <object name="Material">
                 <field name="text_disSlotId" type="String">grassam-m-2004201280013917</field>
                 <field name="disSlotId" type="Hash32">08DC86BE</field>
                 <field name="text_matMaterial" type="String"></field>
                 <field name="matMaterial" type="Hash64">FFFFFFFFFFFFFFFF</field>
               </object>
               <object name="Material">
                 <field name="text_disSlotId" type="String">grassam-m-2404201251480928</field>
                 <field name="disSlotId" type="Hash32">80743C63</field>
                 <field name="text_matMaterial" type="String"></field>
                 <field name="matMaterial" type="Hash64">FFFFFFFFFFFFFFFF</field>
               </object>
               <object name="Material">
                 <field name="text_disSlotId" type="String">grassam-m-2004201280000469</field>
                 <field name="disSlotId" type="Hash32">87282873</field>
                 <field name="text_matMaterial" type="String"></field>
                 <field name="matMaterial" type="Hash64">FFFFFFFFFFFFFFFF</field>
               </object>
               <object name="Material">
                 <field name="text_disSlotId" type="String">grassam-m-2404201250749085</field>
                 <field name="disSlotId" type="Hash32">93E0484A</field>
                 <field name="text_matMaterial" type="String"></field>
                 <field name="matMaterial" type="Hash64">FFFFFFFFFFFFFFFF</field>
               </object>
               <object name="Material">
                 <field name="text_disSlotId" type="String">grassam-m-2004201274688010</field>
                 <field name="disSlotId" type="Hash32">B84E1840</field>
                 <field name="text_matMaterial" type="String">graphics\_materials\grassam-m-20120420223611.material.bin</field>
                 <field name="matMaterial" type="Hash64">D9A635F4F6547089</field>
               </object>
               <object name="Material">
                 <field name="text_disSlotId" type="String">grassam-m-2004201280402340</field>
                 <field name="disSlotId" type="Hash32">F8156E4D</field>
                 <field name="text_matMaterial" type="String"></field>
                 <field name="matMaterial" type="Hash64">FFFFFFFFFFFFFFFF</field>
               </object>
             </object>
           </object>
         </object>

Edited by n1x4
Link to comment
Share on other sites

I suggest you to open some kind of signed skins to check them out. It will helps a bit.

 

As for the materials we've found (grassam-m-20120420223611), we're actually not going to surging them. We just need its pointers.

 

So go and check it out:

 

BOW_NEW_CORE - Copy
Dgraphics\__fc3_graphics\_common\_textures\weapons\bow\bow_new_d.xbt
Ugraphics\__fc3_graphics\_common\_textures\characters\npc_textures\c_cm_camo_04_p.xbt
Dgraphics\__fc3_graphics\_common\_textures\weapons\bow\bow_new_m.xbt
Dgraphics\__fc3_graphics\_common\_textures\weapons\bow\bow_new_n.xbt
Vgraphics\__fc3_graphics\singleplayer\_textures\generic\specmasks\tilingmask_metal.xbt

 

The only useful textures are placing at Dgrpaphics and in Ugrpaphics. So we've got two actual textures: bow_new_d.xbt and c_cm_camo_04_p.xbt

I think we don't need a bow texture for work b/c it's not dam bow. So all we've got - is just camo texture with mip-level. Repainted them both, place ending xbt in the proper folder and chek ingame your new skin.

Link to comment
Share on other sites

well, tried it now. As for me - it's just dissapeared, returned back to original skin. Seems like not so simple with that bow. Maybe another gun with the same camos?

 

For example, let's take gun with the same, tribal-based camo skin. It calls as "striped". I made some photoshopping work and what i've got in the end.

 

http://savepic.ru/3839744.jpg

 

http://savepic.ru/3831552.jpg

Edited by inakrin
Link to comment
Share on other sites

I know right... That bow is a pain.. I tried a different weapon this time with the edited cam_02 and it did show up as modified, looked like crap though..lol

 

Anyways, here's the RealTree HD camo I put on the weapons. Thanks for your time and help man!! I see you added the silencer to the D50, I was going to do that yesterday but after I used the KW1911 files as a base I got stumped on the hash values for hidName and disID and the game crashed at startup...

 

farcry3%202013-01-12%2016-19-52-46.jpg

 

farcry3%202013-01-12%2016-22-21-05.jpg

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...