Skip to main content
Config.Outfits in shared/config.lua defines preset uniforms for each job or gang. Players open them from a clothing room or the /joboutfits / /gangoutfits commands (when Config.EnableJobOutfitsCommand = true).
There are two separate places job outfits can live, and only one is active at a time. With Config.BossManagedOutfits = false (the default) outfits come from Config.Outfits below. Set it to true and Config.Outfits is ignored completely - outfits are read from the database instead, and every clothing room shows an empty list until a boss adds some or you run /importjoboutfits.
Outfits are one level deeper in the menu than people expect. Pressing E in a clothing room opens a menu containing Civilian Outfit and Work Outfits - the outfits themselves are inside Work Outfits.

Structure

Outfits are keyed by job/gang name, then by gender (Male / Female), each holding a list of outfits:
shared/config.lua

Outfit slots

outfitData uses named slots rather than raw component IDs: 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).
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.

Who can manage outfits

  • Config.EnableJobOutfitsCommand - enables the /joboutfits and /gangoutfits commands so players can open their outfits without a clothing room.
  • Config.PersistUniforms - keeps a job/gang outfit applied across reconnects/logouts instead of reverting to the saved skin.
  • Config.BossManagedOutfits - hands outfit management to job/gang bosses in-game, replacing Config.Outfits entirely. See below.

Boss-managed outfits

Setting Config.BossManagedOutfits = true moves outfits out of the config file and into a database table that job and gang bosses manage themselves in-game. Config.Outfits is no longer read.
Switching this on with an empty database leaves every clothing room showing an empty outfit list. Import what you already have first - see below.

Adding an outfit

1

Put the outfit on

Dress your ped at a clothing store first. Saving captures whatever you are wearing at that moment, so this has to come first.
2

Open outfit management

Walk into your job’s clothing room, press E, and pick Outfit Management. Bosses can also reach it from the boss/gang menu, which additionally requires qb-management or qbx_management - the clothing room route needs nothing extra installed.
3

Save it

Pick Save Outfit, then set the outfit’s name, which gender it is for, and tick every rank allowed to wear it. Ranks are listed in order and numbered, so ticking 1, 3 and 5 gives exactly those three and nothing else.
The same menu offers Change Outfit to wear one and Delete Outfit to remove one.

Editing an outfit

Edit Outfit opens any saved outfit with its current name and ranks already filled in, so you can rename it or change who can wear it without rebuilding it. There is also a tick box on that screen:
Replace the clothing with what I am wearing now
Leave it unticked and only the name and ranks change - the saved clothing is untouched. Tick it to update the outfit to whatever you are currently wearing, which is the quickest way to tweak a uniform without deleting and recreating it.
Bosses can only edit outfits belonging to their own job or gang. Everything is checked on the server, so it holds regardless of what the menu shows.
Clothing is captured from the ped you are wearing, and male and female freemode peds use different drawable IDs for the same garment. Build and save each outfit twice - once on a male ped, once on a female ped - or staff of the other gender get the wrong clothing.

How the two compare

Both control access the same way - an exact list of ranks - so nothing is lost switching between them:

Importing your existing outfits

/importjoboutfits copies everything in Config.Outfits into the database, so bosses start from the outfits you already built instead of an empty list.
Safe to run more than once - outfits already in the database are skipped rather than duplicated. A summary and any warnings print to the server console.
Run this from the server console (without the leading slash) rather than in-game. The command is restricted to the group.admin ace, which is separate from your framework’s admin permissions - being an admin in QBCore, QBX or ESX does not grant it. In-game it will appear to do nothing at all.To run it in-game instead, add yourself as a principal in server.cfg:
Config.Outfits is keyed by job or gang name with no way to tell the two apart, so run the command once per type and pass gang for your gang outfits.
Each outfit’s grades list carries across exactly, gaps included, so grades = { 1, 3, 5 } stays those three ranks after importing. Any outfit with no grades set is skipped and reported in the count.