# Weapon Skin

Updated for version 3.38.

This page is missing some information, such as explaining what is skin\_folder and how to load the skins themselves.

## Module Definition

The module is inherited from [ItemModuleBase](https://luffyyy.gitbook.io/beardlib/modules/modulebase#itemmodulebase). So base parameters can be found there.

### Module Name

The name of the module you use as the meta of the module definition is 'WeaponSkin' or 'WeaponSkinModule' if `_force_search` is set to true in the module definition.

### XML Structure

```markup
<WeaponSkin id weapon_id name desc rarity skin_folder locked unique_name>
    <skin_attachments>
        <value_node value="weapon_mod_id"/>
    </skin_attachments>
</WeaponSkin>
```

| Parameter               | Type    | Description                                                                                                                                           |
| ----------------------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| id                      | String  | The id of your skin, which will be added in the tweak data table. It must be unique and not used by another skin                                      |
| weapon\_id              | String  | The weapon id that the skin will be attached to. For a full list check here: <https://modworkshop.net/wiki.php?action=view&id=7>                      |
| weapon\_ids             | Table   | Like weapon\_id but allows to set multiple weapons                                                                                                    |
| name                    | String  | The string id that the skin will use as a name                                                                                                        |
| desc                    | String  | (Optional) If used, it will show a description below the skin name in the inventory                                                                   |
| rarity                  | String  | The skin rarity. Can be one of the following : `common`, `uncommon`, `rare`, `epic`, `legendary`                                                      |
| locked                  | Boolean | (Optional) If set to true, it will act like the old legendary skins and won't allow the weapon modification if the skin is applied                    |
| unique\_name            | String  | (Optional) If set to true, it will make the current weapon name the same as the skin name in the player's inventory. They cannot modify it afterwards |
| texture\_bundle\_folder | String  | (Optional) The folder that contains the textures                                                                                                      |
| skin\_folder            | String  | ...                                                                                                                                                   |
| skin\_attachments       | Table   | The attachments that should be added to the weapon if the skin is applied                                                                             |

And any value that appears in the tweak\_data should merge

For Idstrings you need to write them like `param="@ID0d8ea9bdcebaaf64@".` Sadly there's no way to write it using a raw string. Use Bundle Modder to get the hashes.

#### Skin Attachments

Another optional option, you can setup attachments for your skin, working the same as most of rare/epic/legendary skins in the game.

| Parameter       | Type   | Description                                                                      |
| --------------- | ------ | -------------------------------------------------------------------------------- |
| weapon\_mod\_id | String | The weapon mod id that will be automatically added when the player use your skin |

**Note** You must include the 'base' parts as well, otherwise, the weapon will have no body or barrel. For a list of attachments, check the tweak data tables or here: <https://modworkshop.net/wiki.php?action=view&id=2> and <https://modworkshop.net/wiki.php?action=view&id=3>

### Examples

These examples are what you would put inside your main node within your [mod config](https://github.com/GreatBigBushyBeard/PAYDAY-2-BeardLib/wiki/Module-Config)

```markup
<WeaponSkin id="colt_infinite_red" weapon_id="new_raging_bull" name="bm_wskn_infinite_red" rarity="uncommon" skin_folder="InfiniteRed" />
```

```markup
<WeaponSkin id="colt_infinite_red" weapon_id="new_raging_bull" name="bm_wskn_infinite_red" rarity="uncommon" skin_folder="InfiniteRed">
    <skin_attachments>
        <value_node value="wpn_fps_pis_rage_g_ergo" />
        <value_node value="wpn_fps_pis_rage_b_long" />
        <value_node value="wpn_fps_pis_rage_body_smooth" />
    </skin_attachments>
</WeaponSkin>
```

This will add a uncommon skin named "bm\_wskn\_infinite\_red" to the weapon "new\_raging\_bull".


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://luffyyy.gitbook.io/beardlib/modules/weaponskinmodule.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
