{"id":162266,"date":"2024-10-11T19:42:29","date_gmt":"2024-10-11T17:42:29","guid":{"rendered":"https:\/\/hifivem.com\/?p=162266"},"modified":"2026-07-20T12:36:25","modified_gmt":"2026-07-20T10:36:25","slug":"configuration-de-fxmanifest-lua-fivem","status":"publish","type":"post","link":"https:\/\/fivemx.com\/fr\/configuration-de-fxmanifest-lua-fivem\/","title":{"rendered":"Configuration de fxmanifest.lua pour FiveM (Exemples \u00e0 copier-coller)"},"content":{"rendered":"<p><strong>R\u00e9ponse rapide\u00a0:<\/strong> chaque ressource FiveM a besoin d'un <code>fxmanifest.lua<\/code> fichier dans le dossier des ressources. Il indique \u00e0 FXServer quel jeu la ressource prend en charge, quels scripts charger et quels fichiers envoyer aux clients. Ci-dessous se trouvent des exemples \u00e0 copier-coller pour une ressource de script standard, des scripts partag\u00e9s\/client\/serveur, des ressources NUI (<code>page_interface utilisateur<\/code> + <code>fichiers<\/code>) et des cartes (<code>ceci_est_une_carte &#039;oui&#039;<\/code> avec des flux ymap), ainsi que des corrections pour les erreurs courantes de manifeste.<\/p>\n<p><em>Derni\u00e8re mise \u00e0 jour : 25 juin 2026<\/em><\/p>\n<h2>fxmanifest.lua minimal<\/h2>\n<pre><code>fx_version &#039;cerulean&#039; jeu &#039;gta5&#039; script_client &#039;client.lua&#039; script_serveur &#039;server.lua&#039;'<\/code><\/pre>\n<p>La documentation officielle du manifeste des ressources de Cfx.re identifie <code>fxmanifest.lua<\/code> comme le fichier manifeste actuel et note que l&#039;ancien <code>__ressource.lua<\/code> Les manifestes sont obsol\u00e8tes. Utilisez <code>fx_version &#039;c\u00e9rul\u00e9en&#039;<\/code> pour les ressources FiveM modernes, sauf si l&#039;auteur de la ressource documente une exigence diff\u00e9rente.<\/p>\n<h2>Exemple complet avec des m\u00e9tadonn\u00e9es<\/h2>\n<pre><code>fx_version 'cerulean'\ngame 'gta5'\n\nauteur 'Votre Nom'\ndescription 'Exemple de ressource FiveM'\nversion '1.0.0'\n\nlua54 'yes'\n\nshared_script 'config.lua'\nclient_script 'client.lua'\nserver_script 'server.lua'<\/code><\/pre>\n<p>Le <code>auteur<\/code>, <code>description<\/code>, et <code>version<\/code> Les champs sont des m\u00e9tadonn\u00e9es : ils ne modifient pas l'ex\u00e9cution des scripts, mais FXServer affiche un avertissement dans la console tel que \u201c version est requis. veuillez sp\u00e9cifier une version dans votre fxmanifest.lua. \u201d lorsque <code>version<\/code> est manquant. Ajoutez une <code>version &#039;1.0.0&#039;<\/code> ligne pour le corriger. La ligne optionnelle <code>lua54 &#039;oui&#039;<\/code> active Lua 5.4 pour la ressource et est requise par de nombreux frameworks et biblioth\u00e8ques actuels.<\/p>\n<h2>Scripts client, serveur et partag\u00e9s<\/h2>\n<pre><code>fx_version 'cerulean'\ngame 'gta5'\n\nshared_scripts {\n 'config.lua',\n '@ox_lib\\\/init.lua'\n}\n\nclient_scripts {\n 'client\\\/*.lua'\n}\n\nserver_scripts {\n '@oxmysql\\\/lib\\\/MySQL.lua',\n 'server\\\/*.lua'\n}<\/code><\/pre>\n<p>Utiliser <code>scripts partag\u00e9s<\/code> Utilisez ce format uniquement pour les fichiers s\u00e9curis\u00e9s des deux c\u00f4t\u00e9s. Ne stockez pas de secrets de serveur, de cl\u00e9s de licence, de mots de passe de base de donn\u00e9es ni d&#039;URL de webhook dans les fichiers partag\u00e9s.<\/p>\n<h2>Exemple de ressource NUI<\/h2>\n<pre><code>fx_version 'cerulean'\ngame 'gta5'\n\nui_page 'web\\\/index.html'\n\nfiles {\n 'web\\\/index.html',\n 'web\\\/style.css',\n 'web\\\/app.js'\n}\n\nclient_script 'client.lua'<\/code><\/pre>\n<p>Si l&#039;interface utilisateur est vide dans le jeu, v\u00e9rifiez que chaque fichier HTML, CSS, JavaScript, police et image est r\u00e9pertori\u00e9 sous <code>fichiers<\/code>. Les fichiers manquants sont une cause fr\u00e9quente de dysfonctionnement des \u00e9crans NUI.<\/p>\n<h2>Exemple de carte ou de ressource MLO<\/h2>\n<pre><code>fx_version 'cerulean'\ngame 'gta5'\n\nthis_is_a_map 'yes'\n\nfiles {\n 'stream\\\/*.ymap',\n 'stream\\\/*.ytyp'\n}<\/code><\/pre>\n<p>Pour les cartes et les int\u00e9rieurs, conservez les fichiers diffus\u00e9s en continu dans un <code>flux<\/code> V\u00e9rifiez le dossier et assurez-vous que la ressource d\u00e9marre sans avertissement dans la console. Si une carte ne se charge pas, consultez la console FiveM et les journaux txAdmin avant de modifier des ressources non li\u00e9es.<\/p>\n<h2>Erreurs courantes<\/h2>\n<ul>\n<li>En utilisant <code>__ressource.lua<\/code> dans une nouvelle ressource.<\/li>\n<li>Putting <code>serveur.lua<\/code> sous <code>scripts_clients<\/code>.<\/li>\n<li>Oublier les fichiers NUI sous <code>fichiers<\/code>.<\/li>\n<li>Mettre des secrets \u00e0 l&#039;int\u00e9rieur <code>scripts partag\u00e9s<\/code>.<\/li>\n<li>Dossiers comportant des fautes d&#039;orthographe, en particulier <code>client<\/code>, <code>serveur<\/code>, et <code>flux<\/code>.<\/li>\n<\/ul>\n<h2>Liste de contr\u00f4le de validation<\/h2>\n<ol>\n<li>Le dossier de ressources contient <code>fxmanifest.lua<\/code> au plus haut niveau.<\/li>\n<li><code>jeu &#039;gta5&#039;<\/code> est pr\u00e9sent pour FiveM.<\/li>\n<li>Les fichiers client sont charg\u00e9s sur le client, les fichiers serveur sont charg\u00e9s sur le serveur.<\/li>\n<li>Chaque fichier NUI\/statique est r\u00e9pertori\u00e9 sous <code>fichiers<\/code>.<\/li>\n<li><code>serveur.cfg<\/code> comprend <code>assurer le nom de la ressource<\/code>.<\/li>\n<\/ol>\n<h2>Guides associ\u00e9s<\/h2>\n<ul>\n<li><a href=\"https:\/\/fivemx.com\/fr\/introduction-aux-scripts-lua\/\">Introduction \u00e0 la programmation Lua pour FiveM<\/a><\/li>\n<li><a href=\"https:\/\/fivemx.com\/fr\/ecrire-des-scripts-fivem-en-utilisant-lia\/\">Comment \u00e9crire des scripts FiveM en utilisant l&#039;IA<\/a><\/li>\n<li><a href=\"https:\/\/fivemx.com\/fr\/comment-verifier-les-erreurs-dans-les-journaux-txadmin\/\">Comment consulter les journaux txAdmin<\/a><\/li>\n<\/ul>\n<section data-fivemx-rework-extra=\"2026-06-25\">\n<h2>Ordre des d\u00e9pendances dans server.cfg<\/h2>\n<p>Le manifeste indique \u00e0 FiveM quels fichiers appartiennent \u00e0 une ressource, mais <code>serveur.cfg<\/code> Ce param\u00e8tre contr\u00f4le toujours l&#039;ordre de d\u00e9marrage. D\u00e9marrez les biblioth\u00e8ques partag\u00e9es et les d\u00e9pendances du framework avant les ressources qui les utilisent.<\/p>\n<pre><code>assurer oxmysql assurer ox_lib assurer qb-core assurer my-script<\/code><\/pre>\n<p>Si une ressource g\u00e9n\u00e8re des erreurs d&#039;exportation au d\u00e9marrage, v\u00e9rifiez si la d\u00e9pendance est install\u00e9e, correctement nomm\u00e9e et assur\u00e9e avant le script qui l&#039;appelle.<\/p>\n<h2>Notes sp\u00e9cifiques au cadre<\/h2>\n<p>Les ressources ESX, QBCore et Qbox n\u00e9cessitent souvent des importations de frameworks, des biblioth\u00e8ques de base de donn\u00e9es et des fichiers de configuration. Conservez la configuration du framework dans des fichiers document\u00e9s. Ne dissimulez pas des \u00e9l\u00e9ments de configuration importants dans des fichiers clients non d\u00e9taill\u00e9s. Un manifeste clair facilite le support technique, car l&#039;\u00e9quipe peut ainsi visualiser tous les fichiers charg\u00e9s.<\/p>\n<h2>Liste de v\u00e9rification \u00e0 consulter avant de publier un sc\u00e9nario<\/h2>\n<ul>\n<li>Aucun secret dans les fichiers partag\u00e9s ou clients.<\/li>\n<li>Aucun fichier de test inutilis\u00e9 n&#039;est r\u00e9pertori\u00e9 dans le manifeste.<\/li>\n<li>Tous les actifs NUI r\u00e9pertori\u00e9s sous <code>fichiers<\/code>.<\/li>\n<li>D\u00e9pendances document\u00e9es dans le fichier README ou la description du produit.<\/li>\n<li>La ressource red\u00e9marre correctement apr\u00e8s un red\u00e9marrage complet du serveur.<\/li>\n<\/ul>\n<\/section>\n<section data-fivemx-quality-wave=\"2026-07-01:162266\">\n<h2>L'ordre des d\u00e9pendances compte toujours<\/h2>\n<p>Le manifeste indique \u00e0 FXServer quels fichiers appartiennent \u00e0 une ressource, mais <code>serveur.cfg<\/code> contr\u00f4le toujours l'ordre de d\u00e9marrage. D\u00e9marrez les biblioth\u00e8ques partag\u00e9es, les frameworks et les d\u00e9pendances de base de donn\u00e9es avant les scripts qui les appellent. Si une ressource g\u00e9n\u00e8re des erreurs d'exportation au d\u00e9marrage, v\u00e9rifiez le nom et l'ordre des d\u00e9pendances avant de modifier le script lui-m\u00eame.<\/p>\n<pre><code>assurer oxmysql assurer ox_lib assurer qb-core assurer my-script<\/code><\/pre>\n<h2>V\u00e9rifiez avant de livrer une ressource<\/h2>\n<p>V\u00e9rifiez que les fichiers clients ne contiennent pas de secrets, que les fichiers serveur ne sont pas envoy\u00e9s au client, que les ressources NUI sont r\u00e9pertori\u00e9es sous <code>fichiers<\/code>, et les d\u00e9pendances sont nomm\u00e9es exactement comme elles sont install\u00e9es. Un manifeste fonctionnel devrait rendre la ressource compr\u00e9hensible pour un autre d\u00e9veloppeur sans avoir \u00e0 ouvrir chaque fichier Lua.<\/p>\n<p>Si un script utilise des exports de framework, des biblioth\u00e8ques de base de donn\u00e9es ou une configuration partag\u00e9e, documentez cela dans le README ou les notes du produit. La plupart des probl\u00e8mes d'installation proviennent de d\u00e9pendances manquantes ou d'un ordre de d\u00e9marrage incorrect, et non de la syntaxe du manifeste elle-m\u00eame.<\/p>\n<p>Apr\u00e8s avoir modifi\u00e9 le manifeste, red\u00e9marrez le serveur complet une fois. Les rechargements \u00e0 chaud peuvent masquer des fichiers manquants ou des probl\u00e8mes d'ordre qui n'apparaissent que lors d'un d\u00e9marrage propre.<\/p>\n<p>Si le d\u00e9marrage propre \u00e9choue, lisez la premi\u00e8re erreur, pas la derni\u00e8re cascade d'erreurs apr\u00e8s que les d\u00e9pendances sont d\u00e9j\u00e0 cass\u00e9es.<\/p>\n<\/section>\n<section data-fivemx-layout-content-perfection=\"2026-07-11\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/fivemx.com\/wp-content\/uploads\/2026\/07\/162266-fxmanifest-anatomy.webp\" alt=\"Couches de fxmanifest.lua pour les m\u00e9tadonn\u00e9es, les scripts, les d\u00e9pendances et les fichiers\" width=\"1600\" height=\"900\"><figcaption>Un manifeste de ressource d\u00e9clare des m\u00e9tadonn\u00e9es, des scripts ex\u00e9cutables, des d\u00e9pendances et des fichiers empaquet\u00e9s.<\/figcaption><\/figure>\n<h2>Lire un fxmanifest en quatre couches<\/h2>\n<ul>\n<li><strong>M\u00e9tadonn\u00e9es :<\/strong> d\u00e9clarer la version de FX, le jeu pris en charge et les d\u00e9tails utiles de l'auteur, de la description et de la version.<\/li>\n<li><strong>Sc\u00e9narios :<\/strong> s\u00e9parer d\u00e9lib\u00e9r\u00e9ment l'ex\u00e9cution client, serveur et partag\u00e9e ; ne pas exposer la logique serveur uniquement aux clients.<\/li>\n<li><strong>D\u00e9pendances:<\/strong> \u00e9tat des ressources ou des contraintes d'ex\u00e9cution qui doivent exister avant que cette ressource ne puisse s'ex\u00e9cuter.<\/li>\n<li><strong>Fichiers:<\/strong> inclure des NUI et des actifs de donn\u00e9es dont les clients ont besoin. Cfx.re note qu'un local <code>page_interface utilisateur<\/code> et ses d\u00e9pendances doivent \u00eatre r\u00e9f\u00e9renc\u00e9s dans <code>fichiers<\/code>.<\/li>\n<\/ul>\n<p>Le manifeste est un Lua semi-d\u00e9claratif ex\u00e9cut\u00e9 s\u00e9par\u00e9ment des scripts de la ressource. Gardez-le explicite, supprimez les entr\u00e9es obsol\u00e8tes et v\u00e9rifiez chaque chemin r\u00e9f\u00e9renc\u00e9 sur un syst\u00e8me de fichiers de production sensible \u00e0 la casse.<\/p>\n<p><a href=\"https:\/\/docs.fivem.net\/docs\/scripting-reference\/resource-manifest\/\" rel=\"nofollow noopener\" target=\"_blank\">Cfx.re r\u00e9f\u00e9rence du manifeste de ressource<\/a><\/p>\n<\/section>","protected":false},"excerpt":{"rendered":"<p>Fast answer: every FiveM resource needs an fxmanifest.lua file in the resource folder. It tells FXServer which game the resource supports, which scripts to load, and which files go to clients. Below are copy-paste examples for a standard script resource, shared\/client\/server scripts, NUI resources (ui_page + files), and maps (this_is_a_map &#8216;yes&#8217; with ymap streams), plus [&hellip;]<\/p>\n","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:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/posts\/162266","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/comments?post=162266"}],"version-history":[{"count":6,"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/posts\/162266\/revisions"}],"predecessor-version":[{"id":213809,"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/posts\/162266\/revisions\/213809"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/media\/162267"}],"wp:attachment":[{"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/media?parent=162266"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/categories?post=162266"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fivemx.com\/fr\/wp-json\/wp\/v2\/tags?post=162266"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}