Jump to content
Forum Shutdown 28/7/2023  Read more... ×
Forum Shutdown 28/7/2023  Read more... ×
You need to play a total of 5 battles to post in this section.
PunishedKAsual

A Simple Guide to Texture Modding

3 comments in this topic

Recommended Posts

225
[BOTES]
Member
611 posts
4,520 battles

A Simple Guide to Texture Modding

DkScSVY.jpg

(yes please I want to write number on my Daring's stern) Source: PunishedKAsual Royal Navy Destroyer Pennant Number & Funnel Bands Mod by [KA]sual

0gga1i3.png

Itasha (痛車) but for ships. Image courtesy: @CompassRose72, a eminent modder from NA server who does a ton of anime-themed modding. Be sure to check out his works at the Visual Mod section on the forum!

 

Foreword

Do you want to put your anime waifu onto the side of the ship? Interested in adding hull numbers to your Cruiser? Wanna change the wooden deck to a metallic one?

Texture modding allows you to modify the exterior appearances to your liking. 

This guide serves as a exposition and introductory manual to the world of texture modding


 

The actual Guide starts here...

Tools you will need

1. Wows Unpacker

A tool released by Wargaming. You need it to extract relevant files from the WoWs Game Client.

You can acquire the software and a guide here https://forum.worldofwarships.eu/topic/113847-all-wows-unpack-tool-unpack-game-client-resources/

 

2. Image manipulation program (Paint.NET/ GIMP / Photoshop)

A image manipulation software such as Paint.NET, GIMP and Photoshop is needed to edit .dds texture files.

Paint.NET is a lightweight freeware. While the software is capable for simple edits, on more complex edits, one will quickly find the Paint.NET ‘s functionality on the rudimentary side, limiting the potential of what you can do.

GIMP is a open source software counterpart to Photoshop. To open and edit dds file you will want to download a DDS plugin for GIMP.

Photoshop(+ Nvidia dds plugin). Software of my choice. The creative suite boast an  all-rounded creation tool and UI optimized for. However, the software will incur licensing fees.

 

3. Wows Client

Obviously.

 

4. Patience, Perseverance and Love (very important!)

Modding is quite a timeconsuming and can be frustrating at time. Keep up your love on your shipfu to make amazing mods!

 

Extracting Files

Open the wows unpack tool

T4hrwhC.png

A ship texture files are stored in the /res/content/gameplay/ with a logical file structure. Simply natvigate. For example, textures files for USS Battleship Iowa are located in res/content/gameplay/ship/battleship/textures/ and files for German Destroyer Z39 would reside  in res/content\gameplay\germany\ship\destroyer\textures .

 

Similarly, turrets, torp tubes, radar arrays are all packed in a similar file structure.

 

For every ship in the game, there would be a set of 4 basic texture files that ends in _a.dds, _o.dds, _mg.dds, n.dds. Larger ships will involve multiple sets of texture files for their Hull(hull_a.dds), Superstructure (deckhouse_a.dds) and Torpedo Bulges(bulge_a.dds). Each of the files serves an unique propose in the appearance of the ship, together they form the full picture. Not all mods need to modify all 4 files, if you are only editing a limited aspect of a ship, say only the surface of the deck on a carrier, you might only need to extract the _a.dds file, instead of a bulk of 12 files.

Be aware that some files (such as gun turrets, torp tubes, radar arrays and other small objects) are commonly shared between multiple ships. Editing one such file will affect the appearances of multiple ships. To avoid unwanted edits, one will find the advanced modding technique "PnFmodding" useful with which one may easily control the scope of effects. Learn more about PnFmodding with this introductory guide I've written.

 

what does each of the .dds file type do

Here is a brief description of what the files do. Notice the x in _x.dds indicate their role in the ship texture package.

 

a.dds controls the skin of the ship. Most of your interests will fall here

ao.dds is "ambient occlusion " that helps the game to load a shadow effect

mg.dds controls various parameter of the "specular" map, elaborated in the next section

n.dds are “normal maps”. The blue texture files allow you to create dents and grooves on the surface

 

[pitfall]

Some ships (usually premium ships) has extra files that ends in .dd0, .dd1, .dd2 in addition to the .dds files. They exist as more elaborate rendering files for at different zoom levels. In this scenario, you are recommended to extract the files ending in .dd0 (the file with highest resolution), and then renaming the file extension from .dd0 to .dds before proceeding.

Editing Texture files

Using the Image Manipulation Program of your choice, open the .dds file you wish to edit. I won't go too deep into the technicalities of the software, but I will give share insight to how to use these files and some tricks.

 

[Pitfall]

As mentioned above, despite the editing power,Photoshop with Nvidia DDS plugin will have some compatibility issue with transparent texture. If you so prefer using Photoshop for editing, I would recommend first using Paint.NET to convert the DDS file into a PNG file , and then edit the PNG file in Photoshop.

 

_a.dds (skin)

iCL91RS.png

This is probably what most mod creators will focus their attention on. Modifying this texture will directly modify the hull on the.

 

fRQVFwN.png

The first thing you want to do with the a.dds is to identify where the parts of texture files are mapping to the ship. Some ship texture files would be more straightforward and some might not be so easy to decipher. Identifying the bit of superstructures is usually time consuming as they tend to include small and similar fragments of textures. 

The picture above shows a rough breakdown of Asashio's texture. Be aware that some textures are mirrored to the orientation of the in game rendering. Flip adjustments accordingly when you are editing these areas.

Mercifully, esteemed Fellow mod creators TheKingOfUm(EU server) and IsamuKondera(EU server), has created elegant solutions to aid the process of identifying texture parts. For the sake of tidiness, I've included their solution in the Spoiler drawer below. Click to see the spoiler content

TheKingOfUm: 

Spoiler

Kd7mFW9.png

TheKingOfUm from EU server created a set of Green-Blue and Red-Yellow Texture with indexed coordinates. Simply name the original texture file to a place holder name and rename TheKingOfUm's file to the shipmodel's dds file name. After that, the WoWs Client will read the new file as if its the ship texture, and your ship will look like this. 

5QfGi1H.png

 

Other parts can easily be found by the coordinates that are on them. Even if parts are so small that full coordinates don't fit on them, the colours and the visible numbers and letters give you valuable clues on where to look.

 

Texturidentifikation-3.jpg?width=719&hei

Also, this helps you find out if the textures are mirrored. And you can check for reused textures, which may pose additional challenges in modding:

Texturidentifikation-4.jpg?width=719&hei

 

If you create your design in half transparent layers on top of the identification texture, it is very easy to line up elements that go over several parts. Just set the opaqueness to 100% when you're done.

 

Texturidentifikation-5.jpg?width=719&hei

 

TheKingOfUm has generously shared the texture file to the wows community. Click the Link below to start download.

https://www.dropbox.com/s/b6ah88838fpomrm/Parts Identification Textures.zip?dl=1

[Hint] The files from King of Um are in .png format. Before using them as a texture, you should convert them with Paint.Net into a .dds file. 

 IsamuKondera(EU) has suggested exporting the 3D model to obtain the UV map with primitive/object converting tools to directly edit the files as 3D objects. Details for this method will be added later.

 

 

Notice that, due to the way the WoWs rendering engine works, the game will interpret the texture brighter than it’s in the image manipulation software. This would be self evident when you check out the white areas on the flag.dds and some material that appear as white, where the “white part” has a brightness value of less than 70%. If you are importing textures directly and pasting them on the model directly, you might like to reduce the brightness of that layer ever so slightly to match the brightness level.

Of course, if you are going for a “cleaner” artistic direction, or is making a glow-in-the-dark mod, you might safely ignore this piece of advice.

 

_ao.dds (shadow details)

jg9a2YT.png

_ao.dds are used to create fine shadows on the 3D texture.

 

_mg.dds (specular)

oGdwlno.png

 _mg.dds files has multi-fold functions. It determines the shininess and color of reflected environment light. Each pixel’s RGB values acts effectively as the local parameter of the area.

 

For each pixel’s RGB value:

R controls roughness, the material gets smoother when R increases

G controls reflection strength

B controls camo/glow strength

 

An common application of the .mg dds is to edit the texture map's various areas to partially/ completely disable camouflages.

For example, in my Historical IJN DD camouflage mod, I exploited this property of mg.dds to create "cut outs" on areas affected by the ship camoufalge.

lz6Z62M.png

...which result in this effect

EN3xG4s.png

 

Alternatively, if you are making a glowing mod, manipulating the B value is one of the way to achieve a glowing effect.

 

_n.dds (normal map)

4Q9cgv2.png

As outlined above, the function of normal map is to create subtle dents and grooves on the model surface. In order to create the depth effects, Photoshop’s DDs Plugin includes a filter that can automatically generate Normal Maps for a _n.dds. I also believe that the GIMP dds plugin provides similar functionality.you might manually edit the texture color should you so prefer.

 

Unfortunately, my computer seems to have some issue with the Normal Map Generator, so I cannot demonstrate how to create normal map right now. Nevertheless, web searching with keyword “Normal Map” should reward you with plenty of tutorials.

 

Exporting and loading them in game

Now that you are satisfied with the edit you’ve made, you will want to export the texture files for game-play and sharing.

Simply Click "File>Save As..." in your menu and select [.dds] in the "save as type" drop down menu. 

You will encounter a pop-up box prompting various parameter for the .dds file. Preferably, you should choose one of the DXT formats with alpha (transparency). While some of the alternative setttings like A8R8G8B8 may return higher quality, they comes also with troubles in the form of compatibility, larger file sizes,  longer loading time and worse of all, WoWs engine will refuse reading some of them, leading to a crash/ failed battle loading. As such, you are advised to use DxT formats. 

 

[Very important!] Ensure that you have the appropriate file name and file paths when saving your files.

[Very important!] Ensure that the file you create has the same dimension as the original files.

An alternative when using Photoshop to edit files is to first save the texture as a .png file, and then use Paint.NET to convert the .png into a .dds file. The advantage of this method is that, for reasons unknown to me, generating .dds with Paint.NET results in a file that’s slightly smaller compared to files output from Adobe Photoshop.

 

After you saved, the files to res_mod\[game_version]\ with a suitable folder structure, the game will automatically. 

Hint: texture mods usually does not require a game restart to load. For more an efficient development process, open the game and load all the relevant files into res_mod, and edit the files on the fly. To refresh your texture edit progress, simply save the .dds, load another ship by clicking another ship in the port, and click the ship you are modding again. Your modified textures should show up immediately.

 

[End of Texture modding Guide]

Thanks for reading through my humble guide to texture modding. If you have any question regarding the process, please leave a comment below.

 

Further Reading/ Useful Links / Citations 

You might find some of the following links useful in your modding endeavors.

1.  Aerroon. (2015), WoWS: Guide - How to make ship skin mods (0.5.5.0)

In which Aerroon demonstrates the mod making process. The video is dated from the early days of World of Warships and some procedures / workflow are different.

2.  https://forum.worldofwarships.com/topic/42655-tutorial-how-to-create-your-own-skins/ Here some veteran modders discuss the functionality of some texture files.


 

Acknowledgement

A good number of WoWs community members has helped me along my journey of modding, as well as in writing this guide. I wish to express my gratitude here.

 

Aerroon

Aslain’s

AstreTunes

CompassRose

GrafZeppelinKai

IsamuKondera

KinoMyu

MatroseFuchs (WG)

MedvedevTD  (WG)

o_fingers_o

TheKingOfUm

IsamuKondera





 

Also, I would like to thank Wargaming for their continued appreciation and assistance to the Modder community.

 

 

 

Good luck and happy modding, fellow modders!

Edited by PunishedKAsual
  • Cool 5

Share this post


Link to post
Share on other sites
Beta Tester
9 posts
1,649 battles

How did you draw the pennant numbers on the daring???

I am trying to put the name on my des moines, but I found it extremely hard to align the name well TAT Any tips on that???

Share this post


Link to post
Share on other sites
225
[BOTES]
Member
611 posts
4,520 battles
On 6/25/2020 at 7:14 PM, Freddiw said:

How did you draw the pennant numbers on the daring???

I am trying to put the name on my des moines, but I found it extremely hard to align the name well TAT Any tips on that???

OOPS im sorry i have been busy recently and only cameback on patch day.

The pennant number is first drawn in Illustrator as an vector object and then ported to Photoshop and placed onto the a.dds file. The exact locations are aligned in Photoshop with some trial and error, as in, creating multiple version of the DDS texture file each with the pennant at slightly different size and location on the ship(say 1-2 pixels apart or even 0.3 pixels) and see which version renders the best in game

If you dont have Illustrator or Photoshop there are inkscape and GIMP as free alternatives.

I hope this answer your question. feel free to raise any further questions 🙂

 

Edited by PunishedKAsual
  • Cool 1

Share this post


Link to post
Share on other sites

×