/
mc-node.net →
FiveM

Hoe voeg ik addon-auto's toe aan mijn FiveM-server?

Bijgewerkt op 31/08/20264 min. leestijd
In dit artikel
  1. Addon of replace: wat is het verschil?
  2. De mapstructuur van een voertuigresource
  3. Stap 1: upload de resource via SFTP
  4. Stap 2: activeer de resource in server.cfg
  5. Stap 3: test de auto in-game
  6. De auto koopbaar maken in ESX
  7. De auto koopbaar maken in QBCore
  8. Veelvoorkomende problemen
  9. Verder lezen

GTA V heeft standaard honderden voertuigen, maar een roleplay- of raceserver onderscheidt zich pas echt met custom auto's. In deze gids installeer je een addon-voertuig op je FiveM-server: je uploadt de resource via SFTP, activeert hem in server.cfg, test hem in-game en maakt de auto daarna koopbaar in de vehicleshop van ESX of QBCore.

Addon of replace: wat is het verschil?

Custom voertuigen worden op twee manieren aangeboden. Een replace-voertuig overschrijft een bestaand GTA-model: de bestanden dragen de naam van een standaardauto (bijvoorbeeld adder.yft) en iedereen die dat model spawnt, ziet voortaan de nieuwe auto. Een addon-voertuig wordt als volledig nieuw model met een eigen spawn name aan de game toegevoegd, zonder iets te overschrijven. Addon is vrijwel altijd de betere keuze: je behoudt alle originele auto's, voorkomt conflicten tussen resources en kunt het voertuig een eigen prijs en categorie in de shop geven. Deze gids gaat daarom uit van addon-auto's.

De mapstructuur van een voertuigresource

Een addon-auto is een gewone FiveM-resource. In de map vind je meestal dit:

  • fxmanifest.lua — beschrijft de resource en verwijst naar de meta-bestanden.
  • stream/ — de modelbestanden: .yft (het 3D-model, vaak ook een _hi.yft-variant) en .ytd (de textures).
  • data/ — de meta-bestanden: vehicles.meta (modelnaam en spawngegevens), carvariations.meta (kleuren en varianten), carcols.meta (tuningopties en lichten) en handling.meta (rijgedrag). Sommige auto's hebben extra bestanden zoals vehiclelayouts.meta.

De spawn name vind je in vehicles.meta in de tag <modelName> — in deze gids gebruiken we als voorbeeld sultan3. Die naam heb je straks nodig om te spawnen en voor de shop.

Stap 1: upload de resource via SFTP

  1. Verbind met je server via SFTP met bijvoorbeeld FileZilla of WinSCP. Hoe dat werkt lees je in ons SFTP-artikel.
  2. Open de map resources van je FiveM-server. Handig is een submap tussen blokhaken, zoals resources/[cars] — mappen met blokhaken scant FiveM automatisch door.
  3. Upload de complete voertuigmap (bijvoorbeeld sultanclassic) naar die submap.
  4. Controleer dat fxmanifest.lua direct in de voertuigmap staat en niet in een extra geneste map — de meest gemaakte fout bij uitgepakte downloads.

Stap 2: activeer de resource in server.cfg

  1. Open in het MC-Node paneel het tabblad Files en open het bestand server.cfg.
  2. Voeg onderaan een regel toe: ensure sultanclassic. Gebruik hier de mapnaam van de resource, niet de spawn name.
  3. Sla het bestand op en herstart je server via het tabblad Console.

Stap 3: test de auto in-game

  1. Join je server en open je admin-menu, bijvoorbeeld vMenu of het txAdmin-menu, en kies de optie om een voertuig te spawnen.
  2. Vul de spawn name in (sultan3). Op een ESX-server met standaardcommando's werkt ook /car sultan3.
  3. Verschijnt de auto, dan draait de resource. Controleer meteen even het rijgedrag en of alle textures laden.

De auto koopbaar maken in ESX

De standaard esx_vehicleshop leest zijn aanbod uit de databasetabel vehicles.

  1. Open in het paneel het tabblad Databases en log met de daar getoonde gegevens in op het databasepaneel (phpMyAdmin).
  2. Selecteer de database van je server en open het SQL-venster.
  3. Voer deze query uit: INSERT INTO vehicles (name, model, price, category) VALUES ('Sultan RS Classic', 'sultan3', 125000, 'sports');
  4. Let op: model moet exact de spawn name zijn en de category moet bestaan in de tabel vehicle_categories.
  5. Herstart de vehicleshop-resource of de hele server; de auto staat nu bij de dealer.

De auto koopbaar maken in QBCore

QBCore gebruikt geen databasetabel maar een gedeeld configbestand.

  1. Open via het tabblad Files het bestand resources/[qb]/qb-core/shared/vehicles.lua.
  2. Voeg een nieuwe entry toe, bijvoorbeeld: { model = 'sultan3', name = 'Sultan RS Classic', brand = 'Karin', price = 125000, category = 'sports', type = 'automobile', shop = 'pdm' },
  3. De waarde shop = 'pdm' zet de auto in de standaard vehicleshop; category bepaalt onder welk tabblad hij in het shopmenu verschijnt.
  4. Herstart de server volledig via het tabblad Console — gedeelde bestanden worden alleen bij het opstarten ingeladen.

Veelvoorkomende problemen

  • Streaming-lag of onzichtbare auto's — Te grote .ytd-bestanden (4K-textures van tientallen megabytes) vullen het texturegeheugen van spelers, met lag, pop-in of onzichtbare voertuigen als gevolg. Verklein textures naar 2K of gebruik een geoptimaliseerde versie van de auto.
  • Dubbele spawn names — Twee resources met dezelfde modelName conflicteren: de auto spawnt niet of het verkeerde model verschijnt. Verwijder een van de twee resources of hernoem het model, de bestandsnamen en alle meta-verwijzingen consistent.
  • Auto verschijnt niet in de shop — Meestal is de shopcategorie vergeten of onjuist. Bij ESX moet de categorie bestaan in vehicle_categories, bij QBCore moet hij overeenkomen met de categorieën van de shopconfig. Controleer ook of de spawn name in de shop exact klopt.
  • Resource start niet — Kijk in het tabblad Console naar de foutmelding. Klopt de mapnaam in de ensure-regel en staat fxmanifest.lua direct in de voertuigmap?
  • Model not found bij het spawnen — De resource is niet gestart of je typt een verkeerde spawn name. Controleer de naam in vehicles.meta en herstart de server na wijzigingen.

Verder lezen

Werk je voor het eerst met databases? Lees dan hoe je een database aanmaakt en hoe je met je database verbindt. Blijft je server na het toevoegen van auto's traag, bekijk dan ook onze gids over serverlag. Kom je er niet uit? Open een ticket via onze supportpagina en vermeld de naam van de resource en de foutmelding uit de console.