Impostazione di fxmanifest.lua (FiveM)

Setting Up fxmanifest.lua for FiveM (Copy-Paste Examples)

Risposta rapida: 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 'yes' with ymap streams), plus fixes for common manifest errors.

Ultimo aggiornamento: 25 giugno 2026

fxmanifest.lua minimale

fx_version 'cerulean'
game 'gta5'

client_script 'client.lua'
server_script 'server.lua'

La documentazione ufficiale del manifest delle risorse di Cfx.re identifica fxmanifest.lua come file manifest corrente e nota che il vecchio __resource.lua i manifest sono deprecati. Usa fx_version 'cerulean' per risorse FiveM moderne a meno che un autore di risorse non documenti un requisito diverso.

Complete example with metadata

fx_version 'cerulean'
game 'gta5'

author 'Your Name'
description 'Example FiveM resource'
version '1.0.0'

lua54 'yes'

shared_script 'config.lua'
client_script 'client.lua'
server_script 'server.lua'

IL author, description, E version fields are metadata: they do not change how scripts run, but FXServer prints a console warning such as “version is required. please specify a version in your fxmanifest.lua.” when version is missing. Add a version '1.0.0' line to clear it. The optional lua54 'yes' line enables Lua 5.4 for the resource and is required by many current frameworks and libraries.

Script client, server e condivisi

fx_version 'cerulean'
game 'gta5'

shared_scripts {
 'config.lua',
 '@ox_lib/init.lua'
}

client_scripts {
 'client/*.lua'
}

server_scripts {
 '@oxmysql/lib/MySQL.lua',
 'server/*.lua'
}

Utilizzo shared_scripts 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.

Esempio di risorsa NUI

fx_version 'cerulean'
game 'gta5'

ui_page 'web/index.html'

files {
 'web/index.html',
 'web/style.css',
 'web/app.js'
}

client_script 'client.lua'

Se un'interfaccia utente è vuota in gioco, controlla che ogni file HTML, CSS, JavaScript, font e immagine sia elencato sotto files. I file mancanti sono una causa comune di schermate NUI rotte.

Esempio di risorsa Mappa o MLO

fx_version 'cerulean'
game 'gta5'

this_is_a_map 'yes'

files {
 'stream/*.ymap',
 'stream/*.ytyp'
}

Per mappe e interni, tieni i file stream in una stream 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.

Errori comuni

  • Utilizzo __resource.lua in una nuova risorsa.
  • Mettere server.lua Sotto client_scripts.
  • Dimenticare i file NUI sotto files.
  • Mettere segreti all'interno shared_scripts.
  • Errori di ortografia nelle cartelle, specialmente client, server, E stream.

Lista di controllo per la validazione

  1. La cartella della risorsa ha fxmanifest.lua al livello superiore.
  2. game 'gta5' è presente per FiveM.
  3. I file client vengono caricati sul client, i file server sul server.
  4. Ogni file NUI/statico è elencato sotto files.
  5. server.cfg include ensure resource-name.

Guide correlate

Ordine delle dipendenze in server.cfg

Il manifest dice a FiveM quali file appartengono a una risorsa, ma server.cfg controlla ancora l'ordine di avvio. Avvia le librerie condivise e le dipendenze del framework prima delle risorse che le utilizzano.

ensure oxmysql
ensure ox_lib
ensure qb-core
ensure my-script

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.

Note specifiche per il framework

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é lo staff può vedere ogni file caricato.

Lista di controllo prima di pubblicare uno script

  • Nessun segreto in file condivisi o client.
  • Nessun file di test inutilizzato elencato nel manifest.
  • Tutti gli asset NUI elencati sotto files.
  • Dipendenze documentate nel README o nella descrizione del prodotto.
  • La risorsa si avvia correttamente dopo un riavvio completo del server.

L'ordine delle dipendenze è ancora importante

Il manifest dice a FXServer quali file appartengono a una risorsa, ma server.cfg 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.

ensure oxmysql
ensure ox_lib
ensure qb-core
ensure my-script

Revisiona prima di distribuire una risorsa

Controlla che i file client non contengano segreti, che i file server non vengano inviati al client, che gli asset NUI siano elencati sotto files, 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.

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.

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.

Se l'avvio pulito fallisce, leggi il primo errore, non l'ultima cascata di errori dopo che le dipendenze sono già state compromesse.

fxmanifest.lua layers for metadata, scripts, dependencies and files
A resource manifest declares metadata, executable scripts, dependencies and packaged files.

Read an fxmanifest in four layers

  • Metadata: declare the FX version, supported game and useful author, description and version details.
  • Sceneggiature: separate client, server and shared execution deliberately; do not expose server-only logic to clients.
  • Dipendenze: state resources or runtime constraints that must exist before this resource can run.
  • File: include NUI and data assets that clients need. Cfx.re notes that a local ui_page and its dependencies must be referenced in files.

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.

Cfx.re resource-manifest reference

Editorial review and source policy

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 __resource.lua examples must not be introduced.

Lascia un commento