Salta ai contenuti

Risoluzione dei problemi

I problemi in cui le persone si imbattono davvero, grosso modo nell’ordine in cui si presentano.


Il comando restart non rilegge fxmanifest.lua. Se hai aggiunto un file — una nuova lingua, ad esempio — digita prima refresh nella console del server, poi restart mic_shopcreator.

Errori riguardanti es_extended o qb-core all’avvio

Sezione intitolata “Errori riguardanti es_extended o qb-core all’avvio”

Config.Framework non viene rilevato automaticamente. Imposta 'esx' o 'qbcore' in base al tuo server e avvia mic_shopcreator dopo il tuo framework in server.cfg.

Su QBox, il valore è 'qbcore' — QBox esegue le risorse QBCore tramite il suo livello di compatibilità — e qbx_core deve avviarsi prima di mic_shopcreator.

Il permesso ACE è mic_shop.open — non mic_shopcreator.open. Controlla l’ortografia nella tua riga add_ace e assicurati che utilizzi un identificatore con cui ti connetti effettivamente, oppure un gruppo di cui fai realmente parte.

Config.Locale indica un file che non si trova in locales/, oppure che non è presente in shared_scripts dentro fxmanifest.lua. La console mostra Locale file not found for … quando ciò accade.

  • Sei troppo lontano. I negozianti esistono solo entro Config.PedSpawnDistance (20 metri per impostazione predefinita).
  • La posizione è stata rapinata. Una posizione rapinata chiude per il suo tempo di attesa: negoziante e blip scompaiono per tutti finché non termina. Vedi sotto.
  • Config.SpawnNPC è disattivato. In questo caso non c’è alcun negoziante per scelta progettuale, ma solo un marker o un punto target.
  • Il modello non è valido. Il modello di una posizione che non riesce a caricarsi viene sostituito con Config.DefaultPed e la console stampa Using default. Se nemmeno il modello predefinito si carica, otterrai CRITICAL: Could not load default ped model e nessun negoziante — inserisci un modello valido in Config.DefaultPed.

Vedo il negoziante ma non riesco ad aprire il negozio

Sezione intitolata “Vedo il negoziante ma non riesco ad aprire il negozio”

Config.Interaction non corrisponde a ciò che utilizzi. Di base è impostato su 'ox_target'. Imposta 'qb-target' per qb-target, oppure 'default' per avvicinarti e premere E entro Config.RadiusInteract.

Su QBCore con 'default', il suggerimento non viene mostrato — ShowHelpNotification in bridge/client.lua è vuoto per QBCore. Il tasto E funziona comunque; riempi quella funzione con la tua chiamata per il testo di aiuto se vuoi mostrare il suggerimento.

“This shop is currently on cooldown” / un negozio rapinato resta chiuso per ore

Sezione intitolata ““This shop is currently on cooldown” / un negozio rapinato resta chiuso per ore”

Una posizione rapinata rimane chiusa per i Cooldown (minutes) impostati nel negozio. Se un negozio non ha alcun tempo di attesa salvato, viene usato il valore di riserva Config.RobberyCooldown — che viene anch’esso letto in minuti, quindi il valore predefinito 300 corrisponde a cinque ore. Imposta un tempo di attesa su ogni negozio rapinabile nel pannello, oppure abbassa il valore di riserva.

La finestra del negozio cerca <item name>.png in ciascuna cartella di Config.InventoryImagePath, in ordine. Di base punta alla cartella di ox_inventory. Su un altro inventario, inserisci lì la cartella delle immagini di quell’inventario come percorso nui://. Se il nome dell’oggetto e il nome del file immagine differiscono, non verrà mostrata alcuna immagine.

Il denaro sporco viene pagato da un conto chiamato black_money. QBCore non ha un conto simile di base, quindi usa Cash, Bank o All (Cash + Bank) per i prodotti su QBCore — oppure aggiungi il conto e adatta GetAccount in bridge/server.lua al modo in cui il tuo server gestisce il denaro sporco.

Un proprietario apre il negozio e non vede il pulsante dell’ingranaggio

Sezione intitolata “Un proprietario apre il negozio e non vede il pulsante dell’ingranaggio”

L’elenco dei proprietari deve contenere l’identificatore utilizzato da Config.IdentifierType:

Config.IdentifierTypeCosa digitare come proprietario
'discord'Solo il numero dell’ID Discord, senza discord:
'license'La licenza completa, incluso license:
'esx'L’identificatore ESX come salvato in users, incluso eventuale prefisso char1:
'citizenid'Il citizen ID di QBCore

Se hai modificato Config.IdentifierType dopo che i proprietari erano già stati aggiunti, aggiungili di nuovo.

  • Con 'discord', il giocatore deve avere Discord collegato; altrimenti gli viene detto di collegarlo.
  • Devono trovarsi entro 10 metri dal proprietario quando quest’ultimo apre l’elenco.
  • Devono premere Y quando viene chiesto. Su QBCore la domanda viene mostrata tramite ShowHelpNotification in bridge/client.lua, che è vuoto per QBCore — riempilo, oppure dì al giocatore di premere Y.

La rapina deve essere abilitata su quel negozio e il giocatore deve puntare un’arma — non a mani nude — contro il negoziante entro 5 metri. Una posizione che è già in corso di rapina, o ancora in tempo di attesa, rifiuterà l’avvio.

  • Webhooks deve essere attivo per quel negozio, con un URL webhook di Discord valido.
  • Config.Screenshot è attivo ma screenshot-basic non è in esecuzione. Il log viene inviato tramite lo screenshot, quindi senza quella risorsa non parte nulla. Avvia screenshot-basic prima di questa risorsa, oppure imposta Config.Screenshot = false.

Config.PoliceAlert = "default" avvisa i giocatori il cui lavoro è presente in Config.RobberyNotifyJobs, in base al nome del lavoro. Con "custom", non viene inviato nulla finché non scrivi la chiamata al tuo dispatch in TriggerPoliceAlert dentro bridge/server.lua — che di base è vuoto.