Aller au contenu

Dépannage

Les problèmes que les utilisateurs rencontrent réellement, à peu près dans l’ordre où ils apparaissent.


La ressource ne démarre pas : « could not find dependency fmLib »

Section intitulée « La ressource ne démarre pas : « could not find dependency fmLib » »

fmLib est obligatoire, pas optionnel — la partie serveur lit l’argent, les items et les jobs à travers lui. Installez-le et placez ensure fmLib au-dessus de ensure mic_questcreator dans server.cfg. La même règle s’applique pour oxmysql.

« CRITICAL ERROR: FMLIB NOT FOUND! », « ESX NOT FOUND! » ou « QBCore NOT FOUND! »

Section intitulée « « CRITICAL ERROR: FMLIB NOT FOUND! », « ESX NOT FOUND! » ou « QBCore NOT FOUND! » »

Soit le quest creator a démarré avant fmLib ou votre framework, soit Config.Framework nomme le mauvais framework. Il n’est pas détecté automatiquement : définissez 'esx' ou 'qbcore' dans config.lua selon votre serveur, puis vérifiez l’ordre de démarrage.

Sur QBox, la valeur est 'qbcore' — QBox gère les ressources QBCore via sa couche de compatibilité — et qbx_core doit démarrer avant mic_questcreator.

Une modification d’un fichier n’a rien changé

Section intitulée « Une modification d’un fichier n’a rien changé »

restart ne relit pas le fxmanifest.lua. Si vous avez ajouté un fichier — une nouvelle langue, par exemple — tapez d’abord refresh dans la console du serveur, puis restart mic_questcreator. Sans cela, le serveur continue avec la liste de fichiers qu’il avait en mémoire.

/questcreator indique que je n’ai pas la permission

Section intitulée « /questcreator indique que je n’ai pas la permission »

Vous devez posséder l’ACE mic_questcreator.open. Vérifiez que la ligne add_ace utilise bien l’identifiant avec lequel vous vous connectez (un identifiant Discord ne fonctionne que si votre serveur lit les identifiants Discord), ou que votre ligne de groupe correspond à un groupe auquel vous appartenez réellement. Les modifications de permissions dans server.cfg nécessitent un redémarrage du serveur ; celles effectuées en direct dans la console s’appliquent immédiatement.

Enregistrer une quête ne fait rien, ou la console indique qu’une table n’existe pas

Section intitulée « Enregistrer une quête ne fait rien, ou la console indique qu’une table n’existe pas »

install.sql n’a pas été importé, ou l’a été dans une autre base de données que celle utilisée par oxmysql. La ressource ne crée pas ses tables d’elle-même. Importez le fichier une fois et redémarrez.

  • Le personnage n’avait pas encore chargé. Les donneurs de quêtes sont créés lorsque votre framework indique que le joueur est chargé (esx:playerLoaded ou QBCore:Client:OnPlayerLoaded). Un script de sélection de personnage ou de spawn qui ne déclenche jamais cet événement les laissera absents ; redémarrer la ressource alors que le joueur est en jeu les fera apparaître.
  • Le modèle est incorrect. Un modèle de ped qui n’existe pas ne fait rien apparaître. Choisissez-en un dans la liste de l’éditeur d’emplacements.
  • Vous venez de l’enregistrer. L’enregistrement actualise les PNJ de chaque joueur ; si l’un d’eux manque encore, redémarrez la ressource.

Config.InteractionType ne correspond pas à ce que vous utilisez. Il est livré réglé sur 'ox_target'. Avec qb-target, mettez 'qb-target' ; avec aucun des deux, mettez 'drawtext' et les joueurs appuient sur E à portée de Config.InteractionDistance.

La voiture de quête reste verrouillée, ou je ne reçois pas de clés

Section intitulée « La voiture de quête reste verrouillée, ou je ne reçois pas de clés »

Le véhicule commence verrouillé intentionnellement. Le joueur doit utiliser Search for Keys ou Break In dessus. Les clés sont données via fmLib, fmLib doit donc prendre en charge votre ressource de clés de véhicules. Si le crochetage (Break In) nécessite un item, le joueur doit le posséder sur lui.

Avec qb-target ou 'drawtext', ces invites apparaissent sous forme de texte 3D à côté du véhicule plutôt qu’en option de target.

La récompense financière va sur le mauvais compte

Section intitulée « La récompense financière va sur le mauvais compte »

Give Money, Remove Money et l’argent dans un Reward Bundle utilisent toujours l’argent liquide (cash), quel que soit le compte affiché par le nœud ; il n’y a pas de paramètre pour cela dans cette version. Check Money est le seul nœud qui lit le compte sélectionné.

Un nœud Condition (IF/ELSE) sur « Job » n’avance jamais

Section intitulée « Un nœud Condition (IF/ELSE) sur « Job » n’avance jamais »

Utilisez le nœud Has Job pour les vérifications de métier. L’option Job du nœud Condition générique n’est pas câblée dans cette version, et le flux se bloque dessus.

Le gestionnaire de mort se configure par événement et reste inactif tant que vous ne l’activez pas dans les paramètres de l’événement. Lorsqu’il réanime un joueur, il le fait via Bridge.Client.RevivePlayer dans bridge/bridge_client.lua, qui appelle esx_ambulancejob:revive (ESX) ou hospital:client:Revive (QBCore). Si vous utilisez un autre script d’ambulance, placez son événement de réanimation à cet endroit.

Seules les URLs de webhook Discord sont acceptées ; toute autre URL est rejetée avec Blocked invalid webhook URL dans la console. Pour y joindre une capture d’écran, screenshot-basic doit être démarré et Config.ScreenshotBasic réglé sur true.

La liste est téléchargée depuis GitHub à son ouverture. Si votre hébergeur bloque les requêtes sortantes, elle reste vide et la console affiche Error fetching community events.

L’exportation indique qu’elle a sauvegardé à la racine

Section intitulée « L’exportation indique qu’elle a sauvegardé à la racine »

Le dossier exports n’existe pas dans la ressource. Créez un dossier vide exports à l’intérieur de mic_questcreator et exportez à nouveau.

J’ai défini le tchèque et je vois « Translation [cs][…] does not exist »

Section intitulée « J’ai défini le tchèque et je vois « Translation [cs][…] does not exist » »

locales/cs.lua est fourni mais n’est pas répertorié dans fxmanifest.lua. Ajoutez-le à shared_scripts aux côtés des autres fichiers de langue, faites refresh, puis redémarrez.