Editing DDS Files

  • Stronghold 2 Tutorial
  • 4 mins

By Lord_Chris

This tutorial is an attempt to show you how to edit DDS files. It's a simpler and more up-to-date version of Doomsword's tutorial at Stronghold Heaven.

Direct draw surface, or DDS files, as they are more commonly known, are the skins of all units in the games Stronghold 2 and Stronghold Legends. If you follow our unarchiving tutorial for Stronghold 3 or Crusader 2, this trick may also be used on the newer games of the series.

DDS files support something called the Alpha Channel. Some more common image types support this, such as TIF, PNG and TGA. However, not every common file type supports this. The most common DDS file types include the following. Each one has an increasingly complicated alpha channel.

  • DXT1 - This is opaque and ignored.
  • DXTa - The colours are either black (transparent) or white (visible).
  • DXT3 - This is greyscale.
  • DXT5 - This is still greyscale, but twice as detailed.

The DDS file type which is relevant to Stronghold is DXT 3. In certain cases such as with tree skins, the alpha channel is used to tell the game how transparent the image is. Or in other cases, such as with metal armour or weapons, it's responsible for how reflective it is. In order to change unit skins, you must be able to open DDS files or, at least convert them. Today, there are many programs which can open DDS files, while ten years ago there were not as many. Photoshop (or Paint Shop Pro) users can download this plugin. Paint Shop Pro users additionally need these files into their C:/Windows/System/ folder: msvcp70.dll, msvcr70.dll, msvcp71.dll, msvcr71.dll. By using this plugin, the file simply loads into the software and you can edit it directly. However, there is an even simpler, and free version which I will be using. You can download Paint.net to open DDS files and edit them directly into the same way.

If you do not want to do this, then we have a DDS converter uploaded in our download section you can use. A note of warning however: The DDS converter has the ability to corrupt files during conversion, as I have seen myself and as such, is not completely reliable. Once you've opened up the image for editing, all you need to do is essentialy change anything existing to the file to change the appearance of that unit in-game.

It's also important to note that you should copy the file to somewhere such as your desktop. In certain programs you may not the error that it's unable to open or save the file, this is due to streaming it from the original source. You should replace the file manually after editing. After you've finished editing the image, you must restart the game to see the changes. I'd recommend not having the game open when you're messing around with files either; it's only asking for something to go wrong.

In this image, the white of the archer is the player colour in the game. So anything which is the same colour will become the colour of the player controlling the archer. Anything placed in this area will be merged with the player colour.

In certain graphical programs, you may also be asked if you'd like to display 'mipmaps'. These are smaller, less detailed copies of the same file you're opening. They're often used to render the units in less detail, once you've zoomed out. There are normally, a total of eight mipmaps in each file. However, we do not want to view mipmaps. If you select to view them, then when you attempt to save it, the file will generate mipmaps of the original mipmaps and file together.

DDS files are stored upside down compared with other file types. Due to this, they can be often stretched on the model. As an example, drawing the letter 'E' on the Lord's cape, will have the reverse effect in-game whilst zoomed in. However, zomming out is completely different:

One of the most common methods of changing the DDS files is to start with greyscale. This way, you're not distracted by getting the colours right, and are more focused on the shading of the image. After this has been completed, you can add an additional new layer over the shading, using transparent colours.

In addition to the standard DDS files, there are also some files called 'normalmap.dds'. These are effects files for DirectX, and these files tell the game how light falls on a certain unit. These are not very common, and are only used on certain units. 

The Aplha channel is saved as part of the actual image itself - it is not a seperate layer of the image. In other words, it is a completely different image stored along with the regular colours. The colour white makes things reflective, while black does not relfect - purely because of the fact they are saved in greyscale. Whether every unit uses the alpha channel is a mystery, however units with armour i.e. Knights do.

In the following images, Doomsowrd first make the armour darker using a dark grey colour. Below you can see the effects of the three different Alpha channels. The left is the original Alpha, the middle example is black shading and the example to the right is opaque white. Note that the last example will only happen if you lose the Alpha channel while converting to a filetype which does not support it. In this example, the armour goes extremely shiny and the eyes get messed up slightly.