Couldn't start resource: perché FiveM non avvia il tuo script
Couldn't start resource X o Failed to start resource nella tua console FiveM? Le cause usuali (manifest, nome della cartella, errore Lua, dipendenza, escrow) e come trovare la tua.
Esegui ensure my_script o avvia il server, e la console stampa:
Couldn't start resource my_script.Quella riga ti dice solo il risultato. La causa è nelle righe sopra di essa. Questa guida elenca le cause usuali, nell'ordine che vale la pena controllare, e mostra come leggere la console per sapere quale hai tu.
Leggi prima le righe sopra
Scorri verso l'alto da Couldn't start resource nella console del server, o nella console dal vivo di txAdmin. La riga direttamente sopra è quasi sempre la ragione: una dipendenza mancante, un errore di parsing con un file e un numero di riga, o un problema di manifest.
Se la console è troppo rumorosa, ferma il server, riavvialo, e esegui solo la risorsa che fallisce:
ensure my_scriptOra tutto ciò che viene stampato subito dopo quel comando appartiene alla risorsa.
1. La risorsa non è trovata
Couldn't find resource my_script.FiveM cerca una cartella nominata esattamente my_script da qualche parte sotto resources, e quella cartella deve contenere un file nominato fxmanifest.lua (o il vecchio __resource.lua). Controlla tre cose:
- Il nome in
server.cfgcorrisponde al nome della cartella, lettera per lettera. Su un host Linux,My_Scriptemy_scriptsono diversi. - Il file manifest è nominato
fxmanifest.lua, nonfxmanifest.lua.txt(Windows nasconde le estensioni note) e nonfxmanifest (1).lua. - Esegui
refreshnella console del server dopo aver aggiunto una nuova cartella, poiensuredi nuovo. Un server in esecuzione non scansiona per nuove cartelle fino a quando non lo fai.
2. Cartella nidificata dopo decompressione
Questo è l'errore più comune con gli script scaricati. Decomprimi my_script.zip e finisci con:
resources/
my_script/
my_script/
fxmanifest.lua
client/
server/Il manifest è uno livello troppo profondo, quindi FiveM vede my_script come una semplice cartella senza manifest. Sposta la cartella interna verso l'alto così che fxmanifest.lua sia direttamente dentro la cartella che fai ensure.
Le cartelle di categoria scritte tra parentesi, come [mic], vanno bene: FiveM le cerca. Una risorsa dentro un'altra risorsa no.
3. Un errore di sintassi Lua al caricamento
Error parsing script @my_script/server/main.lua in resource my_script: @my_script/server/main.lua:42: unexpected symbol near 'end'
Couldn't start resource my_script.Il messaggio nomina il file e la riga (main.lua:42). Apri quella riga e guarda anche quella prima di essa: un end mancante, una virgola mancante in una tabella, o un carattere strano da un brutto copia e incolla. Correggilo, poi ensure di nuovo.
Due cause che sembrano errori di sintassi ma non lo sono:
- Lo script usa la sintassi Lua 5.4 (
<const>,<close>, divisione intera) e il manifest manca dilua54 'yes'. - Il file è stato salvato con un encoding diverso o ha un BOM. Salvalo come UTF-8 senza BOM.
4. Dipendenza mancante
Could not find dependency ox_lib for resource my_script.
Couldn't start resource my_script.Il manifest chiede un'altra risorsa che non è sul tuo server. Installala e mantieni il nome della cartella esatto. La spiegazione completa è in Could not find dependency X for resource Y.
5. Errori di manifest
Un fxmanifest.lua cattivo ferma la risorsa prima che qualsiasi script venga eseguito. Controlla:
fx_version 'cerulean'
game 'gta5'
client_scripts { 'client/*.lua' }
server_scripts { 'server/*.lua' }Errori comuni: un fx_version o game mancante, una virgola mancante tra le voci in un elenco { }, un percorso di file nel manifest che non esiste, e un percorso con la direzione dello slash o la capitalizzazione sbagliata. Usa le barre in avanti. Se la risorsa spedisce ancora un __resource.lua, vedi conversione di __resource.lua a fxmanifest.lua.
6. Escrow, entitlement e licenza
Gli script protetti (escrowed) verificano che la chiave di licenza del tuo server appartenga all'account Cfx.re che possiede l'asset. Se non è così, la risorsa si rifiuta di avviarsi e la riga sopra dice che ti manca l'entitlement. Quella è una correzione separata: escrow: You lack the required entitlement.
7. La risorsa si avvia, poi fallisce in un altro modo
A volte l'avvio ha successo e il fallimento arriva un secondo dopo, da un SCRIPT ERROR in un file di script, come un valore nil dal framework. Questo non è più un problema di avvio. Leggi la riga di errore, trova il file e il numero di riga, e risolvilo. Se l'oggetto del framework è nil, inizia con la guida ESX o QBCore.
Un modo veloce per testare il manifest
Inizia con una risorsa di test pulita. Crea resources/test_ok/fxmanifest.lua:
fx_version 'cerulean'
game 'gta5'
server_script 'server.lua'e resources/test_ok/server.lua:
print('test_ok started')Esegui refresh poi ensure test_ok. Se funziona, il tuo server e i percorsi sono a posto, e l'errore è dentro la risorsa che stai cercando.
Checklist
| Sintomo | Soluzione |
|---|---|
Couldn't find resource my_script. |
Il nome della cartella differisce da ensure, o nessun fxmanifest.lua; esegui refresh |
La cartella è my_script/my_script/ |
Decompresso un livello troppo profondo; sposta la cartella interna verso l'alto |
Error parsing script ... unexpected symbol |
Errore di sintassi al file e riga mostrati |
Could not find dependency |
Installa la dipendenza, nome cartella esatto |
| Nulla sopra la riga che fallisce | Esegui ensure da solo e leggi ciò che viene stampato dopo di esso |
| Testo di entitlement o licenza | Escrow: chiave di licenza e account Cfx.re devono corrispondere |
Risposte rapide
Cosa significa Couldn't start resource?
FiveM ha trovato la risorsa ma si è fermato mentre la avviava. La ragione non è mai su quella riga: è una o più righe stampate appena sopra di essa nella console.
Perché dice Couldn't find resource?
Il nome in ensure non corrisponde a nessuna cartella sotto resources, o la cartella non ha fxmanifest.lua al suo livello superiore. Controlla l'ortografia e la cartella che hai decompresso.
Può un errore Lua fermare una risorsa dall'avviarsi?
Sì. Un errore di sintassi in un file di script fa fallire l'intera risorsa dal caricamento. La console mostra il file e il numero di riga dell'errore.
Script senza questo problema
Item Creator V2Crea oggetti utilizzabili con animazioni, props, effetti e altro — senza scrivere codice.Vedi script →
Shop CreatorCrea un negozio in meno di un minuto — proprietari, dipendenti, casseforti e rapine inclusi.Vedi script →
Quest CreatorUn editor visuale di missioni e dialoghi con gli NPC, costruito nodo per nodo in gioco.Vedi script →