Comment résoudre les erreurs de la quête Metin2 ?
Guide pour le rechargement des quêtes, l'absence de réponse des PNJ, les erreurs de fonction et les problèmes de compilation des quêtes.
Quêtes, conversations de PNJ, systèmes d'événements, biologiste, téléportation, marché, suivi des boss, récompenses quotidiennes et de nombreux systèmes spéciaux sur les serveurs Metin2. quête Cela fonctionne à travers des fichiers. Par conséquent, même une petite erreur commise du côté de la quête peut empêcher le PNJ de réagir, l'événement ne démarre pas ou le fichier syserr du canal produit constamment des erreurs.
Le plus gros problème avec les erreurs de quête est que l'erreur semble souvent générale, comme « Le PNJ ne fonctionne pas ». Mais la vraie raison peut être un mauvais vnum, une fonction manquante, une syntaxe cassée, une structure d'état défectueuse ou la quête n'est pas du tout compilée.
1. Où trouver les fichiers de quête ?
Le chemin des fichiers Quest peut varier en fonction de l'infrastructure du serveur. Les répertoires couramment utilisés sont :
/usr/game/share/locale/turkey/quest/ /home/game/share/locale/turkey/quest/ /usr/metin2/share/locale/turkey/quest/
Les fichiers de quête sont généralement .quête avec rallonge. Fichiers créés après compilation objet Il est conservé sous le dossier.
2. Vérifiez d'abord pour comprendre l'erreur de quête
Si une quête ne fonctionne pas, le fichier syserr du canal concerné doit d'abord être vérifié.
cd /usr/game/channel1/core1 tail -n 100 syserr
Pour regarder en direct les erreurs qui se produisent après le rechargement de la quête :
tail -f syserr
Exemples d'erreurs de quête courantes :
no such quest function attempt to call field syntax error unexpected symbol quest not found when condition error
3. Comment compiler une quête ?
Lorsque vous ajoutez un nouveau fichier de quête, il ne suffit pas de simplement jeter le fichier dans le dossier. La quête doit être compilée.
Entrez d'abord dans le répertoire des quêtes :
cd /usr/game/share/locale/turkey/quest
Exemple de compilation d'une seule quête :
./qc quest_adi.quest
Le chemin qc peut être différent sur certains systèmes :
/usr/game/share/locale/turkey/quest/qc quest_adi.quest
Le nom du script utilisé pour compiler toutes les quêtes varie en fonction de l'infrastructure. Exemple :
sh make.sh
4. Comment recharger la quête ?
Une fois la quête compilée, elle peut être rechargée dans le jeu avec un personnage GM.
/reload q
Dans certains cas, le simple rechargement ne suffit pas. Surtout si la structure de l'état, le drapeau de la quête ou les conditions de départ ont changé, il peut être nécessaire de ressaisir le personnage ou de redémarrer la chaîne.
L'ordre général doit être le suivant :
- Modifier le fichier de quête
- Vérifier la syntaxe
- Compiler le fichier Quest avec QC
- Exécuter/recharger q dans le jeu
- Découvrez Syserr
- Tester le comportement d'un PNJ ou d'un événement
5. Problème de quête de PNJ qui ne fonctionne pas
Si rien ne se passe lorsque vous cliquez sur le PNJ, les points suivants sont à vérifier :
- Le numéro virtuel du PNJ utilisé dans la quête est-il correct ?
- Les PNJ apparaissent-ils vraiment sur la carte côté serveur ?
- La quête est-elle compilée ?
- Syserr s'est-il produit après /reload q ?
- Le début de l'état de la quête est-il correct ?
- Le code cesse-t-il de s'exécuter en raison d'une mauvaise condition dans Quest ?
Exemple de structure de déclencheur de PNJ :
quest ornek_npc begin
state start begin
when 20011.chat."Ornek Menu" begin
say_title("Ornek NPC")
say("Bu bir test mesajidir.")
end
end
endici 20011 Valeur du numéro virtuel du PNJ. Si le numéro virtuel du PNJ est incorrect, la quête ne fonctionnera pas.
6. aucune erreur de fonction de quête
dans Syserr pas de fonction de quête Si cela est vu, la fonction utilisée dans la quête n'est pas définie sur le serveur.
Raisons :
- La quête est extraite d'une autre infrastructure.
- La fonction de quête correspondante n'est pas ajoutée du côté Source.
- La fonction d'assistance qui devrait être dans questlib.lua est manquante.
- Le nom de la fonction est mal orthographié.
Dans ce cas, la solution est de vérifier si la fonction existe réellement sur le serveur. Les quêtes extraites d'autres fichiers ne doivent pas être considérées comme directement compatibles.
7. Erreurs de syntaxe de quête
Les fautes de frappe les plus courantes dans les fichiers Quest sont :
- fin sous-utilisation ou surutilisation
- Ne pas fermer les guillemets
- Mauvais lorsque la condition est écrite
- Utilisation de caractères turcs ou mauvais encodage
- Utiliser des fonctions extraites d'un autre système sans adaptation
Exemple de structure défectueuse :
say("Merhaba oyuncu)Structure correcte :
say("Merhaba oyuncu")8. Problèmes de drapeau de quête
Certaines quêtes gardent un drapeau sur le personnage ou le compte. La quête ne démarre pas ou peut sembler terminée en raison d'une valeur de drapeau incorrecte.
Par exemple, si une quête a déjà été terminée, le PNJ peut ne plus afficher le menu. Dans ce cas, le drapeau de quête concerné doit être coché.
Erreurs courantes
- Oublier de mettre le fichier Quest dans un dossier et de le compiler
- Faire /reload q même s'il y a une erreur de compilation
- Mauvaise valeur du numéro virtuel du PNJ
- Utiliser des quêtes extraites d'autres fichiers sans les adapter
- Penser qu'un PNJ ne fonctionne pas sans vérifier le drapeau de quête
- La quête semble correcte mais ne fonctionne pas car l'encodage est corrompu.
FAQ
J'ai fait /reload q mais la quête n'a pas fonctionné, pourquoi ?
La quête peut ne pas avoir été compilée du tout, elle peut avoir donné une erreur lors de la compilation, ou elle peut ne pas être visible dans le lecteur en raison de l'état/du drapeau.
Je clique sur le PNJ et le menu n'apparaît pas. Le problème vient-il du PNJ ?
Pas toujours. Même si le numéro virtuel du PNJ est correct, la quête peut ne pas être compilée, écrite de manière incorrecte ou exécutée en raison d'une condition.
Pourquoi la quête que j'ai reçue d'un autre serveur donne-t-elle une erreur ?
Car les fonctions utilisées, la structure questlib ou les supports des sources peuvent ne pas être disponibles dans votre infrastructure.
Recommandations en matière de sécurité et d'exploitation
- Faites une sauvegarde du fichier avant de modifier Quest.
- Implémentez des changements de quête majeurs sur le serveur en direct pendant les heures de faible nombre de joueurs.
- Vérifiez syserr après chaque compilation de quête.
- Faites attention aux caractères turcs et aux distorsions d’encodage.
- Effectuez une sauvegarde avant de supprimer en masse les opérations d'indicateur de quête liées aux données des joueurs.
Cet article est spécialement préparé pour PvPServer.