Core Skin (3 in 1)
Barbershop, Tattoo-Studio und Kleidungsladen in einer einzigen FiveM-Resource. 1615 Tattoos, jede Kleidungskomponente und jedes Prop, der komplette Bereich für Kopf und Haut, verteilt auf 36 Läden. Eine Oberfläche, eine Kamera, ein Kaufablauf und nur eine Sache, die du auf ESX, QBCore, vRP oder Standalone installierst.
Was in diesem Pack steckt
Spare 15,00 €Was es kann
Das Decoration-Slot-Problem, weg statt verwaltet
Ein GTA-Ped hat genau einen Decoration-Slot, den sich jede Resource auf dem Server teilt, und wer ihn leert, leert ihn für alle. Hair Bases und Tattoos liegen beide darin. Fährst du die drei getrennten Resources, muss jede die anderen nach jedem Redraw wieder eintragen. Das funktioniert, ist aber nur ein Waffenstillstand. Hier werden sie zusammen gezeichnet und zusammen gespeichert, es gibt also keine Übergabe, die schiefgehen kann.
Technische
Daten
Alles, was du
bekommst
-
Die drei Shops, zu einem Preis
Der Barbershop, das Tattoo-Studio und der Kleidungsladen, mit allem, was jeder davon einzeln mitbringt. Das Bundle kostet weniger als die drei einzeln, und du kannst trotzdem ein Modul abschalten, wenn du nur zwei davon brauchst.
-
Fünfzehn Sprachdateien, gefüllt ausgeliefert
Deine Spieler lesen das Script vom ersten Start an in ihrer Sprache, und die Dateien liegen außerhalb des Escrows, du kannst also jede Zeile im laufenden Betrieb ändern. Ehrlicher Hinweis: Sie sind von uns übersetzt und geprüft, nicht von Muttersprachlern aller fünfzehn gegengelesen. Sag uns, was in deiner falsch klingt, dann korrigieren wir es.
-
Acht Bridges, je eine Datei
Framework, Notifications, Interaktion, Kleidung, Inventar, Decorations, Screenshots und Compat. Jede Datei dokumentiert ihre Targets, was sie erkennt und was dich jedes Target kostet. Die Erkennung prüft den echten Export statt nur den Resource-Status, ein umbenannter Export degradiert also leise, statt beim Start einen Fehler zu werfen.
-
Alles Einstellbare bleibt offen
Die 36 Läden, jede Preistabelle, die Collection-Multiplikatoren, die Zonen-Korrekturen, die Kamera, das Licht, die VIP-Listen und die Overrides, die der Editor im Spiel schreibt. `config/*.lua`, `locales/*.lua` und `bridges/*.lua` sind escrow-frei und im Betrieb editierbar.
Guide zur Integration
Installation
-
Resource ablegen
Hol dir das Script aus deinem Tebex-Konto, kopier den Ordner in dein resources-Verzeichnis und trag
ensure avenida_core_skinhinterensure oxmysqlin deine Serverconfig ein. Behalte den Ordnernamen so, wie er ausgeliefert wird, genau so deklariert ihn das Manifest. -
SQL ausführen, Abschnitt [A] komplett
Abschnitt [A] enthält jede Tabelle, die die Resource besitzt, inklusive des Registers bezahlter Kleidung. Die Abschnitte [B], [C] und [D] sind bedingt, die Datei sagt dir, wann welcher gilt. [D] sind die Inventar-Items, nur nötig, wenn du
Config.Clothes.GiveAsItemseinschaltest, und genau den vergisst man. -
Module wählen
Öffne
config/config.luaund setzConfig.Modules. Ein Modul auf false kostet gar nichts: kein Blip, kein Interaktionspunkt, kein Thread, und seine Config wird nie gelesen. Prüf bei der Gelegenheit gleichConfig.Locale. -
Admin-Rechte vergeben
Füg
add_ace group.admin avenida_skin.admin allowundadd_ace group.admin avenida_skin.vip allowein. Das erste öffnet den Katalog-Editor im Spiel, das zweite schaltet frei, was du hinter die VIP-Liste legst. -
Integrationen prüfen
Setz
Config.Debug = true, starte neu und lies die Konsole: Eine Zeile pro Bridge-Kategorie nennt das gewählte Target. Setz es wieder auffalse, sobald die Zeilen zu deinem Server passen, und denk daran, dass es nur das Logging steuert, der Editor hat seinen eigenen Schalter.
Schnellstart
Nur die Shops laufen lassen, die du brauchst
Die drei Module sind unabhängig voneinander. Wer schon einen Kleidungsladen hat, mit dem er zufrieden ist, behält Barbershop und Tattoo-Studio, und vom abgeschalteten Modul läuft nichts.
-- config/config.lua
Config.Modules = {
Barber = true,
Tattoo = true,
Clothes = false, -- no blip, no point, no thread
}
Config.Locale = 'en'
Config.Framework = 'auto' -- 'qbcore' | 'esx' | 'vrp' | 'standalone' | 'custom'
Config.Notif = 'auto'
Config.Interact = 'auto'
Config.Clothing = 'auto'API-Referenz
Öffentliche Exports nach Bereich gruppiert. Jede Zeile zeigt die Signatur und was der Export macht, nicht wie er es macht.
Client
GetHairbase
exports['avenida_skin']:GetHairbase() --> { c = collection, t = nameHash } | nilDie Hairbase, die der Ped gerade trägt. Das Bundle betreibt die drei Shops auf einem einzigen Decoration-Slot, das ist also die einzige Stelle zum Auslesen, egal, welchen Shop der Spieler zuletzt besucht hat.
GetTattoos
exports['avenida_skin']:GetTattoos() --> { { c, t }, ... }Die Tattoos, die der Ped gerade trägt. Da Barber, Ink und Garderobe sich hier eine Registry teilen, bekommst du eine Liste, statt drei Resources nach derselben Antwort zu fragen.
Server
GetBagStorage
exports['avenida_skin']:GetBagStorage(sex, drawable) --> { weight, slots } | nilWas ein Rucksack-Drawable an Gewicht und Slots wert ist, gelesen aus der Garderoben-Config. Für ein Drawable, das nicht als Tasche deklariert ist, kommt nil zurück.
Rezepte
Praxisnahe Copy-Paste-Beispiele. In deine eigene Resource kopieren, Werte anpassen, fertig.
Jeder Laden deklariert seine eigenen Sektionen, und jede Sektion ihren eigenen Preismodus. Ein fester Satz für eine ganze Sektion, ein Multiplikator, der spätere Drawables teurer macht, oder eine Tabelle, wenn nur eine Handvoll Teile einen eigenen Preis verdienen.
-- config/clothes_shops.lua
categories = {
tops = {
enabled = true,
price = { mode = 'fixed', base = 300 },
},
pants = {
enabled = true,
-- price = base + index * mult
price = { mode = 'multiplier', base = 100, mult = 2 },
},
mask = {
enabled = true,
price = { mode = 'table', map = { [12] = 900, [45] = 1500 } },
},
}Ein fester Satz deckt die 1615 Motive ab, ein Multiplikator pro DLC-Collection erledigt den Rest, du bepreist also nie einen Katalog von Hand. Die Laser-Entfernung behält ihren eigenen Preis und wird nie multipliziert.
-- config/tattoo.lua
Config.Tattoo.Prices = {
flat = 1000,
reset = 3000, -- laser removal, per tattoo removed
}
Config.Tattoo.CollectionMultipliers = {
multiplayer_overlays = 0.80, -- base game, cheaper
mpHipster_overlays = 0.85,
-- anything not listed stays at 1.0
}Die Kamera dreht sich um den Kopf, dieselben Höhenwerte funktionieren also im Stehen wie im Sitzen. Licht und Tiefenschärfe machen den Charakter zum Motiv, statt zum Ped in einem dunklen Raum.
-- config/config.lua
Config.Camera = {
Sensitivity = 1.0, -- rotation, zoom and height, clamped to 0.1 - 5.0
InvertY = false,
}
Config.UI = {
Tutorial = true,
Timecycle = 'casino_brightroom',
TimecycleFadeMs = 400,
DofStrength = 0.1,
}Die Resource feuert ein Client-Event, wenn sich ein Menü öffnet und schließt, für alle drei Module. Häng dich daran, statt zu pollen, es ist dasselbe Signal, das die eingebaute HUD-Steuerung nutzt.
AddEventHandler('avenida_skin:client:uiStateChanged', function(hidden)
if hidden then
exports['myhud']:hide()
else
exports['myhud']:show()
end
end)Fehlerbehebung
- Das Bundle, wenn du alle drei willst: Es kostet weniger und ist eine Sache zum Installieren und Aktualisieren. Die einzelnen Resources, wenn du nur eine oder zwei brauchst, oder wenn du schon einen Kleidungsladen hast, mit dem du zufrieden bist. Was du nie tun darfst: beide gleichzeitig laufen lassen. Sie würden je einen eigenen Blip setzen und je eine eigene Kopie desselben Charakters schreiben. Die Resource erkennt die Überschneidung und meldet das beim Start in der Konsole.
- Setz `Config.Clothes = false` in `Config.Modules`. Ein abgeschaltetes Modul registriert nichts: kein Blip, kein Interaktionspunkt, kein Thread, und seine Config wird schlicht nie gelesen. Du kannst auch die beiden einzelnen Resources kaufen, die Entscheidung ist eine Preisfrage, nicht eine Frage dessen, was am Ende läuft.
- Ja. Es liest und schreibt dasselbe Charakter-Format wie die einzelnen Resources und läuft über dieselbe Appearance-Bridge. qb-clothing, illenium-appearance, fivem-appearance, esx_skin oder die eigene Tabelle funktionieren also weiter. Für bestehende Charaktere wird übernommen, was sie ohnehin tragen, auch im Besitz-Register der Kleidung.
- QBCore, ESX und vRP, dazu ein Standalone-Modus, der gar kein Framework braucht, und ein `custom`-Zweig in `bridges/framework.lua` für alles andere. Die Erkennung läuft beim Start und prüft den echten Export. Qbox und ox_core haben keinen eigenen Zweig: Sie laufen über den Standalone- oder Custom-Pfad, nicht über ein getestetes Target.
- Ja, überall, wo es zählt: `ox_lib` für Notifications, `ox_target` für den Interaktions-Prompt, `ox_inventory` für Kleidungs-Items und Rucksack-Container, und oxmysql als einzige harte Dependency. Nichts davon ist Pflicht außer oxmysql.
- vRP speichert Kleidungskomponenten und Props, sonst nichts. Es hat kein Feld für Head-Overlays, Gesichtszüge, Haarfarbe, Augenfarbe oder Ped-Decorations. Auf vRP hält diese Resource den ganzen Charakter deshalb in ihrer eigenen Tabelle. Die Kleidungshälfte bekommt vRP trotzdem, nach jeder Änderung aufgefrischt. vRP 2 und vRP 0.5 werden nicht unterstützt, und die Resource sagt das in der Konsole, statt sich still falsch zu verhalten.
- Prüf `Config.Clothes.RequireOwnership`. Das Register übernimmt beim ersten Mal, was ein Charakter ohnehin trägt, das Einschalten nimmt also niemandem seine Garderobe weg. Was es ablehnt, ist ein Schreibvorgang für ein Teil ohne Kauf dahinter, und genau das schickt ein manipulierter Client.
- 0.00ms. Die Interaktionspunkte teilen sich einen Thread, der auf eine Sekunde hochgeht, wenn niemand in der Nähe ist, Blips werden einmal erzeugt, und jeder Session-Thread wird beim Verlassen beendet. Ein abgeschaltetes Modul kostet gar nichts, da keine einzige seiner Zeilen läuft.
Was Käufer sagen
5.0 1 verifizierte Bewertung
Glades Ravage-rp.fr Excellent resource — and genuinely open where it matters Every point where this touches the rest of the server goes through one readable file in bridges/. Each one documents what it detects, what it writes, and what each target actually costs you. That meant I could plug the clothing store into an inventory system it was never designed for — clothing as real items in dedicated equipment slots — without touching a single encrypted file. I wrapped the inventory bridge, translated names and metadata on the way through, and everything else kept working.
EMPFOHLEN Avenida TeamBarber shop
Ein Barbershop, inszeniert wie eine Szene, mit einer Kamera, die der Spieler wirklich steuert. Der Charakter kommt herein, setzt sich, und der Barber legt los, während eine Orbit-Kamera den Kopf ins Bild rückt. Haare, Bart, Overlays und der komplette Satz an Skin-Details, live am Charakter zu sehen, bevor ein einziger Dollar ausgegeben ist.
EMPFOHLEN Avenida TeamClothing store
Ein Kleidungsladen mit gespeicherten Outfits, Firmen-Garderoben und einem Editor, der den Katalog direkt im Spiel bepreist. Jede Komponente und jedes Prop, Stück für Stück gekauft oder als ganzer Look, mit einem serverseitigen Register, das verhindert, dass jemand etwas trägt, wofür er nie bezahlt hat.
EMPFOHLEN Avenida TeamTattoo shop
Der komplette Tattoo-Katalog des Spiels, mit Warenkorb und einem Stuhl, in den du dich wirklich setzt. 1615 Motive aus 26 DLC-Collections, live an deinem Charakter zu sehen, während du sie hinzufügst, in einem Rutsch bezahlt. Laser-Entfernung inklusive, und ein Artist, der hereinkommt und die Arbeit erledigt.