/
mc-node.net →
FiveM

Jak dodać samochody addon do serwera FiveM?

Zaktualizowano 31/08/20264 min czytania
W tym artykule
  1. Addon czy replace: jaka jest różnica?
  2. Struktura folderów zasobu z pojazdem
  3. Krok 1: wgraj zasób przez SFTP
  4. Krok 2: aktywuj zasób w server.cfg
  5. Krok 3: przetestuj auto w grze
  6. Jak udostępnić auto do kupienia w ESX
  7. Jak udostępnić auto do kupienia w QBCore
  8. Częste problemy
  9. Warto przeczytać

GTA V ma domyślnie setki pojazdów, ale serwer roleplay lub wyścigowy naprawdę wyróżnia się dopiero dzięki customowym autom. W tym poradniku zainstalujesz pojazd addon na swoim serwerze FiveM: wgrasz zasób przez SFTP, aktywujesz go w server.cfg, przetestujesz w grze, a następnie udostępnisz auto do kupienia w sklepie pojazdów ESX lub QBCore.

Addon czy replace: jaka jest różnica?

Customowe pojazdy występują w dwóch wariantach. Pojazd replace nadpisuje istniejący model GTA: pliki noszą nazwę standardowego auta (na przykład adder.yft) i każdy, kto zespawnuje ten model, zobaczy od tej pory nowy samochód. Pojazd addon jest dodawany do gry jako zupełnie nowy model z własnym spawn name, bez nadpisywania czegokolwiek. Addon to niemal zawsze lepszy wybór: zachowujesz wszystkie oryginalne auta, unikasz konfliktów między zasobami i możesz nadać pojazdowi własną cenę oraz kategorię w sklepie. Ten poradnik opiera się więc na autach addon.

Struktura folderów zasobu z pojazdem

Auto addon to zwykły zasób FiveM. W folderze znajdziesz zazwyczaj:

  • fxmanifest.lua — opisuje zasób i wskazuje pliki meta.
  • stream/ — pliki modelu: .yft (model 3D, często też wariant _hi.yft) i .ytd (tekstury).
  • data/ — pliki meta: vehicles.meta (nazwa modelu i dane spawnu), carvariations.meta (kolory i warianty), carcols.meta (opcje tuningu i światła) oraz handling.meta (model jazdy). Niektóre auta mają dodatkowe pliki, na przykład vehiclelayouts.meta.

Spawn name znajdziesz w pliku vehicles.meta w tagu <modelName> — w tym poradniku używamy przykładu sultan3. Ta nazwa przyda ci się za chwilę do spawnowania i do sklepu.

Krok 1: wgraj zasób przez SFTP

  1. Połącz się z serwerem przez SFTP, na przykład za pomocą FileZilla lub WinSCP. Jak to zrobić, przeczytasz w naszym artykule o SFTP.
  2. Otwórz folder resources swojego serwera FiveM. Wygodnie jest użyć podfolderu w nawiasach kwadratowych, na przykład resources/[cars] — foldery w nawiasach kwadratowych FiveM skanuje automatycznie.
  3. Wgraj cały folder pojazdu (na przykład sultanclassic) do tego podfolderu.
  4. Sprawdź, czy fxmanifest.lua leży bezpośrednio w folderze pojazdu, a nie w dodatkowym zagnieżdżonym folderze — to najczęstszy błąd przy rozpakowanych paczkach.

Krok 2: aktywuj zasób w server.cfg

  1. W panelu MC-Node otwórz zakładkę Files i otwórz plik server.cfg.
  2. Dodaj na dole linię: ensure sultanclassic. Użyj tutaj nazwy folderu zasobu, a nie spawn name.
  3. Zapisz plik i zrestartuj serwer przez zakładkę Console.

Krok 3: przetestuj auto w grze

  1. Wejdź na serwer, otwórz menu administratora, na przykład vMenu lub menu txAdmin, i wybierz opcję spawnowania pojazdu.
  2. Wpisz spawn name (sultan3). Na serwerze ESX z domyślnymi komendami działa też /car sultan3.
  3. Jeśli auto się pojawi, zasób działa. Od razu sprawdź model jazdy i czy wszystkie tekstury się ładują.

Jak udostępnić auto do kupienia w ESX

Domyślny esx_vehicleshop pobiera ofertę z tabeli bazy danych vehicles.

  1. W panelu otwórz zakładkę Databases i zaloguj się do panelu bazy danych (phpMyAdmin) danymi, które tam widzisz.
  2. Wybierz bazę danych swojego serwera i otwórz okno SQL.
  3. Wykonaj to zapytanie: INSERT INTO vehicles (name, model, price, category) VALUES ('Sultan RS Classic', 'sultan3', 125000, 'sports');
  4. Uwaga: model musi być dokładnie taki sam jak spawn name, a category musi istnieć w tabeli vehicle_categories.
  5. Zrestartuj zasób sklepu pojazdów albo cały serwer; auto jest już dostępne u dealera.

Jak udostępnić auto do kupienia w QBCore

QBCore nie używa tabeli bazy danych, tylko współdzielonego pliku konfiguracyjnego.

  1. Przez zakładkę Files otwórz plik resources/[qb]/qb-core/shared/vehicles.lua.
  2. Dodaj nowy wpis, na przykład: { model = 'sultan3', name = 'Sultan RS Classic', brand = 'Karin', price = 125000, category = 'sports', type = 'automobile', shop = 'pdm' },
  3. Wartość shop = 'pdm' umieszcza auto w domyślnym sklepie pojazdów; category decyduje, w której zakładce pojawi się w menu sklepu.
  4. Zrestartuj serwer w całości przez zakładkę Console — pliki współdzielone są wczytywane tylko przy starcie.

Częste problemy

  • Lagi streamingu lub niewidzialne auta — Zbyt duże pliki .ytd (tekstury 4K ważące dziesiątki megabajtów) zapełniają pamięć tekstur graczy, co kończy się lagami, pop-inem lub niewidzialnymi pojazdami. Zmniejsz tekstury do 2K albo użyj zoptymalizowanej wersji auta.
  • Zduplikowane spawn name — Dwa zasoby z tym samym modelName wchodzą w konflikt: auto się nie spawnuje albo pojawia się niewłaściwy model. Usuń jeden z zasobów albo konsekwentnie zmień nazwę modelu, nazwy plików i wszystkie odwołania w plikach meta.
  • Auto nie pojawia się w sklepie — Najczęściej zapomniano o kategorii sklepu albo jest ona błędna. W ESX kategoria musi istnieć w vehicle_categories, w QBCore musi odpowiadać kategoriom z konfiguracji sklepu. Sprawdź też, czy spawn name w sklepie dokładnie się zgadza.
  • Zasób się nie uruchamia — Sprawdź komunikat błędu w zakładce Console. Czy nazwa folderu w linii ensure się zgadza i czy fxmanifest.lua leży bezpośrednio w folderze pojazdu?
  • Model not found przy spawnowaniu — Zasób nie jest uruchomiony albo wpisujesz błędny spawn name. Sprawdź nazwę w vehicles.meta i zrestartuj serwer po zmianach.

Warto przeczytać

Pierwszy raz pracujesz z bazami danych? Przeczytaj, jak utworzyć bazę danych i jak połączyć się z bazą danych. Jeśli po dodaniu aut serwer nadal działa wolno, zajrzyj też do naszego poradnika o lagach serwera. Nadal masz problem? Otwórz ticket przez naszą stronę pomocy i podaj nazwę zasobu oraz komunikat błędu z konsoli.