{"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-16T13:43:33","modified_gmt":"2026-08-16T11:43:33","slug":"impostazione-fxmanifest-lua-fivem","status":"publish","type":"post","link":"https:\/\/fivemx.com\/it\/impostazione-fxmanifest-lua-fivem\/","title":{"rendered":"Setting Up fxmanifest.lua for FiveM (Copy-Paste Examples)"},"content":{"rendered":"<p><strong>Risposta rapida:<\/strong> every FiveM resource needs an <code data-no-translation=\"\">fxmanifest.lua<\/code> 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 (<code data-no-translation=\"\">ui_page<\/code> + <code data-no-translation=\"\">files<\/code>), and maps (<code data-no-translation=\"\">this_is_a_map 'yes'<\/code> with ymap streams), plus fixes for common manifest errors.<\/p>\n<p><em>Ultimo aggiornamento: 25 giugno 2026<\/em><\/p>\n<h2>fxmanifest.lua minimale<\/h2>\n<pre data-no-translation=\"\"><code data-no-translation=\"\">fx_version 'cerulean'\ngame 'gta5'\n\nclient_script 'client.lua'\nserver_script 'server.lua'<\/code><\/pre>\n<p>La documentazione ufficiale del manifest delle risorse di Cfx.re identifica <code data-no-translation=\"\">fxmanifest.lua<\/code> come file manifest corrente e nota che il vecchio <code data-no-translation=\"\">__resource.lua<\/code> i manifest sono deprecati. Usa <code data-no-translation=\"\">fx_version 'cerulean'<\/code> per risorse FiveM moderne a meno che un autore di risorse non documenti un requisito diverso.<\/p>\n<h2>Complete example with metadata<\/h2>\n<pre data-no-translation=\"\"><code data-no-translation=\"\">fx_version 'cerulean'\ngame 'gta5'\n\nauthor 'Your Name'\ndescription 'Example FiveM resource'\nversion '1.0.0'\n\nlua54 'yes'\n\nshared_script 'config.lua'\nclient_script 'client.lua'\nserver_script 'server.lua'<\/code><\/pre>\n<p>IL <code data-no-translation=\"\">author<\/code>, <code data-no-translation=\"\">description<\/code>, E <code data-no-translation=\"\">version<\/code> fields are metadata: they do not change how scripts run, but FXServer prints a console warning such as &#8220;version is required. please specify a version in your fxmanifest.lua.&#8221; when <code data-no-translation=\"\">version<\/code> is missing. Add a <code data-no-translation=\"\">version '1.0.0'<\/code> line to clear it. The optional <code data-no-translation=\"\">lua54 'yes'<\/code> line enables Lua 5.4 for the resource and is required by many current frameworks and libraries.<\/p>\n<h2>Script client, server e condivisi<\/h2>\n<pre data-no-translation=\"\"><code data-no-translation=\"\">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>Utilizzo <code data-no-translation=\"\">shared_scripts<\/code> solo per file che sono sicuri su entrambi i lati. Non inserire segreti del server, chiavi di licenza, password del database o URL webhook in file condivisi.<\/p>\n<h2>Esempio di risorsa NUI<\/h2>\n<pre data-no-translation=\"\"><code data-no-translation=\"\">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>Se un'interfaccia utente \u00e8 vuota in gioco, controlla che ogni file HTML, CSS, JavaScript, font e immagine sia elencato sotto <code data-no-translation=\"\">files<\/code>. I file mancanti sono una causa comune di schermate NUI rotte.<\/p>\n<h2>Esempio di risorsa Mappa o MLO<\/h2>\n<pre data-no-translation=\"\"><code data-no-translation=\"\">fx_version 'cerulean'\ngame 'gta5'\n\nthis_is_a_map 'yes'\n\nfiles {\n 'stream\/*.ymap',\n 'stream\/*.ytyp'\n}<\/code><\/pre>\n<p>Per mappe e interni, tieni i file stream in una <code data-no-translation=\"\">stream<\/code> cartella e verifica che la risorsa parta senza avvisi in console. Se una mappa non si carica, usa la console FiveM e i log di txAdmin prima di modificare risorse non correlate.<\/p>\n<h2>Errori comuni<\/h2>\n<ul>\n<li>Utilizzo <code data-no-translation=\"\">__resource.lua<\/code> in una nuova risorsa.<\/li>\n<li>Mettere <code data-no-translation=\"\">server.lua<\/code> Sotto <code data-no-translation=\"\">client_scripts<\/code>.<\/li>\n<li>Dimenticare i file NUI sotto <code data-no-translation=\"\">files<\/code>.<\/li>\n<li>Mettere segreti all'interno <code data-no-translation=\"\">shared_scripts<\/code>.<\/li>\n<li>Errori di ortografia nelle cartelle, specialmente <code data-no-translation=\"\">client<\/code>, <code data-no-translation=\"\">server<\/code>, E <code data-no-translation=\"\">stream<\/code>.<\/li>\n<\/ul>\n<h2>Lista di controllo per la validazione<\/h2>\n<ol>\n<li>La cartella della risorsa ha <code data-no-translation=\"\">fxmanifest.lua<\/code> al livello superiore.<\/li>\n<li><code data-no-translation=\"\">game 'gta5'<\/code> \u00e8 presente per FiveM.<\/li>\n<li>I file client vengono caricati sul client, i file server sul server.<\/li>\n<li>Ogni file NUI\/statico \u00e8 elencato sotto <code data-no-translation=\"\">files<\/code>.<\/li>\n<li><code data-no-translation=\"\">server.cfg<\/code> include <code data-no-translation=\"\">ensure resource-name<\/code>.<\/li>\n<\/ol>\n<h2>Guide correlate<\/h2>\n<ul>\n<li><a href=\"https:\/\/fivemx.com\/it\/introduzione-allo-scripting-lua\/\">Introduzione allo scripting Lua per FiveM<\/a><\/li>\n<li><a href=\"https:\/\/fivemx.com\/it\/scrivere-script-fivem-usando-lintelligenza-artificiale\/\">Come scrivere script FiveM usando l'IA<\/a><\/li>\n<li><a href=\"https:\/\/fivemx.com\/it\/come-controllare-i-log-di-txadmin-per-errori\/\">Come controllare i log di txAdmin<\/a><\/li>\n<\/ul>\n<section data-fivemx-rework-extra=\"2026-06-25\">\n<h2>Ordine delle dipendenze in server.cfg<\/h2>\n<p>Il manifest dice a FiveM quali file appartengono a una risorsa, ma <code data-no-translation=\"\">server.cfg<\/code> controlla ancora l'ordine di avvio. Avvia le librerie condivise e le dipendenze del framework prima delle risorse che le utilizzano.<\/p>\n<pre data-no-translation=\"\"><code data-no-translation=\"\">ensure oxmysql\nensure ox_lib\nensure qb-core\nensure my-script<\/code><\/pre>\n<p>Se una risorsa genera errori di export all'avvio, controlla che la dipendenza sia installata, nominata correttamente e assicurata prima dello script che la chiama.<\/p>\n<h2>Note specifiche per il framework<\/h2>\n<p>Le risorse ESX, QBCore e Qbox spesso necessitano di import del framework, librerie di database e file di configurazione. Mantieni la configurazione del framework in file documentati. Non nascondere impostazioni importanti in file client casuali. Un manifest pulito semplifica il supporto perch\u00e9 lo staff pu\u00f2 vedere ogni file caricato.<\/p>\n<h2>Lista di controllo prima di pubblicare uno script<\/h2>\n<ul>\n<li>Nessun segreto in file condivisi o client.<\/li>\n<li>Nessun file di test inutilizzato elencato nel manifest.<\/li>\n<li>Tutti gli asset NUI elencati sotto <code data-no-translation=\"\">files<\/code>.<\/li>\n<li>Dipendenze documentate nel README o nella descrizione del prodotto.<\/li>\n<li>La risorsa si avvia correttamente dopo un riavvio completo del server.<\/li>\n<\/ul>\n<\/section>\n<section data-fivemx-quality-wave=\"2026-07-01:162266\">\n<h2>L'ordine delle dipendenze \u00e8 ancora importante<\/h2>\n<p>Il manifest dice a FXServer quali file appartengono a una risorsa, ma <code data-no-translation=\"\">server.cfg<\/code> controlla ancora l'ordine di avvio. Avvia le librerie condivise, i framework e le dipendenze del database prima degli script che le chiamano. Se una risorsa genera errori di export all'avvio, controlla il nome e l'ordine delle dipendenze prima di modificare lo script stesso.<\/p>\n<pre data-no-translation=\"\"><code data-no-translation=\"\">ensure oxmysql\nensure ox_lib\nensure qb-core\nensure my-script<\/code><\/pre>\n<h2>Revisiona prima di distribuire una risorsa<\/h2>\n<p>Controlla che i file client non contengano segreti, che i file server non vengano inviati al client, che gli asset NUI siano elencati sotto <code data-no-translation=\"\">files<\/code>, e che le dipendenze siano nominate esattamente come sono installate. Un manifest funzionante dovrebbe rendere la risorsa comprensibile a un altro sviluppatore senza dover aprire ogni file Lua.<\/p>\n<p>Se uno script utilizza export di framework, librerie di database o configurazioni condivise, documentalo nel README o nelle note del prodotto. La maggior parte dei problemi di installazione derivano da dipendenze mancanti o da un ordine di avvio errato, non dalla sintassi del manifest stesso.<\/p>\n<p>Dopo aver modificato il manifest, riavvia l'intero server una volta. I ricaricamenti a caldo possono nascondere file mancanti o problemi di ordine che si manifestano solo con un avvio pulito.<\/p>\n<p>Se l'avvio pulito fallisce, leggi il primo errore, non l'ultima cascata di errori dopo che le dipendenze sono gi\u00e0 state compromesse.<\/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:\/\/cdn.fivemx.com\/wp-content\/uploads\/2026\/07\/162266-fxmanifest-anatomy.webp\" alt=\"fxmanifest.lua layers for metadata, scripts, dependencies and files\" width=\"1600\" height=\"900\" title=\"\"><figcaption>A resource manifest declares metadata, executable scripts, dependencies and packaged files.<\/figcaption><\/figure>\n<h2>Read an fxmanifest in four layers<\/h2>\n<ul>\n<li><strong>Metadata:<\/strong> declare the FX version, supported game and useful author, description and version details.<\/li>\n<li><strong>Sceneggiature:<\/strong> separate client, server and shared execution deliberately; do not expose server-only logic to clients.<\/li>\n<li><strong>Dipendenze:<\/strong> state resources or runtime constraints that must exist before this resource can run.<\/li>\n<li><strong>File:<\/strong> include NUI and data assets that clients need. Cfx.re notes that a local <code data-no-translation=\"\">ui_page<\/code> and its dependencies must be referenced in <code data-no-translation=\"\">files<\/code>.<\/li>\n<\/ul>\n<p>The manifest is semi-declarative Lua executed separately from the resource scripts. Keep it explicit, remove obsolete entries, and verify every referenced path on a case-sensitive production filesystem.<\/p>\n<p><a href=\"https:\/\/docs.fivem.net\/docs\/scripting-reference\/resource-manifest\/\" rel=\"nofollow noopener\" target=\"_blank\">Cfx.re resource-manifest reference<\/a><\/p>\n<\/section>\n<p><!-- fivemx-blog-portfolio-wave2:2026-08-09:setting-up-fxmanifest-lua-fivem --><\/p>\n<h2>Editorial review and source policy<\/h2>\n<p>The manifest examples were retained because they match the current Cfx.re resource-manifest model. The official manifest reference is the authority for directives, and deprecated <code data-no-translation=\"\">__resource.lua<\/code> examples must not be introduced.<\/p>","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\/it\/wp-json\/wp\/v2\/posts\/162266","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fivemx.com\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fivemx.com\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fivemx.com\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fivemx.com\/it\/wp-json\/wp\/v2\/comments?post=162266"}],"version-history":[{"count":7,"href":"https:\/\/fivemx.com\/it\/wp-json\/wp\/v2\/posts\/162266\/revisions"}],"predecessor-version":[{"id":217315,"href":"https:\/\/fivemx.com\/it\/wp-json\/wp\/v2\/posts\/162266\/revisions\/217315"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/fivemx.com\/it\/wp-json\/wp\/v2\/media\/162267"}],"wp:attachment":[{"href":"https:\/\/fivemx.com\/it\/wp-json\/wp\/v2\/media?parent=162266"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fivemx.com\/it\/wp-json\/wp\/v2\/categories?post=162266"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fivemx.com\/it\/wp-json\/wp\/v2\/tags?post=162266"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}