Skip to content

Standalone mode — lumo-clothing ​

With no QBCore, Qbox or ESX running, lumo-clothing runs on its own. Everything a framework would normally provide is covered below.

Who is the player? ​

You runA "character" is
lumo-multicharacterThe character picked in its selector (several per player)
nothingThe player's Rockstar licence: one look per player

The saved look loads when the player spawns: from lumo-multicharacter / lumo-spawn when they run, otherwise when FiveM's spawnmanager spawns the player (Standalone.AnnounceOnSpawn in bridge/config.lua).

Money ​

There is no money without a framework, so by default shopping is free (clothes, barber, tattoos, laundry). To charge, plug your own economy into bridge/config.lua:

lua
Standalone = {
    FreeShopping = true,           -- used only when no Money hooks are set
    Money = {
        GetMoney    = function(source, account)                 -- 'cash' | 'bank'
            return exports['my-economy']:GetBalance(source, account)
        end,
        RemoveMoney = function(source, account, amount, reason)
            return exports['my-economy']:Take(source, account, amount, reason) -- true/false
        end,
        AddMoney    = function(source, account, amount, reason)  -- refunds only
            return exports['my-economy']:Give(source, account, amount, reason)
        end,
    },
},

Set FreeShopping = false without hooks to make every purchase refuse.

Jobs (job lockers, police evidence) ​

Job lockers and /describe need a job. Without a framework nobody has one, so those stay unavailable unless you return one:

lua
Standalone = {
    GetJob = function(source)
        local job = exports['my-jobs']:GetJob(source)   -- your script
        return job and { name = job.name, onduty = true, grade = { level = job.grade } } or nil
    end,
},

Admins ​

Admin commands (/lumo_admin, /openshop, /testcreation, /giveclothing) use ACE:

cfg
add_ace group.admin lumo.clothing.admin allow
add_principal identifier.license:YOUR_LICENSE group.admin

Notifications, menus, progress bars ​

All come from ox_lib (required). Prompts use ox_target / qb-target / lumo-interact when running, otherwise a built-in [E] prompt.

Inventory items ​

Clothes as inventory items, the hair tie and detergent need an inventory with item metadata (ox_inventory works standalone). Without one, switch Lumo.ClothingItems.enabled off in shared.lua; everything else works.