Personalizzazione
Due file contengono tutto ciò che configuri, e la divisione tra i due si riduce a una sola domanda: sarebbe un problema se un giocatore lo leggesse? shared/config.lua viene inviato a ogni client. shared/keys.lua viene caricato esclusivamente come script lato server e non lascia mai il server.
Quale file decide cosa
Sezione intitolata “Quale file decide cosa”Tutti i percorsi si trovano dentro mic_cloth_designer, salvo diversa indicazione.
| Dove | Cosa decide | Aperto alle modifiche |
|---|---|---|
shared/config.lua | Comando, tasto rapido, permesso, lingua, libreria condivisa o per giocatore, risoluzione, l’oggetto, debug | Sì |
shared/keys.lua | Le tue chiavi e i token, le impostazioni IA, l’hosting delle foto, l’elenco dei componenti personalizzabili — solo server | Sì |
locales/*.lua | Ogni stringa dello studio e delle sue notifiche; locales/locale.lua è il risolutore | Sì |
items/ox.lua, items/qb.lua | La definizione dell’oggetto cloth_design per ox_inventory e QBCore | Sì |
html/ | L’interfaccia dello studio; html/patterns/ contiene le stampe, html/previews/ le miniature dei capi in cache | Non sotto escrow, ma gli script sono offuscati |
base/addon_templates/ | Modelli che lo studio usa per generare nuovi capi. Non toccarli | Sì |
client/, server/, bridge/ | La logica, la scrittura dei file, i bridge | Sotto escrow |
mic_cloth_addons/import/ | Dove inserisci i tuoi capi .ydd | Sì |
mic_cloth_addons/stream/, metas/, fxmanifest.lua | I capi generati. Riscritti dallo studio — non modificare a mano | Generato |
I file aperti sono quelli elencati in escrow_ignore nel fxmanifest.lua.
shared/config.lua
Sezione intitolata “shared/config.lua”| Opzione | Cosa fa | Predefinito |
|---|---|---|
Config.Framework | 'esx' o 'qb'. Impostalo in base al tuo server; il bridge degli oggetti rileva anche il framework da solo. Usa 'qb' su QBCore, su QBox (tramite la compatibilità QBCore) e su un server standalone | 'qb' |
Config.Locale | Lingua dello studio e delle sue notifiche | 'en' |
Config.Command | Comando che apre lo studio | clothdesigner |
Config.Keybind | Un tasto per aprirlo, ad esempio 'F7'. false per nessuno. I giocatori possono riassegnarlo nelle impostazioni tasti di FiveM | false |
Config.OpenPermission | Il permesso ACE necessario a un giocatore per aprire lo studio. false fa entrare chiunque | mic_clothdesigner |
Config.GlobalContent | true: tutti gli utenti autorizzati condividono un’unica libreria di design, oggetti e completi. false: ogni designer vede solo i propri | true |
Config.TextureResolution | Dimensione predefinita della texture: 256, 512 o 1024. Il menu a tendina dell’editor la modifica per singolo design e l’IA la segue | 512 |
Config.MaxDesignsPerPlayer | Un limite ai design salvati. Presente nel file ma non applicato nella versione attuale | 50 |
Config.Items.Enabled | Oggetti indossabili, completi e oggetti da negozio attivi o disattivi | true |
Config.Items.Name | L’oggetto generico che contiene un design | cloth_design |
Config.Items.Label | Mantenuto per riferimento. Ogni oggetto viene mostrato con il nome del proprio design | Clothing Design |
Config.Debug | Stampa nella console ciò che lo studio sta facendo. Fornito attivo — disattivalo su un server aperto al pubblico | true |
shared/keys.lua
Sezione intitolata “shared/keys.lua”Le tue chiavi
Sezione intitolata “Le tue chiavi”| Chiave | Cosa fa |
|---|---|
GeminiAPIKey | Attiva il generatore IA. Vuoto = nessuna IA |
FivemanageToken | Carica le foto dei design e degli oggetti su Fivemanage salvando solo il link. Vuoto = le foto restano nel database, che cresce più rapidamente |
DiscordWebhook | Pubblica ogni generazione IA con il prompt e il costo stimato. Vuoto = disattivato |
ClothNetworkKey | Lascia vuoto. La condivisione sulla Cloth Network funziona già senza configurazione |
Il generatore IA — Config.AI
Sezione intitolata “Il generatore IA — Config.AI”Già calibrato. L’opzione che vale la pena conoscere è Model, che bilancia costo e qualità.
| Opzione | Cosa fa | Predefinito |
|---|---|---|
Enabled | IA attiva o disattiva, a prescindere dalla chiave | true |
Provider | 'gemini', oppure 'openai' per DALL·E (la chiave in GeminiAPIKey viene quindi usata per OpenAI) | 'gemini' |
Model | gemini-3.1-flash-lite-image è il più economico, gemini-3.1-flash-image quello bilanciato, gemini-3-pro-image il più costoso | gemini-3.1-flash-image |
GeminiImageSize | Dimensione di output di riserva. Normalmente inutilizzata: comanda la risoluzione scelta nell’editor | 512px |
ImageSize | Dimensione di output solo per OpenAI | 1024x1024 |
AspectRatio | Le texture sono quadrate | 1:1 |
Pricing | USD per milione di token in ingresso e in uscita, usato solo per la stima dei costi nel log di Discord | 0.50 / 60.00 |
Viene eseguita una generazione alla volta per giocatore, con un breve tempo di attesa tra l’una e l’altra.
Hosting delle foto — Config.Fivemanage
Sezione intitolata “Hosting delle foto — Config.Fivemanage”Enabled e il token indicato sopra. Le foto sono il render 3D di ciascun design, utilizzate nella libreria, sugli oggetti (ox_inventory le mostra come immagine dell’oggetto) e sulle schede della rete.
Componenti personalizzabili — Config.Components
Sezione intitolata “Componenti personalizzabili — Config.Components”I dodici slot di abbigliamento di GTA per i quali lo studio può creare design — testa, maschera, capelli, braccia, gambe, guanti, scarpe, accessori, borse, giubbotti, decalcomanie e parti superiori — ciascuno con il prefisso file usato dai relativi capi. Risiede lato server così non può essere modificato da un client. Lascialo così com’è.
Permessi
Sezione intitolata “Permessi”| Permesso | Dove | Cosa consente |
|---|---|---|
L’ACE in Config.OpenPermission (mic_clothdesigner) | server.cfg — a un gruppo o a un identificatore | Aprire lo studio e compiere ogni azione al suo interno. Verificato sul server ogni volta |
command.refresh, command.ensure, command.start, command.stop per resource.mic_cloth_designer | In cima al server.cfg | Permette allo studio di ricaricare mic_cloth_addons dopo un’esportazione |
Scrittura sul filesystem da mic_cloth_designer verso mic_cloth_addons | In cima al server.cfg | Permette di salvare effettivamente i capi |
importaddons | Console del server | Comando riservato: la console, oppure un admin con il relativo permesso ACE |
Comandi
Sezione intitolata “Comandi”| Comando | Chi | Cosa fa |
|---|---|---|
/clothdesigner | Giocatori con l’ACE | Apre lo studio. Il nome è definito in Config.Command |
importaddons | Console del server | Trasforma i file .ydd in attesa dentro mic_cloth_addons/import/ in capi personalizzabili. Vedi 👕 Capi di Abbigliamento |
Ne sono incluse undici in locales/: en, es, fr, de, it, pt, pl, ru, tr, nl, cs. Imposta Config.Locale e riavvia. Una stringa mancante in una lingua viene mostrata in inglese.
Per aggiungerne una:
- Copia
locales/en.luainlocales/<code>.luae cambiaLocales['en']con il tuo codice. - Traduci i valori, mai le chiavi, e mantieni tutti i
%s. - Aggiungi il file a
shared_scriptsnelfxmanifest.luaprima dilocales/locale.lua— il risolutore deve essere caricato dopo tutte le lingue. Poi eseguirefresh. - Imposta
Config.Localesul nuovo codice.
L’interfaccia viene tradotta sostituendo il testo inglese con il tuo, quindi i valori inglesi in en.lua devono rimanere esattamente come sono.
Il bridge
Sezione intitolata “Il bridge”Entrambi i file del bridge sono sotto escrow; ecco cosa fanno, così sai cosa aspettarti.
| File | A cosa serve |
|---|---|
bridge/server_bridge.lua | Rileva qb-core o es_extended, registra gli oggetti utilizzabili (ESX RegisterUsableItem / QBCore CreateUseableItem, rispettati da ox_inventory) e consegna gli oggetti con il relativo design allegato — tramite ox_inventory quando è attivo, altrimenti tramite il framework |
client/bridge.lua | Notifiche. All’interno dello studio usa i propri avvisi (toast); all’esterno usa le notifiche di ox_lib quando è attivo, poi ESX o QBCore, infine il feed di GTA |
I giocatori sono identificati dal loro identificatore license:, qualunque sia il framework.