HomeDocumentationFlake Wearables
๐Ÿ‘•

Flake Wearables

A wearable accessories system for FiveM. Players equip chains, watches, bags, bulletproof vests, decals, and t-shirts through an ox_lib context menu, with full illenium-appearance integration.

FiveMESX ยท QBX ยท QBox_libLua 5.4
Purchase Script
flakedev.com

Overview

Flake Wearables adds equippable clothing accessories to your server. Players use an item to open a context menu, select from available presets, and the component is applied directly to their ped through illenium-appearance. Items are removed from inventory on equip and restored on unequip.

Features

  • Six Categories โ€” Chains, Watches, Bags, Bulletproof Vests, Decals, T-Shirts.
  • Context Menu UI โ€” Clean ox_lib menu for browsing and equipping.
  • Gender Support โ€” Separate male and female drawable/texture presets.
  • illenium-appearance โ€” Saves and restores wearables with player outfits.
  • Item-Based โ€” Each wearable is a usable inventory item.
  • Easy Presets โ€” Add new styles by editing simple Lua tables.

Requirements

DependencyPurposeRequired
ox_libCallbacks, context menus, notificationsYes
ox_inventoryItem storage and usable item registrationYes
illenium-appearancePed component application and outfit savingYes
ESX / QBX / QB-CoreFramework for players and itemsYes

Installation

Step 1 โ€” Drop the Resource

Place the flake_wearables folder into your server's resources directory and add to server.cfg:

ensure flake_wearables

Step 2 โ€” Add Items

Add each wearable item to your ox_inventory/data/items.lua (or QB inventory equivalent). Each item requires:

  • usable = true
  • close = true (optional โ€” closes inventory on use)
['chain_gold'] = {
    label  = 'Gold Chain',
    weight = 100,
    stack  = false,
    close  = true,
    usable = true,
},

Step 3 โ€” Configure

Edit shared.lua to map your inventory item names to wearable categories. See the Adding Items section below.

Done

Restart your server and players can use wearable items from their inventory.

File Structure

flake_wearables/
โ”œโ”€โ”€ wearables/
โ”‚   โ”œโ”€โ”€ chains.lua   -- Chain presets (escrow-ignored)
โ”‚   โ”œโ”€โ”€ watches.lua  -- Watch presets (escrow-ignored)
โ”‚   โ”œโ”€โ”€ bag.lua      -- Bag presets (escrow-ignored)
โ”‚   โ”œโ”€โ”€ bproof.lua   -- Bulletproof vest presets (escrow-ignored)
โ”‚   โ”œโ”€โ”€ decals.lua   -- Decal presets (escrow-ignored)
โ”‚   โ””โ”€โ”€ tshirt.lua   -- T-shirt presets (escrow-ignored)
โ”œโ”€โ”€ client/
โ”‚   โ””โ”€โ”€ main.lua     -- Menu logic, component application
โ”œโ”€โ”€ server/
โ”‚   โ””โ”€โ”€ main.lua     -- Item registration, callbacks
โ”œโ”€โ”€ shared.lua   -- Item-to-category mapping (escrow-ignored)
โ””โ”€โ”€ fxmanifest.lua  -- Resource manifest

Configuration

All preset files and shared.lua are escrow-ignored and fully editable.

Item Mapping

shared.lua maps inventory item names to wearable categories. When a player uses any item in the list, the script opens the context menu for that category.

Config.Chains = {
    Items = {
        'chain_gold',
        'chain_silver',
        'chain_diamond',
    },
}

Categories

CategoryComponentPreset File
ChainsNeck / Torso accessorywearables/chains.lua
WatchesLeft wristwearables/watches.lua
BagsBackpack / dufflewearables/bag.lua
Bulletproof VestsBody armourwearables/bproof.lua
DecalsTorso overlaywearables/decals.lua
T-ShirtsUndershirtwearables/tshirt.lua

Adding Items

Adding a new wearable style takes three steps.

Step 1 โ€” Add Inventory Item

Register the item in your inventory config:

['chain_ruby'] = {
    label  = 'Ruby Chain',
    weight = 100,
    stack  = false,
    close  = true,
    usable = true,
},

Step 2 โ€” Map to Category

Add the item name to the correct list in shared.lua:

Config.Chains.Items = {
    'chain_gold',
    'chain_silver',
    'chain_ruby',  -- new
}

Step 3 โ€” Add Preset

Open the corresponding preset file (e.g. wearables/chains.lua) and add the drawable data:

Config.Chains.Presets.Chains.chain_ruby = {
    male = {
        drawable = 15,
        texture  = 0,
    },
    female = {
        drawable = 15,
        texture  = 0,
    },
}

Finding Drawable IDs

Use a tool like vMenu or Menyoo to browse component drawables on your ped. Note the component index, drawable ID, and texture ID, then map them to the correct category.

Gender Support

You can omit the male or female block if a style only exists for one gender. The script skips missing genders gracefully.

Troubleshooting

IssueFix
Item not usableEnsure usable = true is set in your inventory item definition.
Menu not openingVerify the item name matches exactly in shared.lua and your inventory config.
Component not showingDouble-check the drawable and texture IDs. Some drawables require a specific component slot.
Component disappears on relogEnsure illenium-appearance is saving outfits correctly and the player saves after equipping.
Wrong component appliedVerify you are editing the correct preset file for the category. Chains and Decals use different component indices.
Female drawables not workingFemale ped models often use different drawable IDs. Test on both genders or omit unsupported blocks.
Developed by Flake Development. For support, open a ticket in our Discord.