Skip to main content

Legendary Armor Skins/LAS/MOOG/Outfit Module Guide

This guide as also made by Columbus, if you'd like to contact me on Discord, please join the modworkshop.net server and ping me if you have any questions in #payday2-modding.

DISCLAIMER: THIS IS STILL A WORK IN PROGRESS, NOT EVERYTHING HAS BEEN EXPLAINED YET.

I just wanted to get this out to anyone who wanted to get started and have prior knowledge with Blender and modding other games first. If you a complete beginner, please wait until this guide is fully finished. Thank you.

Now to start...

Prerequisites:

  1. Blender, you could either download it at Blender.org

  2. You could also download Blender through Steam

  3. For the version, I use 3.2.2, but you could also use 4.X.X

  4. PAYDAY 2 Model Tool (install .net version 6 if it does not run)

  5. Any image editing software, such as Paint.Net, Photoshop, or GIMP

These are all the bare essentials you'll need to begin your path down modeling and porting models to PAYDAY 2.

Got them all downloaded and everything is running correctly? Good. Now, let's move on.

Model Tool

If this is your first time modding for PAYDAY 2, and you don't know what does what on the model tool, I'll explain a basic run down of each section, and tab.

  1. For the import screen, this is where all the magic happens, The first section "Select Base Model" this is where you'll import the base model of what you're modifying. (side note by thot_patroll, if you are making a new model instead of replacing one then this can be turned of with the checkbox)

  2. The second section "Script" is what you'll be using the most (or least) to import your .glb file and have it be read by the model tool.

  3. Object is the alternative to Script, where instead of using a script to import your model and have it be saved/converted into a .model, you'll just import the .glb file by itself with no .mscript file to assist you in doing so.

  4. Pattern UV can be safely ignored since it is more suited for weapon modders, and that's what we're not here for.

  5. Animations can also be safely ignored.

  6. The check boxes, Importing objects not in base file, and Import transforms, it's best to always keep those two ticked on, no matter the circumstances.

  7. "Save To: is where you wish to place your newly generated .model file in a folder.

    This is the export screen of the model tool, this is where you drag and drop your .model file and convert it to either a .dae .obj .gltf .glb or .animation

All I should say for this is that always keep your export format as a .glb format.

I will not go through a preview of the Objects tab since it is more meant for users who are more well-versed in model editing.

Now that we've gone through the basic rundown of the Model Tool, let's start to move into Blender. To export your first .model file, select the .model you want to export, I'll for example use Kento's model, located at "units\pd2_dlc_des\characters\civ_male_des" in the game files. you can use Diesel Bundle Viewer to extract the models.

blender

import

When you export the model to a .glb a new file should appear with the same name in a glb format. Open up blender, and at the left of the screen there should a piece of text called "File" click on it and a new menu should appear, and hover over import, it should look like this if you've done it correctly.

You're import file list won't be as big as mine since I have several plugins installed, but click the glTF 2.0 option and a new menu should appear.

Right before you import, change the setting at the right side of the new window called Bone Dir, change it from Temperance to Blender, Blender 4.X has this option automatically selected. Dont mind the weird looking skeleton, if this step is not done then the model will be broken in game.

You've now imported your model that you'll be using as a base. Unfortunately if you're a new Blender user, this could be extremely complex at first, but if you're a experienced Blender user, new to PAYDAY 2 modding, this should be easy.

Now to begin, let me start off by saying that the model you want to insert must be in a humanoid shape or a human. Anything that involves animals that were meant to originally be a quadruped, will be impossible to import or to even look good. Additionally most models will have different proportions then the payday characters so you will have to either edit the model itself or scale/move the bones to try and cram it in.

I won't bore people with the details, since the process of converting a rig to PAYDAY 2's rig is different with each character since all rigs are made differently, but if you want a more fleshed out guide to wanting to make your model work with the engine, I suggest looking at THOT_PATROLL's guide linked here

Materials

The materials are controlled by the material_config file. Each material will need to have a render template which is what tells the game what the material will do. So if you want a material to glow or have transparency then you will need a render template that supports that. There is a file that contains all the templates but most of the time you will only be using a few basic ones unless you need a special one.

For first person models you will need special materials that have "depth_scailing" in the render template. This makes the object render "infront" of everything else so it wont clip with other objects in the world.

Textures

Got your model all setup now? Good, now it's time to move on to texturing. The basic textures you will most commonly see with character models are color/diffuse textures or albedo depending on the game, a specular or roughness map, and a normal map. There are some more unique textures like metallic, emissive/illumination, transparency, ambient occlussion and others, but for now let's focus on the most common ones.

Albedo/Color Textures

Let's start with their color/diffuse texture, I will refer to it as diffuse now for simplicity. A diffuse texture is basically what everyone will see on the character and what gives them their look. Without a diffuse texture, the textures will just be a flat color, but let's not dive too deep into what they are, and more of how to work with them. I will use a baked texture I made for Houston's upper suit texture from Payday 3 as an example.

upper_albedo_1k.png

Ambient Occlussion/AO Textures

This is an albedo texture, there is no post processing effects on it, such as ambient occlussion or whatever else. If we were to import this into the game right now, it would not look appealing. To make it look good, see if the textures you extracted or downloaded have a "ambient occlussion" texture or AO for short. This will significantly help how your model would look. To apply the effect over the albedo texture, you will need a photo maniuplation program like Photoshop or GIMP, I will be using Photoshop for the example pictures. To apply a ambient occlussion texture, simply layer the texture on top of the albedo texture and adjust for scaling if the texture resolutions are different from one another, and once you got that all down, change the bar where it says "normal" to "multiply"

layered.png

Once you have done that, your new texture will look like this.

upper_diffuse_1k.png

Notice how the AO helps give the texture more depth and darkens the wrinkles and areas where the suit is less commonly seen, this will help the texture looks much better when ported over to Payday 2.

Payday 2 commonly uses .dds files when creating textures and it is suggested that you should too, if you use Photoshop, you may download the .dds plugin here

Exporting

If you are new to making textures and don't care to mess with a GSMA texture, you could place your specular map into the alpha layer of your diffuse texture and save it from there. If you do make sure you save it as a "DXT5 ARGB 8 bpp | interpolated alpha" texture, if you save as DXT1, you will lose your alpha channel data and the model would end up looking extremely glossy. If however, you want to make a GSMA texture I will explain it now.

GSMA

A GSMA texture is a texture that was used more later down the development pipeline of Payday 2 models. GSMA (Gloss, Specular, Material, Alpha) is probably the closeset we will get to a PBR type texture. To properly use a GSMA texture, place the specular texture you have and insert it into the green channel. If you however have a roughness texture, no worries. Just invert the color of the image and you have a specular. Once inserted, your red channel will be the determining factor of what parts you want the shine from your green channel to be shiny or glossy, think of it like its an anisotropy factor for your specular. The blue channel of the GSMA texture is a masking layer used to determine what part of your texture will have a cubemap reflection or not. This could be useful especially if you are making a texture with a metallic part, and you want to apply a steel reflection cubemap, but don't want the entire material reflecting that texture to have a metallic look to it. It's practically a dumbed down metallic layer that doesn't make the texture look more metallic with it on its own. The alpha layer of the GSMA is used in more rare cases when render templates (shader templates) specify that the GSMA alpha layer will be used for transparency in the material_config file.

Normal Map/NM

Now that you've gotten the most important texture all setup and good to go, let's move on to the second most important texture, your normal map. Normal maps come in all sorts of ways, depeneding on the game engine formats them, your X/Red channel could be layered in the alpha channel, while the Y/Green channel remain in the green layer of the image, which is more commonly seen with DXT5nm formatted normals, either that or your texture will be a blueish/purplish texture, with the X, Y and Z channels being in the red, green and blue channels.

Here is an example of the latter normal map I explained.

upper_normal_1k.png

But it's not as simple as it may look here, some games rendering template could also determine how the normal map will really looks when importing it into the game.

OpenGL Normal Maps Compared to DirectX formatted Normal Maps

opengl and dxt.jpg

Games rendered using OpenGL will have the Y channel inverted to Y-, and games running on DirectX will have the Y channel at Y+. If your normal map looks like the image on the left side image in the comparison, you will need to invert your green channel of your normal map, so that it looks more alike to the DirectX normal map.

Once you have done that, now comes the time to format the normal map to be compatible with diesel engine. In the channels tab of your texture, right click the red channel of your normal map and select "Duplicate Channel", the duplicated image will be your alpha layer of your normal map, since diesel engine does not use the red and blue channel, it is recommended that you make the channels a solid black or white to save on compression and quality of your green channel. Once you're done with that, you may now export your texture

Illumination/il

Illumination is the texture used for glowing materials. It will look like a regular albedo/color texture however the non glowing parts will be black and the glowing parts will have the color you want. The brightness and bloom are controlled by variables called il_multiplier and il_bloom. They will look something like the code below and changing the value number will change their strength

<variable type="scalar" name="il_multiplier" value="1"/>

<variable type="scalar" name="il_bloom" value="1"/>

Opacity/op

Opacity textures are used for transparent materials, they will be black/white with white being the parts that are visible and black being parts that are invisible. parts that are partially white/black will be semi-visible