Announcement

This is my old blog. All going well, you'll be directed to my newer website with more content and more thoroughly revised guides.

Click this to make the redirecty go faster.

Model Retexturing

Similar to the background image replacing, we can also use SCs MPQs to change the colour or texture of any of the games models. While this might be a bit simpler to access as we only need to use one MPQ rather than four or five for the backgrounds or having to replace five different folders for the collectors edition thor, this does require a small amount of photoshop knowledge. Nothing that can't be learned with a few minutes of google.

The MPQ needed to be used for this is called base.SC2Assets and can be found at SC2 > Mods > Liberty.SC2Mod. After opening the MPQ with MPQEditor, go to Assets > Textures and this is pretty much all the stuff you're going to be working with. This consists of every texture used for units and buildings by each race. Select anything and type out the first few letters of a unit you want to retexture. Whatever you choose, there'll be a few .DDS files for each unit. The one you're looking for is the one with "_diffuse" written after it.

After you've chosen one, extract it to where you want. Because of the .DDS format, you're going to need the NVIDIA DDS Plug-In. Unfortunately this only works with x32 versions of Photoshop, and even with that, I can't confirm that it works with CS5 at all as I don't think it's been updated recently. A fairly nice alternative is Paint.NET as it can still be used to retexture with a bit of practice and is fully working with .DDS files. If you really really want to use photoshop to recolour, you can just use Paint.NET to convert the .DDS to png, then do what you want in photoshop and then save again from png to .DDS with Paint.NET. jpeg won't work.
(Update: After many years of incompatibility, the wonderful people over at NVIDIA have finally released the plug-in to work on all x64 versions of Photoshop, including the recent CS5 release! It's a fine day for science. That said, if you can't get your hands on Photoshop, Paint.NET still does the trick.)

After you're done retexturing them, instead of replacing the old one inside the mpq, go to SC II\Mods\LibertyMulti.SC2Mod and create a new structure of folders here starting with base.SC2Assets, then a folder in that called Assets and another in that called Textures. Put your new textures in here. This solves the lag issue created from simply replacing the old dds files within the mpq, as well as being a lot simpler. Note that this method has been said to be troublesome on US clients.

For my example, I've chosen the Colossus texture. It's 3am here so you'll have to forgive my lack of effort put into the recolouring. If I'm honest, all I did was press invert.

Before
After


This also works for buildings. I was feeling generous this time, so I added a nice teal tint. I'm not sure how though, because I don't usually use Paint.NET. It was actually an accident but I just decided to roll with it.

Before
After

Yes, mine looks rather dire, but that's not the point.

After you're happy with your modifications, I strongly advise you to start a custom game by yourself to make sure everything is loading properly. The first time I started a game after adding some custom textures, I was having rediculous lag spikes whenever I tried to make the modified units, and when I made a modification to a building, the game took a lot longer to load. So, make sure you go to the Unit Test Map and get your game client used to all your new textures.

Modifying the texture of units will also effect your opponents or allies units, but only from your perspective.

Team Colours
Lets say you wanted to make a brand new texture by yourself, or were using my tutorial on model swapping, focusing on swapping a model such as Zeratul or the Hero units. One thing you'll notice is that these textures weren't designed for team colours. If you swap a model that's used commonly in team games, you'll notice this can be quite distracting or could even cause you to A-move your own team mates.

The way team colours work on textures is with the transparency. The actual team colour itself obviously isn't attached to the texture, else you'd need like 10 textures for every single section of each model. The colour is applied underneath the texture which will then be shown through the transparent parts of the texture.

Using the colossus_diffuse.dds as an example again, take note of the grey and white chequered boxes. This is where my team colour will seep through the texture for others to see.


To show the effect, you can now see I'm using the eraser tool to remove the entire texture, turning everything to chequered boxes. Remember that the dimensions must always remain the same. Before you start, be sure to remove the lock icon in Layers on the bottom right by double clicking the layer to remove layer from background. Some of these dds files also have an alpha one layer which must be removed before saving.
To do this, click Channels next to Layers and the right click Alpha 1 and delete. Once you try to save, the NVIDIA plug-in will prompt you with a pop up. So far, I've found the best setting to be DXT5 ARGB 8 bpp ¦ interpolated alpha (The fourth one).

As you can now see the entire models texture is gone and the model is completely red as that was my teams colour. The light effects are still there because they belong to a separate dds file. You can change that too if you wanted, but it's not going to kill anyone.

Obviously if you're going to be remaking your own model and need to do a change like this, you're not going to be doing a 100% reveal. This is just to give you an idea of how to make team colours more revealing, should you be using a model not designed to support multiplayer.

14 comments:

  1. can you post all the .dds file =D i really like all these mods..

    ReplyDelete
  2. There's hundreds of .dds files. I explained how to extract them yourself in the post using MPQEditor.

    ReplyDelete
  3. Update: For the people emailing me regarding the lag issue, NVIDIA has now released its DDS plug-in for Photoshop CS5 and all previous x64 versions. I discovered Paint.NET was the original source of the lag. Everything should be working smoothly once you use Photoshop.

    ReplyDelete
  4. Teliko can you pls remake the Nova loading screen image in a 1280 x 1024 solution :) Would be n1 because i replaced my old raynor file and i forgot to make a backup :( and the new nova background is too big :)

    ReplyDelete
  5. The Nova startup image are in the exact same dimensions as the default raynor image.

    ReplyDelete
  6. Hey Teliko, +1 for what Marius said. I'm also having the same issue as him. I did manage to fix it but only by setting my game resolution to highest. My computer can only run it on lowest resolution without lagging. It would be greatly appreciated if you would consider doing this.

    ReplyDelete
  7. Bleargh, I emailed him that a while ago. Can you give me an address to forward it to? It's like 4am here right now and I don't have the patience to wait for it to upload to mediafire with my 20kbps upload speed :/

    ReplyDelete
  8. Sent my address to your email. Thanks a whole bunch :D

    ReplyDelete
  9. M'kay, should be on its way now.

    ReplyDelete
  10. I edit the testure using photoshop but I can't save the file. It says the image size is not multiple of 4!!!!

    ReplyDelete
  11. Did you redimension it? They all do indeed need to be a multiple of 4

    ReplyDelete
  12. @Teliko: Yeah I got it. I didn't think it was something that simple because it was a texture extracted from the game and I never changed the size. Thanks.

    ReplyDelete
  13. According to TheCompressonator, DDS files from MPQs have the following format:

    Width 76px
    Height 76px
    Source Format RGB8888
    Compressed Format DXT5
    Source Mip-Levels 1
    Compressed Mip-Levels 1
    Compressed Bits Per Pixel 8.00

    Of course this may vary among the files but compressing to this format with TheCompressonator should help with compatibility.

    ReplyDelete
  14. That doesn't work for doodad models. Is there a way to make doodad models show team colors when used for units?

    ReplyDelete