Total War: THREE KINGDOMS

Total War: THREE KINGDOMS

Not enough ratings
Retexturing Guide
By Barnak
Introduction:

This guide should give you an overview about which programs you need and how you can export, edit and import textures of variant models. I have mostly kept it short, so if any questions arise, please ask them in the comment section. If you have problems while installing the programs, please search for installation guides on their respective websites.

In advance, I apologize for spelling and grammatical mistakes, as English is not my native language.

   
Award
Favorite
Favorited
Unfavorite
Required Programs:

For the export and import of textures:
PackFileManager[sourceforge.net] or the Rusted PackFile Manager[github.com]

For editing the texture files:
PaintNET[www.getpaint.net]


Note: There are several other programs you can use. These are the ones I utilize. For editing the DDS files I am using Photoshop, but you can also take PaintNET for it.

Exporting the Texture Files:

Location of the variants_dds.pack:
The texture files are in the variants_dds.pack in the case of Three Kingdoms.
You will find this pack file in the data folder of the game.
(default path: C:\Program Files (x86)\Steam\steamapps\common\Total War THREE KINGDOMS\data)

Open the variants_dds.pack:
If you found it, you have to right click the pack file and select 'open with'.
There you chose the program you installed for opening pack files: PFM or RPFM

Finding and extracting the right DDS file:
Now you need to know, which texture you want to edit. If you want to edit a character or a unit, you have to take a look into their variantdefinition. You can find those in the fast.pack and variants.pack files.

In there you need to expand the variantmeshes and the following variantdefinitions folder.
In the variantdefinitions folder you will find every variantdefinition of every unit in the game.
When you found the right definition, you have to open it as a text via right click. (RPFM left click)

There you have given the paths of every variantmodel the character/unit is using.
(weapons do have their own variantdefinition file, look into the 'set folders')

Now you need to open the variants.pack file in a second window of PFM/RPFM and expand the variantmeshes and the following variantmodels folder.
In it there are six another folders:
  • character ~ textures of body parts and character models
  • examples ~ unimportant
  • fauna ~ textures of wild animals
  • flags ~ flag textures
  • mount ~ horse and saddle textures
  • props ~ weapon and armor textures

There you will follow the path of the respective variantmodel, which you took from the variantdefinition. Extract the tex folder to a folder of your choice via right click.

Editing the Texture Files:

Opening the dds file:
Now you need to go to the 'tex' folder, you extracted before.
In there are mostly three different DDS files. To edit the textures you need to edit the '..._base_colour.dds'.

To open it, you have to change the DDS to a DDS2 file. Simply rename it with a '2' at the end.
If you have done that, you need to use PaintNET to open the DDS2 file.
You are allowed to edit it directly in PaintNET.

When you finished editing you need to save it with the same name (but without the '2') as a DDS file.

Note: If you want to use a different program for editing, you need to save it as a png file
and open it in the other editing program afterwards.

Importing the Texture Files:

Creating your own mod:
Note: If you already created a pack file for your own mod please ignore this step.

Now you will create your own pack file.
For that you open PFM (RPFM) and go on 'file' ('PackFile') in the left corner and chose
'New' ('New PackFile').

Importing the textures:
After the previous step you right click on the 'Untitled.pack' ('unknown.pack') and chose
'add folder' ('add' -> 'directory'). Now you will select the variantmeshes folder, where your 'tex' folder is in. This is necessary, otherwise the paths are not correct and your mod won't work.

Uploading the Mod:

There you have it! Check the mod type through clicking on the file menu in the top left corner.
It needs to be on 'mod' to work correctly.
Save it with a name of your choice into your data folder and upload it to the workshop.

Some units and generals are using the same armor/weapon models. Therefore they share the same textures. If you want to create independent textures for each unit you need to copy every file (models, textures, etc...) related to the armor part/weapon and rename it. After that you have to edit every file to have the correct paths with your renamed files. I will add instructions on creating independent textures if several of you need help with it.

I hope that this guide will help you. As I mentioned before, if you have any questions or suggestions, please write them in the comment section. I maybe will add some screenshots later for illustration.

30 Comments
Barnak  [author] 9 Jul, 2020 @ 9:40am 
That's really interesting. I haven't tried too much in that direction yet. As far as I know, the romance and historical versions of a character differ only in the UI, which are overwritten in an external table. Otherwise, some characters are referred to special animations, which are linked to the entire characters and not only to the models. But that the UI is changed back to vanilla as soon as the model doesn't work is really strange.
xmixaplix 8 Jul, 2020 @ 6:29pm 
It could be as you say, that the character has a completely pre-built model as I noticed Zhang Yan's path and files were very simplified whereas Xiahou Dun's files were a bit more complex seeing as he has both chinese and historical versions and are called depending on event trigger I'm guessing. Though I would've assumed that if I match the file paths as well as renaming the files and editing the source code of the files to what I rename/mapped to Zhang Yan it would work. Sadly the mesh wasn't called/rendered. What's odd is the UI which is just image anyway would fail and revert back to Zhang Yan's defaults even though there shouldn't be any trace left of it but if I didn't modify his variant definition files the replaced UI portraits and etc are called fine lol
Barnak  [author] 8 Jul, 2020 @ 2:24pm 
The guide should still work for most characters. Some characters have a completely pre-built model that can only be edited as a whole, but should be usable for every unit. I don't know of any models outside of the two packages.

How did you exchange Zhang Yan with Xiahou Dun? Did you simply enter Xiahou Dun's variant definition path into the variants-table at Zhang Yan?
xmixaplix 6 Jul, 2020 @ 9:15pm 
Curious but is this guide still relevant? I tried messing around the fast.pack and variant.pack to swap some meshes. Seems like I can't swap someone like Zhang Yan with another wood unique like Xiahou Dun. I wonder if it is because the path of the 2 files differ or if another pack is in play because Xiahou Dun has a lot of unique triggers tie to it.
Barnak  [author] 2 Sep, 2019 @ 12:37pm 
"I know you said this but when I check my original files I sent Its not the vanilla path in the wsmodel, where was the vanilla file reference at?"

It was in the variantmeshesdefinition. Through that it pointed to the vanilla rigidmodel and therefore there wasn't any crash.

"So as I said, I added both changed the rigid model to one in ep and the colour is changed... but now all using this are changed... thats what bothers me... So its not unique for the character, I swap a pathfile in the rigid model and the mod dies :/"

Which color do you mean exactly? Are you speaking about the faction/class color? I never edited the rigidmodels before. ^^
DracoHoribilis 2 Sep, 2019 @ 9:55am 
So as I said, I added both changed the rigid model to one in ep and the colour is changed... but now all using this are changed... thats what bothers me... So its not unique for the character, I swap a pathfile in the rigid model and the mod dies :/
DracoHoribilis 2 Sep, 2019 @ 9:51am 
"The rigid model was just the cause of the crash. It may be that something was wrong with it from the beginning, yeah. The problem with the color was due to the path in the variantmeshdefinition, which still was the vanilla path of the tunic."

I know you said this but when I check my original files I sent Its not the vanilla path in the wsmodel, where was the vanilla file reference at?
DracoHoribilis 2 Sep, 2019 @ 9:50am 
I actually trying now to add and edit both colours, the one refered to in wsmodel and the one refered to in the rigid models just to see what happens
Barnak  [author] 2 Sep, 2019 @ 9:46am 
The rigid model was just the cause of the crash. It may be that something was wrong with it from the beginning, yeah. The problem with the color was due to the path in the variantmeshdefinition, which still was the vanilla path of the tunic.
DracoHoribilis 2 Sep, 2019 @ 9:39am 
Now im checking other rigid files, they do the same thing... very confusing, All files that point to the rigid file is different than the rigid files itself pointing to.... Im never going to figure this thing out