{"id":197388,"date":"2025-09-08T11:26:58","date_gmt":"2025-09-08T09:26:58","guid":{"rendered":"https:\/\/fivemx.com\/?p=197388"},"modified":"2026-07-31T07:34:38","modified_gmt":"2026-07-31T05:34:38","slug":"comment-installer-des-voitures-personnalisees-fivem","status":"publish","type":"post","link":"https:\/\/rpcrate.com\/fr\/how-to-install-custom-cars-fivem\/","title":{"rendered":"Installer et tester des voitures personnalis\u00e9es sur un serveur FiveM"},"content":{"rendered":"<p>To install an add-on vehicle, place its complete FiveM resource in your server\u2019s resources folder, start that resource and spawn the model named in <code data-no-translation=\"\" translate=\"no\">vehicles.meta<\/code>. Test the vehicle before adding it to a dealership or merging it with other packs.<\/p>\n<p>Confirm the target GTA edition before installing or exporting assets. Legacy packages are not automatically Enhanced-ready; follow <a href=\"https:\/\/docs.fivem.net\/docs\/server-manual\/onboarding-guide-fivem-for-gtav-enhanced\/\">the official Enhanced asset-conversion guidance<\/a> when that is your target.<\/p>\n<h2 id=\"check-the-package-first\">Check the package first<\/h2>\n<p>Use a package you have permission to run and distribute to connecting players. Keep its original archive and README. A FiveM-ready resource normally includes a manifest plus model, texture and metadata files. A single-player <code data-no-translation=\"\" translate=\"no\">.oiv<\/code> installer or <code data-no-translation=\"\" translate=\"no\">.asi<\/code> plugin is not a server resource.<\/p>\n<p>An add-on introduces a separate model. A replacement intentionally overrides an existing model name. Check which kind you have so you do not accidentally replace the default fleet.<\/p>\n<h2 id=\"1-install-one-resource\">1. Install one resource<\/h2>\n<p>For a resource named <code data-no-translation=\"\" translate=\"no\">my_vehicle<\/code>, the manifest should be at <code data-no-translation=\"\" translate=\"no\">resources\/[cars]\/my_vehicle\/fxmanifest.lua<\/code>, not inside an extra nested extraction folder. Preserve the supplied paths and filename case. Linux hosts distinguish uppercase from lowercase.<\/p>\n<p>Keep a working author-supplied manifest. The example below only covers a package whose four named metadata files actually exist in <code data-no-translation=\"\" translate=\"no\">data\/<\/code>; other packages may need additional registrations.<\/p>\n<pre data-no-translation=\"\" translate=\"no\"><code data-no-translation=\"\" translate=\"no\">fx_version 'cerulean'\ngame 'gta5'\n\nfiles {\n    'data\/handling.meta',\n    'data\/vehicles.meta',\n    'data\/carcols.meta',\n    'data\/carvariations.meta'\n}\ndata_file 'HANDLING_FILE' 'data\/handling.meta'\ndata_file 'VEHICLE_METADATA_FILE' 'data\/vehicles.meta'\ndata_file 'CARCOLS_FILE' 'data\/carcols.meta'\ndata_file 'VEHICLE_VARIATION_FILE' 'data\/carvariations.meta'<\/code><\/pre>\n<p>Keep the supplied <code data-no-translation=\"\" translate=\"no\">.yft<\/code> models and <code data-no-translation=\"\" translate=\"no\">.ytd<\/code> textures in their stream paths. If the author supplies layouts, audio or other data files, retain their corresponding manifest entries; do not discard them to match this example.<\/p>\n<h2 id=\"2-start-the-resource\">2. Start the resource<\/h2>\n<p>Add <code data-no-translation=\"\" translate=\"no\">ensure my_vehicle<\/code> to the active <code data-no-translation=\"\" translate=\"no\">server.cfg<\/code>. On a running development server, execute these two commands separately in the FXServer console:<\/p>\n<pre data-no-translation=\"\" translate=\"no\"><code data-no-translation=\"\" translate=\"no\">refresh\nensure my_vehicle<\/code><\/pre>\n<p>Read the startup output. Resolve missing files, malformed XML or dependency errors before spawning the car. Start one new resource at a time so a failure has a clear owner.<\/p>\n<h2 id=\"3-use-the-model-name\">3. Use the model name<\/h2>\n<p>Open <code data-no-translation=\"\" translate=\"no\">vehicles.meta<\/code> and find the vehicle\u2019s <code data-no-translation=\"\" translate=\"no\">modelName<\/code>. That is the model\/spawn name. <code data-no-translation=\"\" translate=\"no\">gameName<\/code> is a display-text label and can differ. Enter the model name into your installed, authorized admin vehicle spawner.<\/p>\n<p>Inspect wheels, lights, doors, seats, liveries, tuning, collision and handling. Test with another connected player and after a reconnect. A model appearing once does not prove all its metadata works.<\/p>\n<h2 id=\"4-add-ownership-and-shop-integration\">4. Add ownership and shop integration<\/h2>\n<p>Once spawning works, follow the vehicle-shop resource\u2019s actual configuration or database schema. Framework name alone does not identify that schema. Use the same model name, the intended category and a deliberate price.<\/p>\n<p>Test purchase, key assignment, garage storage, retrieval and persistence after restart. Remove test vehicles and test purchases through the appropriate administrative tools. Back up any data changed during integration.<\/p>\n<h2 id=\"if-you-have-a-single-player-dlc\">If you have a single-player DLC<\/h2>\n<p>Inspect the archive with the appropriate authoring tool and identify its models, textures and all metadata dependencies. Conversion may involve custom audio, layouts and tuning parts beyond the four-file example. Prefer the author\u2019s FiveM instructions where available; extracting two model files is not a complete conversion.<\/p>\n<h2 id=\"troubleshoot-by-symptom\">Troubleshoot by symptom<\/h2>\n<p>If nothing spawns, verify startup and <code data-no-translation=\"\" translate=\"no\">modelName<\/code>. If the wrong car appears, look for model-name collisions across resources. For missing textures or tuning, compare metadata and streamed dependencies with the original package. For crashes, record the exact crash and test the vehicle alone on a compatible game build.<\/p>\n<p>Measure graphics\/streaming behavior in a repeatable scene with the expected number of vehicles. Client script timing in Resmon does not measure model geometry or GPU texture cost. Keep an easy rollback by retaining each tested package separately.<\/p>\n<h2 id=\"reference-documentation\">Reference documentation<\/h2>\n<p><a href=\"https:\/\/docs.fivem.net\/docs\/scripting-reference\/resource-manifest\/\">Cfx.re \u2014 resource manifest<\/a> \u00b7 <a href=\"https:\/\/docs.fivem.net\/docs\/game-references\/data-files\/\">Cfx.re \u2014 data files<\/a> \u00b7 <a href=\"https:\/\/github.com\/dexyfex\/CodeWalker\">Source: dexyfex\/CodeWalker<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Pour installer un v\u00e9hicule additionnel, placez sa ressource FiveM compl\u00e8te dans le dossier de ressources de votre serveur, d\u00e9marrez cette ressource et faites appara\u00eetre le mod\u00e8le nomm\u00e9 dans vehicles.meta. Testez le v\u00e9hicule avant de l'ajouter \u00e0 un concessionnaire ou de le fusionner avec d'autres packs.<\/p>","protected":false},"author":1,"featured_media":197389,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2305,1899],"tags":[2931,2948],"class_list":["post-197388","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cars","category-tutorials","tag-car","tag-vehicle"],"_links":{"self":[{"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/posts\/197388","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/comments?post=197388"}],"version-history":[{"count":7,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/posts\/197388\/revisions"}],"predecessor-version":[{"id":214914,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/posts\/197388\/revisions\/214914"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/media\/197389"}],"wp:attachment":[{"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/media?parent=197388"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/categories?post=197388"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/tags?post=197388"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}