Before You Begin#
Before installing Clothing Creator, make sure your server meets the requirements below. Everything else — the database tables, the companion resources, the data folder — is created on the first start.
Requirement | Status | Notes |
|---|---|---|
| Required | Database access. Every table creates itself on the first start. |
| Required | Callbacks, notifications and shared helpers. |
OneSync | Required | Declared as a dependency — the resource does not start without it. |
Mono runtime | Required | The asset pipeline is a C# module that runs inside FXServer. Every recent server artifact includes it, on Windows and on Linux. |
Framework | Optional | ESX, QBCore and Qbox are detected automatically. Anything else runs as standalone. |
Appearance script | Recommended | Where your players pick the clothes you publish: qs-appearance, illenium-appearance, fivem-appearance, qb-clothing, rcore_clothing or esx_skin. |
Game build | Recommended |
|
The framework and the appearance script are found by looking at what is already running when the resource starts. There is nothing to select by hand:
Layer | Detection |
|---|---|
Framework |
|
Appearance | qs-appearance → illenium-appearance → fivem-appearance → qb-clothing → rcore_clothing → esx_skin / skinchanger. The first one running wins. |
Published clothes reach every appearance menu on their own: menus count the drawables a ped has, and a publish raises that count. The appearance script is only used to restore a player's saved outfit after a clothing refresh.
github.comReleases · overextended/oxmysqlMySQL resource for FXServer.github.comReleases · overextended/ox_libA FiveM resource and script library for Lua and JS.Downloading Clothing Creator#
After purchasing Clothing Creator, the resource is automatically linked to your CFX Portal account.
Sign in to the CFX Portal using the same account used during checkout, open Granted Assets, and download Clothing Creator.
After extracting the download, you should have the following folder:
[clothing-creator]/
├── qs-clothing-designer/ -- the resource
│ ├── config/config.lua -- framework, appearance and admin groups
│ ├── custom/ -- framework bridges and your own lists
│ ├── locales/ -- 41 languages
│ ├── server/webhooks.lua -- Discord webhooks
│ ├── templates/ -- the 99 base garments the studio ships with
│ └── web/ -- the studio interface
├── [sql]/
│ ├── database.sql -- optional: every table is created on start
│ └── clean.sql -- full uninstall, drops every table
└── installation -- the add_ace lines for server.cfgKeep the folder named
qs-clothing-designer. The server.cfg permissions (resource.qs-clothing-designer), the address of the studio page and the three resources it writes next to itself are all tied to that name.
Installing the Resource#
Move the whole [clothing-creator] folder into your server's resources directory. It can live anywhere under resources/:
resources/
└── [clothing-creator]/
└── qs-clothing-designer/Then open your server.cfg, add the five permission lines, and ensure Clothing Creator after everything it depends on:
# Clothing Creator refreshes and restarts its own resources when you publish
add_ace resource.qs-clothing-designer command.ensure allow
add_ace resource.qs-clothing-designer command.start allow
add_ace resource.qs-clothing-designer command.stop allow
add_ace resource.qs-clothing-designer command.restart allow
add_ace resource.qs-clothing-designer command.refresh allow
ensure oxmysql
ensure ox_lib
# Framework
ensure es_extended
# ensure qb-core
# ensure qbx_core
# Appearance script and any other clothing packs
ensure illenium-appearance
ensure [clothing]
# Clothing Creator
ensure qs-clothing-meta
ensure qs-clothing-assets
ensure qs-clothing-designerThe loading order matters. The framework is detected from what is already started, so it goes first. qs-clothing-meta goes after every other clothing pack, so its collections come last in the game's order and never shift the drawables of another pack.
qs-clothing-metaandqs-clothing-assetsare not in the download. Clothing Creator writes both on its first start, so their twoensurelines warn once, on that very first boot, that the resource could not be found. From the next start on they are found like any other resource.
The Four Resources#
Only qs-clothing-designer ships. It creates the other three next to itself, and each one has a single job:
Resource | What it holds | Restarted |
|---|---|---|
| The studio, the database and the C# asset pipeline. | Whenever you like. |
| What every collection declares to the game: the | Only by Clothing Creator: inside a publish, when the server is empty, or at a server start. |
| The published drawables ( | Only by Clothing Creator, in a guarded publish cycle. |
| Your data: uploaded pictures, the textures every published piece is built from, and imported templates. Never part of a download. | Started by Clothing Creator — it needs no ensure line. |
The data folder#
qs-clothing-data is the one folder you must protect. It sits next to qs-clothing-designer and holds:
Folder | Contents |
|---|---|
| Every picture an admin uploaded or linked. |
| The textures every published piece is built from. Each publish rebuilds the whole collection from these files. |
| Your own |
| The 3D preview of every imported template. The studio fetches them on demand, so players never download them. |
| Builds in progress and already-encoded textures, so a publish only re-encodes what changed. Safe to delete. |
The Database#
There is no SQL file to import. Clothing Creator creates its own tables on the first start, and adds new columns by itself after an update.
Tables | Hold |
|---|---|
| Everyone who has opened the studio. |
| Saved designs — every layer and variation — so a piece can be reopened and edited. |
| Every published piece: its collection, slot, name, variations and state. |
| The history of builds and publish cycles shown in the admin panel. |
| The review queue, when moderation is on. |
| The pictures behind image layers. |
| Every setting changed in game. Only values that differ from the default get a row. |
[sql]/database.sqlholds the same schema, for hosts that only let you create tables by hand.[sql]/clean.sqldrops every table — use it only to uninstall.
Claiming Admin Access#
Clothing Creator is a staff tool. The studio, the settings and the admin panel all sit behind the same check, and there is no player-facing window — players simply find the new clothes in their appearance menu. Who counts as an admin depends on your framework:
Any player whose ESX group is listed in Config.AdminGroups in config/config.lua:
Config.AdminGroups = { 'admin', 'superadmin', 'god' }Add or remove groups, then restart the resource.
Automatic, nothing to configure. A player with the god or admin permission, or with the command ace, is an admin.
The command ace — the one txAdmin and most server.cfg files already give their admin group. To make one player an admin:
add_ace group.admin command allow
add_principal identifier.license:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx group.adminAnyone else who runs the command is told You do not have permission to do that. The server console is always allowed.
Configuring the Resource#
Almost nothing is configured in files. Texture sizes, publishing, capacity, the slots the studio offers, images, moderation and the language are all edited in game — /clothingdesigner → Admin (the gear icon) → Open settings — and stored in your database, so an update never resets them. The files only hold what has to be known before the database answers, and the lists you extend:
File | Contents |
|---|---|
| Framework and appearance detection, the ESX admin groups, and the ped models allowed to wear published items. |
| The image hosts accepted when Allow any host is switched off. |
| The three Discord webhooks. |
| How notifications are shown — swap in your own notify resource here. |
| The framework bridges: who is an admin, a player's identifier and their name. |
| Every text, in 41 languages. |
The values worth reviewing first:
-- config/config.lua
Config.AdminGroups = { 'admin', 'superadmin', 'god' } -- ESX groups that may open the studio
Config.AllowedModels = { `mp_m_freemode_01`, `mp_f_freemode_01` }
-- server/webhooks.lua
Webhooks = {
publish = '', -- addon imports, settings changes
moderation = '', -- approvals and rejections
errors = '', -- failed builds, failed publish cycles, lost textures
}Every file above is left open by Asset Escrow, so you can read and edit it. Keep a copy of the ones you changed before you update — see Updating.
Verifying the Installation#
Restart your server and read the console. A healthy install is quiet — these two lines, and nothing else:
[INFO] Successfully loaded the framework. esx
CLOTHING INFO: admin command: /clothingdesignerOn every start Clothing Creator runs a self-check: the C# service, the database, the data folder and whether it is writable, both generated resources, the template files, the game build, the collections, and the texture files behind every published piece. Only a failed check prints — one red line that names its fix, for example:
CLOTHING ERROR: selfcheck game-build: sv_enforceGameBuild=0 (limits table: 1604) — set sv_enforceGameBuild 2189 or newer in server.cfgThe whole report, passed checks included, is available to your own scripts through the GetSelfcheckReport export — see Commands and Exports. Then join your server and work through the first loop:
Open the studio
As an admin on a freemode character, type
/clothingdesigner. The studio opens full screen, on the templates for your character's gender.Design something
Pick a top from the Wardrobe on the left, apply a preset or paint on the canvas, and watch the 3D preview follow every stroke.
Publish and wear it
Press Publish at the bottom right, name the item and confirm. Moments later it is live: press Wear it now on the result screen, or find it in your appearance menu like any other top. Usage covers everything in between.
Nothing needs a restart from here on. Every setting applies the moment it is saved, and new clothing goes live inside the publish itself.



