{"id":162266,"date":"2024-10-11T19:42:29","date_gmt":"2024-10-11T17:42:29","guid":{"rendered":"https:\/\/hifivem.com\/?p=162266"},"modified":"2026-08-29T08:59:30","modified_gmt":"2026-08-29T06:59:30","slug":"configuration-de-fxmanifest-lua-fivem","status":"publish","type":"post","link":"https:\/\/rpcrate.com\/fr\/setting-up-fxmanifest-lua-fivem\/","title":{"rendered":"Configuration de fxmanifest.lua pour FiveM (Exemples \u00e0 copier-coller)"},"content":{"rendered":"<p>Un fxmanifest.lua doit se trouver \u00e0 la racine d'une ressource FiveM. Il d\u00e9clare le jeu pris en charge, les scripts, les d\u00e9pendances et les fichiers livr\u00e9s au client. Choisissez l'exemple qui correspond \u00e0 votre ressource et remplacez chaque nom de fichier d'exemple par un fichier qui existe r\u00e9ellement.<\/p>\n<p>Les exemples de configuration et de code ici ciblent FiveM pour GTA V Legacy. Enhanced a des r\u00e8gles d'ex\u00e9cution et de compatibilit\u00e9 diff\u00e9rentes ; v\u00e9rifiez <a href=\"https:\/\/docs.fivem.net\/docs\/developers\/legacy-vs-enhanced\/\">les changements Legacy-to-Enhanced de Cfx.re<\/a> avant de les appliquer \u00e0 un serveur Enhanced.<\/p>\n<h2 id=\"a-minimal-script-resource\">Une ressource de script minimale<\/h2>\n<pre data-no-translation=\"\" translate=\"no\"><code data-no-translation=\"\" translate=\"no\">fx_version 'cerulean'\ngame 'gta5'\n\nclient_script 'client.lua'\nserver_script 'server.lua'<\/code><\/pre>\n<p>Utilisez client_script pour le code s'ex\u00e9cutant sur le client de chaque joueur et server_script pour le code FXServer. Ajoutez les m\u00e9tadonn\u00e9es d'auteur, de description et de version si n\u00e9cessaire. Une d\u00e9pendance peut inspecter votre version, mais les m\u00e9tadonn\u00e9es de version ne modifient pas l'ex\u00e9cution. Le CfxLua actuel utilise Lua 5.4 ; le commutateur lua54 est obsol\u00e8te.<\/p>\n<h2 id=\"shared-files-and-dependencies\">Fichiers partag\u00e9s et d\u00e9pendances<\/h2>\n<pre data-no-translation=\"\" translate=\"no\"><code data-no-translation=\"\" translate=\"no\">fx_version 'cerulean'\ngame 'gta5'\n\ndependencies { 'ox_lib', 'oxmysql' }\nshared_scripts { '@ox_lib\/init.lua', 'config.lua' }\nclient_scripts { 'client\/*.lua' }\nserver_scripts { '@oxmysql\/lib\/MySQL.lua', 'server\/*.lua' }<\/code><\/pre>\n<p>Cet exemple n\u00e9cessite les biblioth\u00e8ques nomm\u00e9es ; omettez-les si votre ressource ne les utilise pas. Les scripts partag\u00e9s sont livr\u00e9s aux clients, alors ne mettez pas les identifiants, les webhooks et les v\u00e9rifications d'autorit\u00e9 r\u00e9serv\u00e9es au serveur dans les fichiers partag\u00e9s. D\u00e9clarez les d\u00e9pendances dont votre code a r\u00e9ellement besoin et suivez leur ordre de d\u00e9marrage document\u00e9.<\/p>\n<h2 id=\"a-browser-interface-with-nui\">Une interface de navigateur avec NUI<\/h2>\n<pre data-no-translation=\"\" translate=\"no\"><code data-no-translation=\"\" translate=\"no\">fx_version 'cerulean'\ngame 'gta5'\n\nui_page 'web\/index.html'\nfiles { 'web\/index.html', 'web\/style.css', 'web\/app.js' }\nclient_script 'client.lua'<\/code><\/pre>\n<p>Listez toutes les ressources d'interface utilisateur locales requises, y compris les polices et les images. Une interface vide n\u00e9cessite de v\u00e9rifier \u00e0 la fois son chemin de page et les ressources manquantes. Un \u00e9cran de chargement utilise loadscreen et son propre cycle de vie au lieu de cet exemple de ui_page.<\/p>\n<h2 id=\"maps-and-additional-archetypes\">Cartes et arch\u00e9types suppl\u00e9mentaires<\/h2>\n<pre data-no-translation=\"\" translate=\"no\"><code data-no-translation=\"\" translate=\"no\">fx_version 'cerulean'\ngame 'gta5'\n\nthis_is_a_map 'yes'\nfiles { 'stream\/example.ytyp' }\ndata_file 'DLC_ITYP_REQUEST' 'stream\/example.ytyp'<\/code><\/pre>\n<p>Placez les ressources streamables dans stream. L'enregistrement YTYP montr\u00e9 ici est pour une ressource contenant ce fichier ; une simple ressource YMAP-only n'a pas besoin d'un YTYP fictif. Utilisez la d\u00e9claration de fichier de donn\u00e9es requise par le type d'actif r\u00e9el.<\/p>\n<h2 id=\"start-and-verify\">D\u00e9marrer et v\u00e9rifier<\/h2>\n<ol>\n<li>V\u00e9rifiez que le dossier contient directement fxmanifest.lua et que tous les chemins correspondent aux noms de fichiers r\u00e9els, y compris la casse.<\/li>\n<li>Installez les d\u00e9pendances d\u00e9clar\u00e9es. Ajoutez ensure suivi du nom du dossier de ressources \u00e0 server.cfg apr\u00e8s les d\u00e9pendances document\u00e9es.<\/li>\n<li>Ex\u00e9cutez refresh et ensure resource-name dans la console du serveur de d\u00e9veloppement, en substituant le nom de votre dossier. Lisez la premi\u00e8re erreur de d\u00e9marrage.<\/li>\n<li>Rejoignez, utilisez la ressource et inspectez F8 ainsi que la console du serveur. Testez un red\u00e9marrage complet du serveur pour d\u00e9tecter les erreurs de d\u00e9pendance et de packaging masqu\u00e9es par les rechargements \u00e0 chaud.<\/li>\n<\/ol>\n<h2 id=\"common-errors\">Erreurs courantes<\/h2>\n<p>Fichier manquant : comparez le chemin exact indiqu\u00e9 dans le manifeste avec le nom du fichier. Export manquant : v\u00e9rifiez la version de la d\u00e9pendance et l\u2019ordre d\u2019initialisation. Secrets visibles par les clients : retirez-les des fichiers partag\u00e9s ou client et renouvelez les valeurs expos\u00e9es.<\/p>\n<p>Ne raccourcissez pas un manifeste de fournisseur en copiant ce tutoriel par-dessus. Utilisez la <a href=\"https:\/\/docs.fivem.net\/docs\/scripting-reference\/resource-manifest\/\">r\u00e9f\u00e9rence officielle du manifeste<\/a> et <a href=\"https:\/\/docs.fivem.net\/docs\/game-references\/data-files\/\">r\u00e9f\u00e9rence du fichier de donn\u00e9es<\/a> pour comprendre chaque d\u00e9claration avant de la modifier.<\/p>\n<section id=\"buyer-installation-check\">\n<h2>Que v\u00e9rifier dans le manifeste d\u2019une ressource achet\u00e9e ?<\/h2>\n<p>Comparez les d\u00e9pendances et builds d\u00e9clar\u00e9s \u00e0 votre serveur avant de d\u00e9marrer la ressource. V\u00e9rifiez la pr\u00e9sence des scripts et fichiers d\u2019interface r\u00e9f\u00e9renc\u00e9s. Un manifeste valide d\u00e9crit les \u00e9l\u00e9ments \u00e0 charger ; il ne certifie ni le gameplay, ni les performances, ni l\u2019int\u00e9gration du framework.<\/p>\n<p><a href=\"https:\/\/docs.fivem.net\/docs\/scripting-reference\/resource-manifest\/\">R\u00e9f\u00e9rence des manifestes Cfx.re<\/a><\/p>\n<p><a href=\"https:\/\/rpcrate.com\/fr\/boutique\/ribsosay-esx\/\">Voir les exigences du pack ESX Server Base (by RibSosay)<\/a><\/p>\n<\/section>","protected":false},"excerpt":{"rendered":"<p>Un fxmanifest.lua doit se trouver \u00e0 la racine d'une ressource FiveM. Il d\u00e9clare le jeu pris en charge, les scripts, les d\u00e9pendances et les fichiers livr\u00e9s au client. Choisissez l'exemple qui correspond \u00e0 votre ressource et remplacez chaque nom de fichier d'exemple par un fichier qui existe r\u00e9ellement.<\/p>","protected":false},"author":1,"featured_media":162267,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2340,1899],"tags":[3001],"class_list":["post-162266","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-lua-scripting","category-tutorials","tag-fivem-script"],"_links":{"self":[{"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/posts\/162266","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=162266"}],"version-history":[{"count":7,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/posts\/162266\/revisions"}],"predecessor-version":[{"id":217315,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/posts\/162266\/revisions\/217315"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/media\/162267"}],"wp:attachment":[{"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/media?parent=162266"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/categories?post=162266"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/tags?post=162266"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}