Konfiguration
Zwei Dateien beinhalten alle Einstellungen, und die Trennung folgt einem einfachen Prinzip: Wäre es problematisch, wenn ein Spieler den Inhalt lesen könnte? shared/config.lua wird an jeden Client übertragen. shared/keys.lua wird ausschließlich serverseitig geladen und verlässt den Host-Server niemals.
Welche Datei wofür zuständig ist
Abschnitt betitelt „Welche Datei wofür zuständig ist“Alle Pfadangaben beziehen sich auf mic_cloth_designer, sofern nicht anders angegeben.
| Wo | Was bestimmt wird | Offen? |
|---|---|---|
shared/config.lua | Befehl, Keybind, Berechtigung, Sprache, geteilte/eigene Bibliothek, Auflösung, Items, Debug | Ja |
shared/keys.lua | Deine Keys und Tokens, KI-Einstellungen, Bilderhosting, Liste designbarer Komponenten — nur serverseitig | Ja |
locales/*.lua | Alle Texte des Studios und seiner Benachrichtigungen; locales/locale.lua ist der Resolver | Ja |
items/ox.lua, items/qb.lua | Die Definition des Items cloth_design für ox_inventory und QBCore | Ja |
html/ | Die Studio-Oberfläche; html/patterns/ enthält Muster, html/previews/ zwischengespeicherte Kleidungs-Thumbnails | Kein Escrow, aber Skripte sind obfuskiert |
base/addon_templates/ | Vorlagen, die das Studio zur Erstellung neuer Kleidungsstücke nutzt. Nicht verändern | Ja |
client/, server/, bridge/ | Spiellogik, Dateigenerator, Bridges | Escrow |
mic_cloth_addons/import/ | Ordner zum Ablegen eigener .ydd-Kleidungsstücke | Ja |
mic_cloth_addons/stream/, metas/, fxmanifest.lua | Die generierten Kleidungsstücke. Werden vom Studio überschrieben — niemals manuell bearbeiten | Generiert |
Die offenen Dateien entsprechen den in escrow_ignore der fxmanifest.lua geführten.
shared/config.lua
Abschnitt betitelt „shared/config.lua“| Option | Funktion | Standard |
|---|---|---|
Config.Framework | 'esx' oder 'qb'. Passend zum Server wählen; die Item-Bridge erkennt das Framework auch selbstständig. Nutze 'qb' bei QBCore, bei QBox (über QBCore-Kompatibilität) sowie auf Standalone-Servern | 'qb' |
Config.Locale | Sprache des Studios und der Benachrichtigungen | 'en' |
Config.Command | Befehl zum Öffnen des Studios | clothdesigner |
Config.Keybind | Taste zum Öffnen, z. B. 'F7'. false für keine. Spieler können die Taste in den FiveM-Tastatureinstellungen anpassen | false |
Config.OpenPermission | Die ACE, die ein Spieler zum Öffnen des Studios benötigt. false erlaubt jedem den Zugriff | mic_clothdesigner |
Config.GlobalContent | true: Alle berechtigten Designer teilen eine gemeinsame Bibliothek für Entwürfe, Items und Outfits. false: Jeder Designer sieht nur seine eigenen Werke | true |
Config.TextureResolution | Standard-Texturgröße: 256, 512 oder 1024. Das Dropdown im Editor erlaubt die Wahl pro Design; die KI folgt dieser Vorgabe | 512 |
Config.MaxDesignsPerPlayer | Obergrenze gespeicherter Entwürfe. In der Datei angelegt, in der aktuellen Version jedoch nicht forciert | 50 |
Config.Items.Enabled | Aktiviert oder deaktiviert tragbare Gegenstände, Outfits und Shop-Items | true |
Config.Items.Name | Der Name des generischen Items, das ein Design speichert | cloth_design |
Config.Items.Label | Als Referenz beibehalten. Jedes Item wird mit dem Namen seines gespeicherten Designs angezeigt | Clothing Design |
Config.Debug | Gibt Aktionen des Studios in der Konsole aus. Standardmäßig an — für Live-Server unbedingt ausschalten | true |
shared/keys.lua
Abschnitt betitelt „shared/keys.lua“Deine Schlüssel
Abschnitt betitelt „Deine Schlüssel“| Schlüssel | Funktion |
|---|---|
GeminiAPIKey | Schaltet den KI-Generator frei. Leer = keine KI |
FivemanageToken | Lädt Design- und Item-Vorschaubilder zu Fivemanage hoch und speichert nur den Link. Leer = Bilder lagern in der Datenbank, die dadurch schneller wächst |
DiscordWebhook | Postet jede KI-Generierung samt Prompt und geschätzten Kosten in Discord. Leer = aus |
ClothNetworkKey | Leer lassen. Das Teilen im Cloth Network funktioniert standardmäßig ohne Key |
Der KI-Generator — Config.AI
Abschnitt betitelt „Der KI-Generator — Config.AI“Voreingestellt. Von besonderer Bedeutung ist Model, um Kosten gegen Texturqualität abzuwägen.
| Option | Funktion | Standard |
|---|---|---|
Enabled | KI an oder aus, unabhängig vom eingetragenen Key | true |
Provider | 'gemini', oder 'openai' für DALL·E (in diesem Fall wird der Key in GeminiAPIKey für OpenAI verwendet) | 'gemini' |
Model | gemini-3.1-flash-lite-image ist am günstigsten, gemini-3.1-flash-image ausgewogen, gemini-3-pro-image am kostenintensivsten | gemini-3.1-flash-image |
GeminiImageSize | Fallback-Ausgabegröße. Meist ungenutzt, da die im Editor gewählte Auflösung greift | 512px |
ImageSize | Ausgabegröße ausschließlich für OpenAI | 1024x1024 |
AspectRatio | Texturen sind stets quadratisch | 1:1 |
Pricing | USD pro Million Input- und Output-Tokens, rein für die Kostenschätzung im Discord-Log genutzt | 0.50 / 60.00 |
Pro Spieler läuft immer nur eine Generierung gleichzeitig, gefolgt von einer kurzen Abklingzeit.
Bildhosting — Config.Fivemanage
Abschnitt betitelt „Bildhosting — Config.Fivemanage“Enabled und das Token von oben. Bei den Bildern handelt es sich um 3D-Render jedes Designs für Bibliothek, Items (ox_inventory zeigt sie als Item-Icon) und Karten im Netzwerk.
Designbare Komponenten — Config.Components
Abschnitt betitelt „Designbare Komponenten — Config.Components“Die zwölf GTA-Kleidungs-Slots, für die das Studio Kleidung entwerfen kann — Kopf, Maske, Haare, Arme, Beine, Handschuhe, Schuhe, Accessoires, Taschen, Westen, Decals und Oberteile — jeweils mit dem Dateipräfix der Kleidungsstücke. Liegt serverseitig, um Manipulationen vom Client auszuschließen. Im Originalzustand belassen.
Berechtigungen
Abschnitt betitelt „Berechtigungen“| Berechtigung | Wo | Was erlaubt wird |
|---|---|---|
Die ACE in Config.OpenPermission (mic_clothdesigner) | server.cfg — Gruppe oder einzelne Kennung | Öffnen des Studios und jede Aktion darin. Wird jedes Mal serverseitig geprüft |
command.refresh, command.ensure, command.start, command.stop für resource.mic_cloth_designer | Oben in der server.cfg | Erlaubt dem Studio den Neustart von mic_cloth_addons nach einem Export |
Dateisystem-Schreibrecht von mic_cloth_designer auf mic_cloth_addons | Oben in der server.cfg | Grundvoraussetzung, um Kleidungsstücke überhaupt abspeichern zu können |
importaddons | Server-Konsole | Eingeschränkter Befehl: Server-Konsole oder ein Admin mit passender ACE |
Befehle
Abschnitt betitelt „Befehle“| Befehl | Wer | Funktion |
|---|---|---|
/clothdesigner | Spieler mit der ACE | Öffnet das Studio. Name entspricht Config.Command |
importaddons | Server-Konsole | Wandelt die im Ordner mic_cloth_addons/import/ wartenden .ydd-Dateien in designbare Kleidung um. Siehe 👕 Kleidung |
Sprachen
Abschnitt betitelt „Sprachen“Elf Sprachen werden in locales/ mitgeliefert: en, es, fr, de, it, pt, pl, ru, tr, nl, cs. Trage das Kürzel in Config.Locale ein und starte neu. Fehlende Einträge werden auf Englisch ausgegeben.
So fügst du eine Sprache hinzu:
- Kopiere
locales/en.luanachlocales/<code>.luaund ändereLocales['en']zu deinem Sprachcode. - Übersetze nur die Werte, niemals die Schlüssel, und behalte alle
%s-Platzhalter bei. - Trage die Datei in den
shared_scriptsderfxmanifest.luavorlocales/locale.luaein — der Resolver muss nach allen Sprachdateien geladen werden. Führe danachrefreshaus. - Setze
Config.Localeauf das neue Kürzel.
Die Benutzeroberfläche ersetzt englische Texte dynamisch durch deine Übersetzungen; die englischen Originalwerte in en.lua müssen exakt unverändert bleiben.
Die Bridge
Abschnitt betitelt „Die Bridge“Beide Bridge-Dateien sind escrow-geschützt. Ihre Aufgaben im Überblick:
| Datei | Zweck |
|---|---|
bridge/server_bridge.lua | Erkennt qb-core oder es_extended, registriert nutzbare Gegenstände (ESX RegisterUsableItem / QBCore CreateUseableItem, von ox_inventory unterstützt) und übergibt Items samt verknüpftem Design — bevorzugt über ox_inventory, sonst das Framework |
client/bridge.lua | Benachrichtigungen. Im Studio als interne Toasts; außerhalb über ox_lib notify falls aktiv, andernfalls ESX oder QBCore, danach nativer GTA-Feed |
Spieler werden framework-unabhängig über ihre license:-Kennung identifiziert.