Tutorial 2026-04-10

FiveM Entwicklung von Tattoo- und Friseursalons

TDYSKY

TDYSKY

Gründer & Lead Developer bei Agency Scripts

Komponenten für das Erscheinungsbild von Peds verstehen

Der Aufbau eines Tattoo- und Friseurladensystems in FiveM erfordert ein solides Verständnis dafür, wie GTA V mit dem Erscheinungsbild von Ped (Charakter) umgeht. Das Erscheinungsbildsystem ist in mehrere Komponentenkategorien unterteilt: Kopfüberlagerungen für Merkmale wie Hautunreinheiten, Gesichtsbehaarung, Augenbrauen und Make-up, zeichnbare Komponenten für Kleidung und Frisuren sowie Tattoo-Dekorationen, die über dem Ped-Modell liegen. Jeder Komponententyp verwendet unterschiedliche native Funktionen und folgt seinem eigenen Indexierungssystem. Kopfüberlagerungen verwenden die Indizes 0–12, um Merkmale wie Hautunreinheiten (0), Gesichtsbehaarung (1), Augenbrauen (2), Alterung (3), Make-up (4), Rouge (5) und Lippenstift (8) zu steuern. Frisuren werden über das Zeichenkomponentensystem bei Index 2 für Kopfhaar festgelegt. Tattoos verwenden ein völlig separates Dekorationssystem mit Sammlungsnamen und Hashwerten. Bevor du die Benutzeroberfläche erstellen, musst du alle verfügbaren Optionen für jede Komponente zuordnen, einschließlich der Anzahl der für das aktuelle Ped-Modell verfügbaren Variationen, da für männliche und weibliche Charaktere unterschiedliche Sätze verfügbarer Stile verfügbar sind. Verwende GetNumHeadOverlayValues(overlayIndex), um abzufragen, wie viele Optionen für jeden Overlay-Typ zur Laufzeit vorhanden sind.

Kamerasystem für die Charaktervorschau

Ein großartiges Friseur- und Tattoo-Erlebnis hängt davon ab, dass der Spieler in Echtzeit sehen kann, was er auswählt. Erstelle ein benutzerdefiniertes Kamerasystem, das sich auf den relevanten Körperteil konzentriert, während der Spieler durch die Optionen blättert. Zoome beim Bearbeiten von Haaren mit der Kamera auf den Kopf. Wenn du Tätowierungen für den Oberkörper auswählen, ziehe die Kamera nach hinten, um den Oberkörper zu zeigen. Wenn du an Beintattoos arbeiten, positioniere die Kamera so, dass sie den Unterkörper erfasst. Verwende geskriptete Kamera-Natives, um sanfte Übergänge zwischen Blickwinkeln zu schaffen, wenn der Player zwischen den Kategorien wechselt. Hier ist ein Kameraverwaltungssystem, das mehrere Zoomstufen und Körperfokusbereiche verwaltet:

Füge Unterstützung für die Rotation von Maus- oder Analogsticks hinzu, damit Spieler ihren Charakter drehen können, während sie Änderungen in der Vorschau anzeigen. Erfasse Mausbewegungen, wenn der NUI sie nicht verbraucht, und wendest du sie als Kursrotation auf den Player-Ped an. Dadurch können Spieler ihr Tattoo aus mehreren Blickwinkeln betrachten, bevor sie es kaufen, was das Einkaufserlebnis deutlich verbessert. Friere den Spieler-Ped während der Anpassungssitzung an Ort und Stelle ein und spielst du eine Leerlaufanimation ab, damit der Charakter beim Surfen des Spielers natürlich aussieht.

Anpassung von Haaren und Bart

Bei der Haar- und Bartanpassung werden die Zeichenkomponenten- bzw. Kopfüberlagerungssysteme verwendet. Frisuren werden mit SetPedComponentVariation unter Verwendung von Komponentenindex 2 (Haar) und Index 1 (Textur-/Farbvariation) festgelegt. Die Haarfarbe wird separat mit SetPedHairColor angewendet, das einen Primärfarbindex und einen Highlight-Farbindex verwendet. Bartstile verwenden das Kopfüberlagerungssystem bei Index 1 mit einem Deckkraftwert, der steuert, wie dick oder dünn das Gesichtshaar erscheint. Erstelle den NUI, um Miniaturansichten oder Namen für jeden verfügbaren Stil anzuzeigen und das Ped in Echtzeit zu aktualisieren, während der Spieler durch die Optionen klickt. Hier ist die Lua-Logik zum Anwenden von Haar- und Bartänderungen mit Echtzeitvorschau:

Die NUI-Schnittstelle sollte Haarfarben als visuelle Palette und nicht als nummerierte Indizes darstellen und die internen Farbindizes von GTA ihren tatsächlichen RGB-Darstellungen zuordnen. Füge einen Schieberegler für die Deckkraft des Bartes hinzu, mit dem Spieler die Dicke ihrer Gesichtsbehaarung von leichten Stoppeln bis hin zu einem vollen, dicken Bart fein einstellen können. Speichere das vorherige Erscheinungsbild des Spielers, bevor du das Friseurmenü öffnen, damit du alle Änderungen rückgängig machen können, wenn er auf „Abbrechen“ klickt, und verhindern du so, dass versehentliche Änderungen den Spieler Geld kosten.

Tattoo-Overlay-System

Tätowierungen in GTA V verwenden das Dekorationssystem, das mithilfe von Sammlungs- und Overlay-Hash-Paaren Textur-Overlays auf das Ped-Modell legt. Jedes Tattoo wird durch einen Sammlungsnamen (wie „mpairraces_overlays“) und einen Overlay-Namen (wie „MP_Airraces_Tattoo_000_M“) definiert, die zusammen das spezifische Tattoo-Asset identifizieren. Trage Tätowierungen mit AddPedDecorationFromHashes auf und entfernst du alle Tätowierungen mit ClearPedDecorations. Der knifflige Teil besteht darin, dass es keine Möglichkeit gibt, ein einzelnes Tattoo zu entfernen. Wenn ein Spieler also ein Tattoo entfernen möchte, muss er alle Dekorationen entfernen und alles außer dem entfernten erneut anbringen. Das bedeutet, dass du in deinem Datenmodell eine vollständige Liste der aktuellen Tattoos des Spielers pflegen müssen. So verwalte die Tattoo-Sammlung und -Anwendung:

Der Tattoo-Katalog in GTA V enthält Hunderte von Einträgen, die über mehrere DLC-Sammlungen verteilt sind. Organisiere sie in deiner Konfiguration nach Körperzone, damit der NUI nach Bereich filtern kann. Überprüfe für jedes Tattoo, ob basierend auf dem Ped-Modell des Spielers die männliche oder weibliche Variante verwendet werden soll, da die meisten Tattoos separate Asset-Namen haben, die auf _M oder _F enden. Zeige eine Vorschau an, wenn der Spieler mit der Maus über ein Tattoo im Katalog fährt, und ladest du ihn erst auf, wenn er die Auswahl bestätigt.

Make-up- und Gesichtsbemalungssystem

Makeup nutzt das Head-Overlay-System für mehrere Indizes: Rouge (5), Lippenstift (8) und Brusthaar- oder Teint-Overlays für zusätzliche Effekte. Jeder Make-up-Typ verfügt über mehrere Stiloptionen und einen Deckkraft-Schieberegler, der die Intensität steuert. Erstelle im Friseursalon NUI einen Make-up-Bereich, der jede Kategorie mit visuellen Farbfeldern präsentiert, die die verfügbaren Farben zeigen. Das Farbsystem für Make-up verwendet SetPedHeadOverlayColor mit einem Farbtypparameter: Typ 0 für Standardfarben, Typ 1 für Haarfarben (wird für Bärte und Augenbrauen verwendet) und Typ 2 für Make-up-Farben. Make-up verwendet speziell den Farbtyp 2, der eine Palette kosmetischer Farben bietet, darunter verschiedene Hauttöne, Rottöne, Rosatöne und dramatische Farben. Füge für jede Make-up-Komponente einen Deckkraftregler hinzu, damit Spieler subtile natürliche Looks oder gewagte, dramatische Stile erzielen können. Speichere alle Make-up-Einstellungen zusammen mit den Aussehensdaten des Spielers, damit sie zwischen den Sitzungen erhalten bleiben, und bietest du eine Spiegelinteraktion im Zuhause des Spielers an, bei der er das Make-up anpassen kann, ohne den Laden aufzusuchen.

Zahlungssystem und Preise

Das Zahlungssystem muss verfolgen, was der Spieler während seiner Sitzung geändert hat, und die Gesamtkosten basierend auf den erbrachten Dienstleistungen berechnen. Wenn ein Spieler das Shop-Menü öffnet, mache einen Schnappschuss seines aktuellen Erscheinungsbilds. Verfolge beim Vornehmen von Änderungen jede Änderung in einem Sitzungskorb, in dem die Gesamtsumme erfasst wird. Wenn sie bestätigen und den Vorgang beenden, berechne ihnen den Gesamtbetrag für alle vorgenommenen Änderungen. Wenn sie abbrechen, kehre zum Snapshot zurück. Führe gestaffelte Preise ein, bei denen einfache Haarschnitte weniger kosten als Premium-Frisuren und bei denen die Tattoo-Preise je nach Größe und Komplexität variieren. Hier ist ein Sitzungsverfolgungs- und Zahlungssystem:

Überprüfe auf der Serverseite, ob der Spieler über ausreichende Mittel verfügt, bevor du die Änderungen am Erscheinungsbild vornehmen. Wenn die Zahlung fehlschlägt, benachrichtige den Kunden, damit er die Änderungen rückgängig machen kann. Erwäge das Anbieten von Pauschalangeboten, bei denen ein Haar- und Bartschnitt zusammen weniger kostet als die Summe der einzelnen Dienstleistungen, was den Spielern einen Anreiz gibt, das gesamte Leistungsspektrum bei einem einzigen Besuch zu nutzen.

Outfit-Einsparung und Garderobenintegration

Erweitern das Friseur- und Tätowiersystem um eine Funktion zum Speichern von Outfits, mit der Spieler komplette Erscheinungsbildkonfigurationen als benannte Voreinstellungen speichern können. Jede Voreinstellung erfasst den gesamten Erscheinungsbild des Spielers, einschließlich Frisur und -farbe, Gesichtsbehaarung, Make-up und aller aktiven Tätowierungen. Spieler können dann zwischen gespeicherten Looks in ihrer Garderobe zu Hause oder durch einen erneuten Besuch im Shop wechseln. Speichere Outfits in der Datenbank, die mit der Bürger-ID des Spielers verknüpft ist, mit einem JSON-Blob, der alle Aussehensdaten enthält. Begrenze die Anzahl der gespeicherten Outfits pro Spieler oder bietest du zusätzliche Slots als Premium-Feature an. Bei der Garderobeninteraktion beim Spieler zu Hause sollte ein einfaches NUI-Panel angezeigt werden, das die gespeicherten Outfits auflistet, mit einer Vorschaufunktion, die jeden Look vorübergehend anwendet, damit der Spieler ihn sehen kann, bevor er sich entscheidet. Dadurch wird das persönliche Erscheinungsbildsystem mit dem Wohnsystem verknüpft, sodass beide Merkmale zusammen wertvoller sind als einzeln.

Shop-Standorte und NPC Barber-Integration

Definiere mehrere Shop-Standorte auf der Karte, jeder möglicherweise mit unterschiedlichen verfügbaren Dienstleistungen und Preismultiplikatoren. Ein preisgünstiger Friseur auf der Südseite bietet möglicherweise einfache Schnitte zu niedrigen Preisen an, während ein High-End-Salon in Vinewood höhere Preise verlangt, aber exklusive Stile und Farben anbietet. Verwende das Zielsystem oder Näherungsmarkierungen, um das Shop-Menü auszulösen, wenn sich ein Spieler dem Friseurstuhl oder der Tattoo-Station nähert. Setze den Spieler mithilfe von TaskStartScenarioInPlace mit einem Sitzszenario für Friseurläden auf den Stuhl oder lass du ihn für Tattoo-Sitzungen an einer bestimmten Stelle stehen. Bringe an jedem Ort NPC-Friseure oder Tätowierer mit geeigneten Ped-Modellen hervor und weisst du ihnen Leerlaufanimationen zu, die sie so aussehen lassen, als würden sie arbeiten. Wenn ein Spieler mit dem Shop interagiert, kann der NPC eine funktionierende Animation in der Nähe des Spielers abspielen, um die ausgeführte Dienstleistung zu simulieren und so das Erlebnis visuell zu vertiefen. Nach der Sitzung kehrt der NPC in seine Ruheposition zurück. Verfolge die Umsätze pro Laden in der Datenbank, um das spielereigene Ladenspiel zu unterstützen, bei dem Unternehmer ihre eigenen Friseurläden oder Tattoo-Studios kaufen und verwalten, Preise festlegen und NPC-Mitarbeiter oder sogar andere Spieler als Angestellte einstellen.

Artikel teilen

Bereit, deinen Server aufzuwerten?

Schau dir unsere Premium FiveM Scripts im Agency Scripts Store an oder tritt unserer Discord-Community für Support und Updates bei.