Wie behebe ich Metin2 Quest-Fehler?
Anleitung zum Neuladen von Quests, nicht reagierenden NPCs, Funktionsfehlern und Problemen bei der Questkompilierung.
Quests, NPC-Gespräche, Eventsysteme, Biologe, Teleportation, Markt, Bossverfolgung, tägliche Belohnungen und viele spezielle Systeme auf Metin2-Servern. Suche Es funktioniert über Dateien. Daher kann selbst ein kleiner Fehler auf der Questseite dazu führen, dass der NPC nicht reagiert, das Ereignis nicht startet oder die Syserr-Datei des Kanals ständig Fehler erzeugt.
Das größte Problem bei Questfehlern besteht darin, dass der Fehler oft allgemein erscheint, wie zum Beispiel „NPC funktioniert nicht“. Aber der wahre Grund kann eine falsche vnum, eine fehlende Funktion, eine fehlerhafte Syntax, eine fehlerhafte Statusstruktur oder die überhaupt nicht kompilierte Quest sein.
1. Wo finde ich Questdateien?
Der Pfad der Quest-Dateien kann je nach Serverinfrastruktur variieren. Häufig verwendete Verzeichnisse sind:
/usr/game/share/locale/turkey/quest/ /home/game/share/locale/turkey/quest/ /usr/metin2/share/locale/turkey/quest/
Questdateien sind normalerweise .quest mit Verlängerung. Nach der Kompilierung erstellte Dateien Objekt Es wird im Ordner aufbewahrt.
2. Überprüfen Sie zunächst, ob der Questfehler verstanden wurde
Wenn eine Quest nicht funktioniert, sollte zuerst die entsprechende Kanal-Syserr-Datei überprüft werden.
cd /usr/game/channel1/core1 tail -n 100 syserr
So sehen Sie sich Live-Fehler an, die nach dem Neuladen der Quest auftreten:
tail -f syserr
Beispiele für häufige Questfehler:
no such quest function attempt to call field syntax error unexpected symbol quest not found when condition error
3. Wie kompiliere ich eine Quest?
Wenn Sie eine neue Questdatei hinzufügen, reicht es nicht aus, die Datei einfach in den Ordner zu werfen. Die Quest muss kompiliert werden.
Betreten Sie zunächst das Questverzeichnis:
cd /usr/game/share/locale/turkey/quest
Beispiel für die Zusammenstellung einer einzelnen Quest:
./qc quest_adi.quest
Der QC-Pfad kann auf einigen Systemen unterschiedlich sein:
/usr/game/share/locale/turkey/quest/qc quest_adi.quest
Der zum Kompilieren aller Quests verwendete Skriptname variiert je nach Infrastruktur. Beispiel:
sh make.sh
4. Wie lade ich die Quest neu?
Nachdem die Quest zusammengestellt wurde, kann sie im Spiel mit einem GM-Charakter neu geladen werden.
/reload q
In manchen Fällen reicht das bloße Nachladen nicht aus. Insbesondere wenn sich die Statusstruktur, das Quest-Flag oder die Startbedingungen geändert haben, kann es erforderlich sein, den Charakter erneut einzugeben oder den Kanal neu zu starten.
Die allgemeine Reihenfolge sollte wie folgt sein:
- Questdatei bearbeiten
- Syntax prüfen
- Kompilieren Sie die Quest-Datei mit qc
- Führe /reload q im Spiel aus
- Schauen Sie sich Syserr an
- Testen Sie das Verhalten von NPCs oder Ereignissen
5. NPC-Quest funktioniert nicht. Problem
Wenn beim Klicken auf den NPC nichts passiert, sollten folgende Punkte überprüft werden:
- Ist die in der Quest verwendete NPC-Vnum korrekt?
- Spawnen wirklich NPCs auf der serverseitigen Karte?
- Ist Quest kompiliert?
- Ist syserr nach /reload q aufgetreten?
- Ist der Anfangsstatus der Quest korrekt?
- Wird die Ausführung des Codes aufgrund einer falschen Bedingung in Quest abgebrochen?
Beispiel einer NPC-Triggerstruktur:
quest ornek_npc begin
state start begin
when 20011.chat."Ornek Menu" begin
say_title("Ornek NPC")
say("Bu bir test mesajidir.")
end
end
endhier 20011 NPC-Vnum-Wert. Wenn die NPC-Vnum falsch ist, funktioniert die Quest nicht.
6. Kein solcher Quest-Funktionsfehler
in Syserr keine solche Questfunktion Wenn es angezeigt wird, ist die in der Quest verwendete Funktion nicht auf dem Server definiert.
Gründe:
- Die Quest stammt aus einer anderen Infrastruktur.
- Die entsprechende Questfunktion wird auf der Quellseite nicht hinzugefügt.
- Die Hilfsfunktion, die in questlib.lua enthalten sein sollte, fehlt.
- Der Funktionsname ist falsch geschrieben.
In diesem Fall besteht die Lösung darin, zu prüfen, ob die Funktion tatsächlich auf dem Server vorhanden ist. Quests aus anderen Dateien sollten nicht als direkt kompatibel betrachtet werden.
7. Quest-Syntaxfehler
Die häufigsten Tippfehler in Quest-Dateien sind:
- Ende Unter- oder Überbeanspruchung
- Keine schließenden Anführungszeichen
- Falsch, wenn die Bedingung geschrieben wurde
- Verwendung türkischer Zeichen oder schlechte Kodierung
- Nutzung von Funktionen, die einem anderen System entnommen wurden, ohne Anpassung
Beispiel fehlerhafte Struktur:
say("Merhaba oyuncu)Richtiger Aufbau:
say("Merhaba oyuncu")8. Probleme mit der Quest-Flagge
Bei einigen Quests wird der Charakter oder das Konto mit einer Flagge versehen. Die Quest startet nicht oder scheint aufgrund eines falschen Flaggenwerts abgeschlossen zu sein.
Wenn beispielsweise eine Quest bereits abgeschlossen wurde, zeigt der NPC das Menü möglicherweise nicht erneut an. In diesem Fall sollte das entsprechende Quest-Flag überprüft werden.
Häufige Fehler
- Vergessen, die Quest-Datei in einem Ordner abzulegen und zu kompilieren
- /reload q ausführen, obwohl ein Kompilierungsfehler vorliegt
- Falscher NPC-Vnum-Wert
- Verwendung von Quests aus anderen Dateien, ohne diese anzupassen
- Ich denke, dass ein NPC nicht funktioniert, ohne die Quest-Flagge zu überprüfen
- Die Quest scheint korrekt zu sein, funktioniert aber nicht, weil die Kodierung beschädigt ist.
FAQ
Ich habe /reload q ausgeführt, aber die Quest hat nicht funktioniert. Warum?
Möglicherweise wurde die Quest überhaupt nicht kompiliert, es ist möglicherweise ein Fehler beim Kompilieren aufgetreten oder sie ist aufgrund der Status-/Flag-Bedingung möglicherweise nicht im Player sichtbar.
Ich klicke auf den NPC und das Menü erscheint nicht. Liegt das Problem beim NPC?
Nicht immer. Selbst wenn die NPC-Vnum korrekt ist, kann es sein, dass die Quest aufgrund einer Bedingung nicht kompiliert, falsch geschrieben oder ausgeführt wird.
Warum gibt die Quest, die ich von einem anderen Server erhalten habe, eine Fehlermeldung aus?
Da die verwendeten Funktionen, die Questlib-Struktur oder der Quellcode in Ihrer Infrastruktur möglicherweise nicht verfügbar sind.
Sicherheits- und Betriebsempfehlungen
- Erstellen Sie eine Sicherungskopie der Datei, bevor Sie Quest bearbeiten.
- Implementieren Sie während geringer Spielerstunden größere Queständerungen auf dem Live-Server.
- Überprüfen Sie syserr nach jeder Questkompilierung.
- Achten Sie auf türkische Zeichen und Kodierungsverzerrungen.
- Erstellen Sie eine Sicherungskopie, bevor Sie Quest-Flag-Vorgänge im Zusammenhang mit Spielerdaten massenhaft löschen.
Dieser Artikel ist speziell für PvPServer vorbereitet.