Fehler: CPed::SetVariation: ungültige Variation (slotId, drawblId, texId)
Ein Script wollte einem Charakter Kleidung anziehen, die er nicht hat — meist gespeicherte Outfit-Daten von einem anderen Charaktermodell.
Mach das zuerst
Für sich harmlos. Wenn jemandes Outfit falsch aussieht, stammt sein gespeichertes Aussehen von einem anderen Modell.
Was es bedeutet
Etwas wollte einem Ped ein Kleidungsteil oder eine Textur anziehen, die es für sein Modell nicht gibt. Die drei Zahlen sind die ganze Meldung:
• slotId — welcher Komponenten-Slot (0 Gesicht, 1 Maske, 3 Arme, 4 Beine, 6 Schuhe, 8 Unterhemd, 11 Oberteil und so weiter)
• drawblId — welches Drawable in diesem Slot
• texId — welche Texturvariante dieses Drawables
Das Spiel lehnt ab und lässt den Ped in dem, was er anhatte. Nichts stürzt ab, also füllt das die Konsole, statt etwas zu zerbrechen — aber ein Slot, der stillschweigend nicht greift, ist meist ein Garderoben- oder Addon-Ped-Problem, das man besser behebt als stummschaltet.
Was es auslöst
Sortiert danach, wie oft es die Antwort ist.
- 1
Das Drawable oder die Textur gibt es für dieses Modell nicht
Jedes Ped-Modell hat pro Slot eine andere Anzahl. Eine für
mp_m_freemode_01gültige Zahl kann für einmp_f_freemode_01oder einen Addon-Ped außerhalb liegen — die Zahlen sind nicht übertragbar. - 2
Kleidungsdaten, die für ein anderes Modell gespeichert wurden
Der Spieler hat das Modell gewechselt (männlich zu weiblich, Freemode zu einem Addon-Ped), und alte Aussehensdaten wurden auf das neue angewendet. Das ist mit Abstand die häufigste Variante und feuert beim Spawnen gleich mehrere davon.
- 3
Addon-Kleidung, die nicht gestreamt wird
Das Garderobenmenü listet ein Drawable, das der Server gar nicht streamt — der Index existiert in der Konfiguration und nicht im Spiel.
- 4
Die Komponente wurde angewendet, bevor das Modell fertig geladen war
Variationen auf einen Ped zu setzen, dessen Modell noch nicht fertig geladen war, ergibt einen Ped, der noch keine Variationen zur Auswahl hat.
- 5
Von der falschen Basis aus zählen
GetNumberOfPedDrawableVariationsgibt eine ANZAHL zurück; gültige Drawables reichen von 0 bis Anzahl-1. Die Anzahl selbst zu übergeben ist um eins daneben und erzeugt genau das, jedes Mal im letzten Slot.
Wie du erkennst, welcher deiner ist
Frag das Spiel, was für diesen Ped gültig ist, direkt vor dem Aufruf:
local ped = PlayerPedId()
print(GetEntityModel(ped),
GetNumberOfPedDrawableVariations(ped, 11),
GetNumberOfPedTextureVariations(ped, 11, drawable))Ist die Zahl, die du setzt, gleich hoch oder höher als die gemeldete, liegt sie für dieses Modell außerhalb des Bereichs. Feuert es beim Spawnen im Schwall, sind es gespeicherte Daten eines anderen Modells.
Wo du nachsehen musst
Was das Aussehen anwendet: die Kleidungs- oder Skin-Resource und der gespeicherte Aussehens-Datensatz dieses Spielers.
Wie du es behebst
Begrenz auf das, was das Modell wirklich hat, und überspring statt zu erzwingen:
local function setComponent(ped, slot, drawable, texture)
local maxDrawable = GetNumberOfPedDrawableVariations(ped, slot)
if drawable >= maxDrawable then return end -- 0..max-1
local maxTexture = GetNumberOfPedTextureVariations(ped, slot, drawable)
if texture >= maxTexture then texture = 0 end
SetPedComponentVariation(ped, slot, drawable, texture, 0)
endUnd speicher das Modell zusammen mit dem Aussehen, damit Daten eines Peds nie auf einen anderen angewendet werden:
if saved.model ~= GetEntityModel(ped) then
return applyDefaultAppearance(ped)
endHängst du immer noch an deinem eigenen Code?
Diese Seite sagt, was dieser Fehler üblicherweise bedeutet. Füg deine Konsole in Server Fixer ein: es sortiert alles darin und sagt dir, was zuerst dran ist; und wenn du lieber nicht ranwillst, kann ORBIE das Script reparieren und dir die Resource fertig zum Einsetzen zurückgeben.
bug_reportServer Fixer öffnenFür diese Art Fehler GLB to FiveM Converter baut streambare Assets, die beim ersten Mal laden.