PvP Server Kiralama & Oyun Sunucuları
0 Giriş Yap Kayıt Ol

Wie behebe ich Metin2 Quest-Fehler? Anleitung zum Neuladen und Erstellen von Quests

Yazdır

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.

Einfache Erklärung: Die Questdatei ist die Anweisungsdatei, die dem NPC sagt, was er tun soll. Wenn die Anweisung falsch ist, kann der NPC nicht richtig antworten.

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
Wichtig: Alle Quests unnötigerweise auf großen Servern zusammenzustellen, kann riskant sein. Es ist kontrollierter, nur die bearbeitete Questdatei zu kompilieren.

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
end

hier 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.

Achtung: Das Massenlöschen von Quest-Flags auf dem Live-Server sollte sorgfältig durchgeführt werden. Eine fehlerhafte Bedienung kann die Quest-, Event- oder Belohnungsaufzeichnungen der Spieler beschädigen.

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.

Bu cevap yeterince yardımcı oldu mu?

Oyla

overlay spinner