> ## Documentation Index
> Fetch the complete documentation index at: https://docs.awokenlabs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Job & Gang Outfits

> Define preset uniforms per job/gang, locked by grade.

`Config.Outfits` in `shared/config.lua` defines preset uniforms for each job or gang. Players open them from a [clothing room](/resources/awoken-appearance/configuration/stores#clothing-rooms) or the `/joboutfits` / `/gangoutfits` commands (when `Config.EnableJobOutfitsCommand = true`).

## Structure

Outfits are keyed by **job/gang name**, then by **gender** (`Male` / `Female`), each holding a list of outfits:

```lua shared/config.lua theme={"dark"}
Config.Outfits = {
    ["police"] = {
        ["Male"] = {
            {
                name = "Short Sleeve",
                outfitData = {
                    ["pants"]     = { item = 24, texture = 0 },
                    ["arms"]      = { item = 19, texture = 0 },
                    ["t-shirt"]   = { item = 58, texture = 0 },
                    ["vest"]      = { item = 0,  texture = 0 },
                    ["torso2"]    = { item = 55, texture = 0 },  -- jacket
                    ["shoes"]     = { item = 51, texture = 0 },
                    ["accessory"] = { item = 0,  texture = 0 },  -- neck
                    ["bag"]       = { item = 0,  texture = 0 },
                    ["hat"]       = { item = -1, texture = -1 }, -- -1 = none
                    ["glass"]     = { item = 0,  texture = 0 },
                    ["mask"]      = { item = 0,  texture = 0 },
                },
                grades = { 0, 1, 2, 3, 4 },
            },
            -- more outfits…
        },
        ["Female"] = { --[[ … ]] },
    },
}
```

| Field             | Effect                                                                                                 |
| ----------------- | ------------------------------------------------------------------------------------------------------ |
| key (`"police"`)  | The job/gang name, matched against the player's framework job/gang.                                    |
| `Male` / `Female` | Gender split - the menu shows the list matching the player's ped gender.                               |
| `name`            | Outfit label shown in the menu.                                                                        |
| `outfitData`      | The clothing to apply, keyed by slot (see below). Each slot is `{ item, texture }`.                    |
| `grades`          | Which job grades may use this outfit. A grade `2` player sees only outfits whose `grades` include `2`. |

## Outfit slots

`outfitData` uses named slots rather than raw component IDs:

| Slot     | Maps to           |   | Slot        | Maps to            |
| -------- | ----------------- | - | ----------- | ------------------ |
| `mask`   | Mask (1)          |   | `accessory` | Scarf & chains (7) |
| `arms`   | Arms (3)          |   | `t-shirt`   | Undershirt (8)     |
| `torso2` | Jacket / top (11) |   | `vest`      | Body armour (9)    |
| `pants`  | Legs (4)          |   | `decals`    | Decals (10)        |
| `bag`    | Bag (5)           |   | `hat`       | Hat prop (0)       |
| `shoes`  | Shoes (6)         |   | `glass`     | Glasses prop (1)   |
|          |                   |   | `ear`       | Ear prop (2)       |

In each slot, `item` is the drawable and `texture` the variation. Use `item = -1` (and `texture = -1`) to leave a prop slot **empty** (e.g. no hat).

<Tip>
  The quickest way to author an outfit is to build the look in the appearance menu, note the drawable/texture numbers per slot, and transcribe them into an `outfitData` block.
</Tip>

## Who can manage outfits

* `Config.EnableJobOutfitsCommand` - enables the `/joboutfits` and `/gangoutfits` commands so players can open their outfits without a clothing room.
* `Config.BossManagedOutfits` - lets job/gang **bosses** add and manage their own outfits in-game (stored per job, separate from this static list).
* `Config.PersistUniforms` - keeps a job/gang outfit applied across reconnects/logouts instead of reverting to the saved skin.
