Jump to content

[Mini-Tut] Retexturing new items without nif modification


KaylaKaze

Recommended Posts

With a quick test, I found you can use the TXST records to reskin a specific item without having to modify the nif. It's easiest if done with copy and paste, so first, duplicate TXST record. Then change the dds file it points to. Now, say you want to add a new spring dress but want to make it purple. Well, duplicate the ARMO for the dress (OutfitPrewarSpring2 will work). Now we go to the MO3S record in there, and open it in the Hex Editor (assuming you're using FOMM, I don't know how to do this with FO3Edit) and look after the body part name (Upperbody) and select the byte and lookup hit the lookup form ID button. If you get a valid TXST this is the form ID you want to change to the form ID of your new TXST. And that's it. When you add that item, the texture will be the TXST instead of the one in the nif.

 

If anyone can elaborate on this subject further, please do. This may seem a no brainer to some of you, but the purpose of this post is to try to spread knowledge a little to those who may not know how to use the TXSTs.

Link to comment
Share on other sites

With a quick test, I found you can use the TXST records to reskin a specific item without having to modify the nif. It's easiest if done with copy and paste, so first, duplicate TXST record. Then change the dds file it points to. Now, say you want to add a new spring dress but want to make it purple. Well, duplicate the ARMO for the dress (OutfitPrewarSpring2 will work). Now we go to the MO3S record in there, and open it in the Hex Editor (assuming you're using FOMM, I don't know how to do this with FO3Edit) and look after the body part name (Upperbody) and select the byte and lookup hit the lookup form ID button. If you get a valid TXST this is the form ID you want to change to the form ID of your new TXST. And that's it. When you add that item, the texture will be the TXST instead of the one in the nif.

 

If anyone can elaborate on this subject further, please do. This may seem a no brainer to some of you, but the purpose of this post is to try to spread knowledge a little to those who may not know how to use the TXSTs.

 

Hmm, just out of curiosity, have you tried adding, or making, a TXST record to an item that doesn't necessarily have its own per defualt? Just asking since there seems to be quite a lot without one and making a TXST record in the .esp is definitely preferable to shoving a separate .nif into every time you make a new item reskin. :)

Link to comment
Share on other sites

Actually, the MO3S sub-record looks (at a casual glance) exactly like the MODS record in the weapons' STAT, which I've covered in a previous tutorial.

 

Short version: the MODS sub-record in a STAT record is simply a list of items and the IDs of the TXST entries they should be recoloured with when equipped. Adding a new texture for a new part is as "simple" (if you can call any hex editing simple ;) ) as adding a new record to that list.

 

It works too. The Silenced G3 that I packed for Alexscorpion has an extra 1st person texture for the silencer.

 

On the other hand, there is a much simpler way, though: just define the textures in your .nif and set the MODS or MO3S record to _not_ retexture anything at all. You can just use the high res textures in your .nif in the first place anyway. Just set the MODS or MO3S to hex "00 00 00 00" and there you go. No textures will be replaced, and you saved yourself a lot of hex editing :P

 

Edit: but if you insist on making your life hard, the structure of that record looks like this. I'll use the OutfitUniquePrewarSpring2 as a random example, since I just happened to click it randomly. The MO3S entry contains "01 00 00 00 09 00 00 00 55 70 70 65 72 42 6F 64 79 65 BB 05 00 04 00 00 00"

 

The first 4 bytes are "01 00 00 00", i.e., 1. It means it has only one row in that list.

 

That row is "09 00 00 00 55 70 70 65 72 42 6F 64 79 65 BB 05 00 04 00 00 00". In turn inside it:

 

- "09 00 00 00" is 9, or the length of the string that follows

 

- "55 70 70 65 72 42 6F 64 79" is the string "UpperBody"

 

- "65 BB 05 00" is the TXST ID 0005BB65

 

- "04 00 00 00" is, I think, the part number to be replaced

 

To add a new record, just bump the first 4 bytes to "02 00 00 00" so it knows it has 2 records. Then just copy the row from some other piece of clothing that replaces the body part you need. E.g., if you need an outfit that changes the head too, just copy the row from the ghoul mask.

Link to comment
Share on other sites

Maybe you're not using FOMM but hexxing such things is super easy in it. And the reason to use TXSTs is so you don't have to modify, and then release, tons and tons of copies of the same model to change the texture.

 

From looking at the STATs, yep, some of them have the same record and I'm sure you could add the record to weapons and make it work, too (and any other item that has a MODL record).

 

Thanks for the extended details on the format though so people can add MODS to items that don't have it by default.

Link to comment
Share on other sites

Eh, I figured it was something as seemingly crazy complicated as thinking in Hex to get it right. And as we all know, Hex is the first step to Bolshevism, meaning I at least probably won't dig too deep into that pot of honey. Hopefully it'll be possible to designate the textures used for an item in the GECK, without having to jump through hoops like a Soviet monkey or duplicating meshes. :whistling: :D
Link to comment
Share on other sites

@KaylaKaze: yes, I'm using FOMM, but... let's just say most people, and especially artists, find digging in hex to be a turn-off. Hence why I usually advise people to just go for the "00 00 00 00" hack. If for you it isn't a problem, kudos and more power to you.

 

And yes, I'm aware that there are a bunch of advantages to it. By all means, if you're comfortable with hex, go for it :)

 

@Baelkin: Well, you could just use the "00 00 00 00" hack I mentioned and simply set the textures in the .nif in NIFSkope. It certainly doesn't involve any hex that way.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

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