Comment installer des voitures personnalisées (FiveM)

Comment installer des voitures personnalisées (FiveM)

C'est le guide faisant autorité et sans fioritures pour installer des voitures personnalisées sur un serveur FiveM—sans risque, correctement, et avec prêt pour la production Configurations à copier-coller. Nous aborderons les voitures supplémentaires uniques, les packs multi-voitures, la conversion de DLC solo et le câblage de véhicules dans les boutiques ESX/QBCore.


Ce dont vous aurez besoin (prérequis)

Meilleures pratiques avisées : Regroupez tous les véhicules sous un dossier de catégorie de ressources comme resources/[cars]/...Cela permet de garder votre serveur propre et vous permet ensure [cars] pour démarrer chaque pack à la fois.


Carte rapide — choisissez votre chemin


Installer une seule voiture complémentaire (le boîtier 90%)

Supposons que votre voiture porte le nom elegy et vous avez reçu des fichiers de modèles YFT/YTD et des fichiers méta de véhicules standard.

1) Créer la structure des ressources

resources/
 [cars]/
 fm_elegy/
 stream/
 elegy.yft
 elegy_hi.yft
 elegy.ytd
 data/
 handling.meta
 vehicles.meta
 carcols.meta
 carvariations.meta
 vehiclelayouts.meta (if provided)
 fxmanifest.lua
 vehicle_names.lua (optional, for in‑game display name)

Des règles qui font gagner des heures

  • Ne pas baisse .asi/.oiv Installateurs sur un serveur. Uniquement les ressources et métadonnées diffusables en streaming.
  • Gardez les modèles dans stream/, métas dans data/.
  • Les noms de fichiers sont sensibles à la casse sous Linux : ils correspondent exactement.

2) fxmanifest.lua (copier-coller)

fx_version 'cerulean'
game 'gta5'

files {
 'data/handling.meta',
 'data/vehicles.meta',
 'data/carcols.meta',
 'data/carvariations.meta',
 'data/vehiclelayouts.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'
data_file 'VEHICLE_LAYOUTS_FILE' 'data/vehiclelayouts.meta'

client_script 'vehicle_names.lua' -- optional

Note d'héritage : __resource.lua est obsolète. Si vous doit prend en charge uniquement les versions héritées, utilisez ce fichier minimal :

-- __resource.lua (legacy)
resource_manifest_version '77731fab-63ca-442c-a67b-abc70f28dfa5'

files {
 'data/handling.meta',
 'data/vehicles.meta',
 'data/carcols.meta',
 'data/carvariations.meta',
 'data/vehiclelayouts.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'
data_file 'VEHICLE_LAYOUTS_FILE' 'data/vehiclelayouts.meta'

client_script 'vehicle_names.lua'

3) Facultatif vehicle_names.lua

Certains packs ne contiennent pas d'étiquette GXT. Ajoutez-en une pour que la voiture affiche un nom clair dans l'interface utilisateur.

-- vehicle_names.lua
CreateThread(function()
 -- key must match spawn name in vehicles.meta <gameName>
 AddTextEntry('elegy', 'Elegy RH8 Custom')
end)

4) Démarrez la ressource dans server.cfg

# Start all cars inside the [cars] group
ensure [cars]

# (or) start this car only
# ensure fm_elegy

Redémarrez le serveur ou exécutez refresh + ensure fm_elegy depuis la console.

Voitures compatibles avec Gabz Lore

5) Trouvez le nom de spawn & test

Ouvrir data/vehicles.meta et trouver :

<Item type="CHandlingData">
 ...
</Item>
<!-- Look for -->
<modelName>elegy</modelName>
<gameName>elegy</gameName>
  • Votre code d'apparition est généralement le <gameName> ou <modelName> (par exemple, elegy).
  • Tester avec un outil d'administration :
    • vMenu → Générateur de véhicules → Module complémentaire → elegy
    • ou utilisez votre commande administrateur (dépend de votre menu administrateur).

Si le jeu apparaît et que les roues, les lumières et les pièces de réglage semblent correctes, vous avez terminé.


Convertir un DLC solo en ressource FiveM

De nombreuses voitures « SP uniquement » sont livrées en dlc.rpf Packs. Convertissez-les comme ceci :

  1. Ouvrir OpenIV → naviguer dans les DLC dlc.rpf.
  2. Extraire des modèles de x64/vehicles.rpf (YFT/YTD) → mettre dans stream/.
  3. Extraire les métas de common/data/ dans data/:
    • handling.meta, vehicles.meta, carcols.meta, carvariations.meta, vehiclelayouts.meta (si présent).
  4. Créer fxmanifest.lua exactement comme indiqué ci-dessus.
  5. Démarrez la ressource et testez le nom de spawn à partir de <gameName>.

Conseil: Si la voiture est équipée de kits audio personnalisés, le pack peut inclure un .awc Routage non fonctionnel côté serveur. Privilégier les packs déjà marqués. Compatible FiveM ou échanger <audioNameHash> à un kit vanille.


Ressource multi-voitures (lot)

Vous pouvez diffuser beaucoup de voitures d'une ressource unique pour simplifier la gestion.

Disposition des dossiers

resources/[cars]/vip_pack/
 stream/
 elegy.yft
 elegy_hi.yft
 elegy.ytd
 supra.yft
 supra_hi.yft
 supra.ytd
 ...
 data/
 handling.meta # merged or per‑car files
 vehicles.meta
 carcols.meta
 carvariations.meta
 fxmanifest.lua

fxmanifest.lua pour les données génériques

fx_version 'cerulean'
game 'gta5'

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'

Fusion des métas : Utiliser uniquement des fusions connues pour leur fiabilité. Dupliquer <initDatas> ou égaré <kit> entrées dans carcols.meta sont la raison #1 pour les roues noires ou les extras cassés.


Connexion aux ateliers de véhicules ESX/QBCore

Le spawning est idéal pour les tests. Pour une économie réelle, connectez les voitures à votre atelier de framework.

QBCore (exemple d'entrée)

Ajouter à qb-core/shared/vehicles.lua (ou la configuration de votre boutique) :

['elegy'] = {
 ['name'] = 'Elegy RH8',
 ['brand'] = 'Annis',
 ['model'] = 'elegy', -- spawn code
 ['price'] = 125000,
 ['category'] = 'sports',
 ['shop'] = 'pdm'
}

ESX (ajout rapide SQL)

Si votre boutique lit à partir de la base de données :

INSERT INTO vehicles (name, label, price, category) VALUES
 ('elegy', 'Elegy RH8', 125000, 'sports');

Garage et clés : Associez votre boutique à un fournisseur fiable garage et clés du véhicule script pour que les joueurs conservent la propriété à travers les redémarrages :

Contrôle et réglage de la voiture : Pour le contrôle et le réglage des fenêtres/portes/lumières/sièges par immersion :


Liste de contrôle des performances et de la sécurité

L’installation ne représente que la moitié du travail.gardez-le rapide et stable.

  • Budgets de textures : Garder .ytd Moins de 16 Mo ; privilégiez les textures de 1 000 à 2 000 %. Réduisez la résolution des livrées lourdes dans OpenIV.
  • LOD du modèle : Assurez-vous que les voitures ont des LOD (_hi.yft + base). LODs manquants → grosses baisses de FPS dans le trafic.
  • UV des roues/pneus : Les roues noires signifient généralement qu'elles manquent carcols.meta ou de mauvais identifiants de matériel : corrigez la méta avant de blâmer ELS.
  • Conflits d'apparition : Si votre <gameName> correspond à un véhicule vanille, renomme le modèle et toutes les références de manière cohérente.
  • Ordre de diffusion : Ne vous fiez pas aux astuces d'ordre de chargement. Mettez toutes les métas dans la même ressource qui diffuse le modèle.
  • Utilisez Resmon: Après chaque installation, conduisez pendant 1 à 2 minutes et regardez resmon pour les pointes. Guide : https://fivemx.com/how-to-use-resmon-in-fivem-optimize-resources/
  • Vider le cache du client après les gros packs si les joueurs signalent des voitures invisibles : https://fivemx.com/how-to-clear-fivem-cache/

Dépannage (solutions rapides)

La voiture n'apparaît pas

  • Code d'apparition incorrect. Ouvrir vehicles.meta et prendre <gameName>.
  • La ressource n'a pas démarré. Vérifier txAdmin → Live Console pour les erreurs ; exécuter ensure fm_elegy.

Les roues sont noires / livrées cassées

  • Manquant carcols.meta/carvariations.meta ou des fusions incorrectes. Ajoutez à nouveau les kits et modkits corrects.

Le jeu plante au spawn

  • Textures en surpoids ou os manquants. Réduire l'échelle .ytd et confirmer la base/_hi la paire existe.

L'intérieur ou les cadrans ne fonctionnent pas

Les noms s'affichent comme NULL

  • Ajouter un vehicle_names.lua avec AddTextEntry('SPAWN', 'Nice Name').

Conseil de pro : gardez les voitures organisées

  • Mettre tous les véhicules sous [cars] et les packs de noms avec un préfixe, par exemple, fm_fm_civ_sports, fm_pd_fleet.
  • Gardez une simplicité CHANGELOG.md à l'intérieur de chaque pack pour votre futur.
  • Éviter de mélanger ELS packs conçus pour SP, sauf si l'auteur fournit une variante FiveM.

Exemple : pack de voitures prêtes à être produites que vous pouvez déposer

Dupliquez ce modèle pour chaque pack de voiture que vous ajoutez.

fxmanifest.lua

fx_version 'cerulean'
game 'gta5'

files {
 'data/handling.meta',
 'data/vehicles.meta',
 'data/carcols.meta',
 'data/carvariations.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'

server.cfg

# FiveM car packs
ensure [cars]

data/vehicles.meta (extrait minimal juste pour montrer où se trouve le nom du spawn)

<CVehicleModelInfo__InitDataList>
 <initDatas>
 <Item>
 <modelName>elegy</modelName>
 <txdName>elegy</txdName>
 <handlingId>elegy</handlingId>
 <gameName>elegy</gameName>
 <vehicleMakeName>ANNIS</vehicleMakeName>
 <plateType>VPT_DEFAULT</plateType>
 <vehicleClass>VC_SPORT</vehicleClass>
 <flags>440010</flags>
 </Item>
 </initDatas>
</CVehicleModelInfo__InitDataList>

vehicle_names.lua (facultatif)

CreateThread(function()
 AddTextEntry('elegy', 'Elegy RH8')
end)

Transformez les installations en contenu et en rétention (prochaines étapes)


FAQ

Cela fonctionne-t-il avec OneSync et les gros serveurs ?
Oui, les véhicules diffusés en streaming sont la norme. Veillez à ce que la taille des textures soit raisonnable et surveillez-les. resmon.

Où puis-je me procurer des voitures de haute qualité ?
De la part des créateurs qui expédient des packs prêts pour FiveM — ou parcourez notre catalogue soigneusement sélectionné : https://fivemx.com/fivem-cars/.

Puis-je regrouper des flottes de police et des civils ?
Oui. Organiser par rôle (fm_pd_fleet, fm_civ_sports) afin que vous puissiez activer/désactiver les packs rapidement.

Dois-je définir une version de jeu spécifique ?
Uniquement si le mod s'appuie sur des fonctionnalités plus récentes. L'auteur le note généralement. Si un élément est défectueux, testez-le sur une version plus récente et réessayez.


Copier-coller le résumé (liste de contrôle)

  1. Créer resources/[cars]/<pack>/ avec stream/ + data/.
  2. Déposez YFT/YTD dans stream/; métas dans data/.
  3. Ajouter fxmanifest.lua avec files { ... } + data_file ... lignes.
  4. ensure [cars] (ou le pack) dans server.cfg.
  5. Trouver <gameName> dans vehicles.meta et apparaître via vMenu/admin.
  6. Fil vers la boutique (ESX SQL ou QBCore table) et associer avec garage/clés.
  7. Test Resmon, vérification du budget de texture, et c'est fait.

Vous êtes prêt. Si vous voulez un chemin encore plus rapide, prenez un pack serveur pré-conçu et commencez à personnaliser : https://fivemx.com/fivem-servers/

Packs de voitures payants

Produits par catégorie

Voitures additionnelles versus de remplacement

Un véhicule add-on introduit un modèle de spawn séparé et conserve le véhicule GTA d'origine intact. Un véhicule de remplacement réutilise un nom de modèle existant et remplace ce véhicule de base. Préférez les add-ons lorsque vous souhaitez plusieurs véhicules personnalisés sans modifier la flotte par défaut ; utilisez les remplacements uniquement lorsque le remplacement de ce modèle de base exact est intentionnel.

Vérifications de paquets et de dossiers sécurisés

  • Gardez les ressources de véhicules regroupées sous un dossier tel que resources/[cars]/, mais démarrez chaque ressource réelle ou utilisez ensure [cars] uniquement après avoir vérifié que le serveur résout le groupe correctement.
  • Inspectez l'archive fournie fxmanifest.lua, les fichiers de modèles diffusés et chaque fichier de métadonnées référencé. Ne remplacez pas un manifeste fonctionnel par un modèle générique sans comparer ses fichiers et types de données déclarés.
  • Vérifiez les noms de modèle et de spawn, la casse des noms de fichiers et les références de métadonnées pour les doublons avant de combiner les packs. Une collision de noms peut charger le mauvais véhicule même lorsque la ressource démarre sans erreur évidente.
  • Ajoutez une ressource à la fois, redémarrez sur le serveur de test, générez chaque modèle ajouté et inspectez à la fois les consoles serveur et client. Revenez à la dernière ressource si les modèles, les textures, la manipulation ou les entrées de magasin échouent.