Jak dodać samochody addon do serwera FiveM: pliki stream i data
Dodaj samochody addon do FiveM krok po kroku: folder stream, vehicles.meta, carvariations.meta, carcols.meta, handling.meta, linie data_file fxmanifest, addon vs replace.
Masz paczkę samochodów, którą chcesz na swoim serwerze, a folder zawiera pliki takie jak .yft, .ytd i kilka plików .meta. Ten poradnik wyjaśnia, gdzie trafia każdy plik, co fxmanifest.lua potrzebuje i jak spawować samochód, z różnicą między samochodami addon i replace.
Co zawiera packa samochodów addon
Samochód przychodzi w dwóch rodzajach plików:
- Pliki modelu i tekstury, które trafiają do folderu
stream:mycar.yft(model),mycar_hi.yft(model wysokiej szczegółowości),mycar.ytd(tekstury) i czasami pliki.ydrlub.ytyp. - Pliki danych, które trafiają do folderu
data:vehicles.meta,carvariations.meta,carcols.metaihandling.meta, i czasamivehiclelayouts.meta.
Pierwszy zestaw to to, jak wygląda samochód, drugi zestaw to co jest: jego nazwa, kolory, handling i miejsca siedzenia.
Struktura foldera
Utwórz jeden zasób dla samochodu lub jeden dla całej paczki:
resources/[cars]/mycar/
fxmanifest.lua
stream/
mycar.yft
mycar_hi.yft
mycar.ytd
data/
vehicles.meta
carvariations.meta
carcols.meta
handling.metaPliki w stream są wysyłane do graczy automatycznie. Nie wymieniasz ich w manifeście. Pliki w data nie są strumieniowane, a manifest musi je zadeklarować.
fxmanifest.lua
fx_version 'cerulean'
game 'gta5'
files {
'data/vehicles.meta',
'data/carvariations.meta',
'data/carcols.meta',
'data/handling.meta',
}
data_file 'HANDLING_FILE' 'data/handling.meta'
data_file 'VEHICLE_METADATA_FILE' 'data/vehicles.meta'
data_file 'CARCOLS_FILE' 'data/carcols.meta'
data_file 'VEHICLE_VARIATION_FILE' 'data/carvariations.meta'Blok files {} udostępnia pliki klientowi gry. Każda linia data_file mówi grze, jaki typ ma plik. Liczą się dwie zasady:
- Każdy plik potrzebuje obu: jednego wpisu w
filesi jednej liniidata_filez poprawnym typem. - Packa z wieloma samochodami często ma folder
datana samochód. Możesz użyć wzorca, takiego jak'data/**/*.meta'wfiles {}, ale liniedata_filedla tych plików muszą nadal być napisane, jeden na typ, a linie typów akceptują ten sam wzorzec.
files { 'data/**/*.meta' }
data_file 'HANDLING_FILE' 'data/**/handling.meta'
data_file 'VEHICLE_METADATA_FILE' 'data/**/vehicles.meta'
data_file 'CARCOLS_FILE' 'data/**/carcols.meta'
data_file 'VEHICLE_VARIATION_FILE' 'data/**/carvariations.meta'Jeśli packa ma też vehiclelayouts.meta, zadeklaruj to też, z data_file 'VEHICLE_LAYOUTS_FILE' 'data/vehiclelayouts.meta'.
Uruchom go i spawuj go
W server.cfg, dodaj zasób:
ensure mycarNazwa folderu zasobu i nazwa ensure muszą się zgadzać. Jeśli używasz folderu w nawiasach, takiego jak [cars], ensure [cars] uruchamia wszystko wewnątrz niego.
Nazwa spawnu to modelName w vehicles.meta:
<Item>
<modelName>mycar</modelName>
<txdName>mycar</txdName>
<handlingId>MYCAR</handlingId>
...
</Item>Tutaj spawniasz go za pomocą mycar. W skrypcie:
local model = joaat('mycar')
lib.requestModel(model)
local veh = CreateVehicle(model, coords.x, coords.y, coords.z, heading, true, false)lib.requestModel pochodzi z ox_lib. Bez tego, wołaj RequestModel(model) i czekaj, aż HasModelLoaded(model) będzie true. Większość menu administratora i menu txAdmin spawniają samochód z tej samej nazwy.
Wskazówka:
modelName, nazwy plików.yft/.ytditxdNamepowinny się wszystkie zgadzać. Niezgodność to pierwsza rzecz do sprawdzenia, gdy samochód się nie pojawia.
Samochody addon vs samochody replace
Samochód addon ma nową nazwę, której gra podstawowa nie używa, na przykład mycar. Potrzebuje plików danych powyżej i dodaje samochód do listy. Zarówno twój nowy samochód, jak i oryginalne samochody istnieją. To prawidłowy wybór dla prawie wszystkich samochodów dzisiaj.
Samochód replace używa nazw plików samochodu z gry podstawowej, takiego jak sultan.yft, i umieszcza je w folderze stream. FiveM następnie ładuje twoje zamiast oryginału, wszędzie tam gdzie ten samochód się pojawia, łącznie z ruchem. Zwykle nie potrzebuje vehicles.meta dla modelu, ponieważ gra już zna nazwę. Samochód replace zmienia tylko wygląd. Jeśli chcesz inny handling, potrzebujesz pasującego handling.meta z oryginalnym ID handlingu.
Nie mieszaj tych dwóch pomysłów w jednym folderze. Packa, która mieszała pliki replace i addon to powszechne źródło zdezorientowanych bugów.
Sprawdź wynik
- Uruchom serwer i przeczytaj konsolę. Błędy zasobu, takie jak brakujący plik wymieniony w
files, pojawiają się na starcie. Jeśli zasób w ogóle się nie uruchamia, zobacz couldn't start resource. - Przyłącz się i spawuj samochód. Jeśli samochód nie zostanie znaleziony, nazwa nie pasuje do
modelNamelub zasób nie jest uruchomiony. - Otwórz kolory i handling samochodu w grze, aby sprawdzić, czy pliki
carcols.metaihandling.metasą w użyciu.
Częste problemy
- Samochód nie istnieje. Sprawdź
ensure, wpisyfilesimodelName. Błąd pisowni w ścieżce wfileszatrzymuje zasób. - Samochód jest niewidoczny, biały lub ma złe tekstury. Brakuje
.ytdlub jest nazwany inaczej niż model. Zobacz oversized assets, jeśli widzisz również ostrzeżenia strumieniowania. - Samochód jeździ jak zwykły samochód.
handling.metanie jest zadeklarowany lub jegohandlingIdnie pasuje do tego wvehicles.meta. - Samochód oparty na DLC pojawia się jako zepsuty. Niektóre samochody potrzebują nowszej wersji gry. Ustaw jedno za pomocą
sv_enforceGameBuildwserver.cfg: zobacz sv_enforceGameBuild and DLC.
Lista kontrolna
| Symptom | Naprawa |
|---|---|
| Zasób się nie uruchamia | Sprawdź, czy każda ścieżka w files {} istnieje i manifest nie ma literówki |
| Samochód nie może być spawowany | Spawuj z modelName z vehicles.meta; ensure zasobu |
| Samochód jest biały lub nie ma tekstur | Sprawdź plik .ytd i jego nazwę wobec modelu |
| Samochód jeździ źle | Dodaj linię HANDLING_FILE i dopasuj handlingId |
| Brak kolorów lub złe kolory | Dodaj linie CARCOLS_FILE i VEHICLE_VARIATION_FILE |
| Oryginalny samochód się zmienił | Użyłeś nazwy replace: zmień nazwy plików i model dla addonu |
| Samochód zepsuty z modelem DLC | Podnieś wersję gry za pomocą sv_enforceGameBuild |
Szybkie odpowiedzi
Jaką nazwę używam do spawnu samochodu addon?
Wartość modelName w vehicles.meta. Jeśli mówi <modelName>mycar</modelName>, spawniasz go za pomocą mycar, co musi pasować do nazw plików .yft i .ytd.
Jaka jest różnica między samochodem addon a samochodem replace?
Samochód replace zastępuje samochód z podstawowej gry, używając jego nazw plików, więc oryginalny znika. Samochód addon ma nową unikalną nazwę i swoje własne pliki meta, i siedzi obok oryginalnych samochodów.
Mój samochód się spawnia, ale jeździ źle lub wygląda na biały. Co powinienem sprawdzić?
Zły handling wskazuje na handling.meta i jego linię data_file. Biały lub brakujący teksturę samochód wskazuje na brakujący .ytd lub nazwę, która nie pasuje do modelu.
Skrypty bez tego problemu
Chameleon Paints82 lakiery kameleon zmieniające kolor, w jednym menu — klik i gotowe.Zobacz skrypt →
Advanced BoostingBoosting pojazdów z tabletu: kontrakty od klasy D do S+, ekipy i kolejka na żywo.Zobacz skrypt →
Car BombPodkładaj, wykrywaj i rozbrajaj bomby w autach — z telefonem-detonatorem i minigrą C4.Zobacz skrypt →