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

Hur löser man Metin2 Quest-fel? Quest Reload and Build Guide

Yazdır

Hur löser man Metin2 Quest-fel?

Guide för omladdning av uppdrag, att NPC inte svarar, funktionsfel och problem med uppdragskompilering.

Uppdrag, NPC-konversationer, händelsesystem, biolog, teleportering, marknad, chefsspårning, dagliga belöningar och många specialsystem på Metin2-servrar. uppdrag Det fungerar genom filer. Därför kan även ett litet misstag som görs på uppdragssidan göra att NPC inte reagerar, händelsen inte startar eller att kanalsyserr-filen ständigt producerar fel.

Det största problemet med uppdragsfel är att felet ofta verkar allmänt, till exempel "NPC fungerar inte". Men den verkliga orsaken kan vara fel vnum, saknad funktion, trasig syntax, felaktig tillståndsstruktur eller att uppdraget inte kompileras alls.

Enkel förklaring: Uppdragsfilen är instruktionsfilen som talar om för NPC:n vad den ska göra. Om instruktionen är felaktig kan NPC inte svara korrekt.

1. Var hittar jag Quest-filer?

Sökvägen till Quest-filer kan variera beroende på serverns infrastruktur. Vanligt använda kataloger är:

/usr/game/share/locale/turkey/quest/
/home/game/share/locale/turkey/quest/
/usr/metin2/share/locale/turkey/quest/

Quest-filer är vanligtvis .quest med förlängning. Filer skapade efter kompilering objekt Den förvaras under mappen.

2. Kontrollera först för att förstå Quest Error

Om ett uppdrag inte fungerar bör den relevanta kanalsyserr-filen kontrolleras först.

cd /usr/game/channel1/core1
tail -n 100 syserr

Så här tittar du på livefel som uppstår efter att du har laddat om uppdraget:

tail -f syserr

Vanliga quest-exempel:

no such quest function
attempt to call field
syntax error
unexpected symbol
quest not found
when condition error

3. Hur kompilerar man Quest?

När du lägger till en ny uppdragsfil räcker det inte att bara slänga filen i mappen. Uppdraget måste kompileras.

Ange först uppdragskatalogen:

cd /usr/game/share/locale/turkey/quest

Exempel för att kompilera ett enskilt uppdrag:

./qc quest_adi.quest

qc-sökvägen kan vara annorlunda på vissa system:

/usr/game/share/locale/turkey/quest/qc quest_adi.quest

Skriptnamnet som används för att kompilera alla uppdrag varierar beroende på infrastrukturen. Exempel:

sh make.sh
Viktigt: Att kompilera alla uppdrag i onödan på stora servrar kan vara riskabelt. Det är mer kontrollerat att endast kompilera den redigerade uppdragsfilen.

4. Hur laddar jag om Quest?

Efter att uppdraget har kompilerats kan det laddas om i spelet med en GM-karaktär.

/reload q

I vissa fall räcker det inte att bara ladda om. Speciellt om tillståndsstrukturen, uppdragsflaggan eller startvillkoren har ändrats, kan det vara nödvändigt att skriva in karaktären igen eller starta om kanalen.

Den allmänna ordningen bör vara följande:

  • Redigera uppdragsfil
  • Kontrollera syntaxen
  • Kompilera Quest-fil med qc
  • Kör / ladda om q i spelet
  • Kolla in Syserr
  • Testa NPC- eller händelsebeteende

5. NPC Quest fungerar inte Problem

Om inget händer när du klickar på NPC, bör följande punkter kontrolleras:

  • Är NPC-vnummet som används i uppdraget korrekt?
  • Spawnar NPC:er verkligen på kartan på serversidan?
  • Är Quest kompilerad?
  • Uppstod syserr efter /reload q?
  • Är början av uppdraget korrekt?
  • Slutar koden att köras på grund av fel tillstånd i Quest?

Exempel på 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

här 20011 NPC vnum-värde. Om NPC vnum är felaktigt kommer uppdraget inte att fungera.

6. inget sådant uppdragsfunktionsfel

i Syserr ingen sådan uppdragsfunktion Om den visas är funktionen som används i uppdraget inte definierad på servern.

Orsaker:

  • Quest är hämtat från en annan infrastruktur.
  • Den relevanta uppdragsfunktionen läggs inte till på källsidan.
  • Hjälpfunktionen som borde finnas i questlib.lua saknas.
  • Funktionsnamnet är felstavat.

I det här fallet är lösningen att kontrollera om funktionen faktiskt finns på servern. Uppdrag hämtade från andra filer bör inte anses vara direkt kompatibla.

7. Quest-syntaxfel

De vanligaste stavfelen i Quest-filer är:

  • slut under- eller överanvändning
  • Inte avslutande citattecken
  • Fel när skick skrevs
  • Använder turkiska tecken eller dålig kodning
  • Använda funktioner hämtade från ett annat system utan anpassning

Exempel på felaktig struktur:

say("Merhaba oyuncu)

Rätt struktur:

say("Merhaba oyuncu")

8. Quest Flag Problem

Vissa uppdrag har en flagga på karaktären eller kontot. Uppdraget startar inte eller kan se ut att vara avslutat på grund av felaktigt flaggvärde.

Till exempel, om ett uppdrag redan har slutförts, kanske NPC inte visar menyn igen. I detta fall bör den relevanta uppdragsflaggan kontrolleras.

Observera: Radering av massuppdragsflagga på liveservern bör göras försiktigt. Felaktig hantering kan korrumpera spelarnas uppdrag, händelser eller belöningar.

Vanliga misstag

  • Glömde att lägga Quest-filen i en mapp och kompilera den
  • Gör /reload q trots att det finns ett kompileringsfel
  • Fel NPC vnum-värde
  • Använda uppdrag hämtade från andra filer utan att anpassa dem
  • Tänker att en NPC inte fungerar utan att kolla questflaggan
  • Uppdraget verkar vara korrekt men fungerar inte eftersom kodningen är skadad.

FAQ

Jag /laddade om q men uppdraget fungerade inte, varför?
Uppdraget kanske inte har kompilerats alls, det kan ha gett ett fel under kompileringen, eller så är det kanske inte synligt i spelaren på grund av tillståndet/flaggan.

Jag klickar på NPC och menyn visas inte. Är problemet med NPC?
Inte alltid. Även om NPC vnum är korrekt, kanske uppdraget inte kompileras, skrivet felaktigt eller körs på grund av ett tillstånd.

Varför ger uppdraget jag fick från en annan server ett fel?
Eftersom funktionerna som används, kanske inte stöd för questlib-struktur eller källkod är tillgängliga i din infrastruktur.

Säkerhets- och driftsrekommendationer

  • Gör en säkerhetskopia av filen innan du redigerar Quest.
  • Implementera stora uppdragsförändringar på liveservern under låga spelartimmar.
  • Kontrollera syserr efter varje uppdragskompilering.
  • Var uppmärksam på turkiska tecken och kodningsförvrängningar.
  • Ta en säkerhetskopia innan du massraderar uppdragsflagga operationer relaterade till spelardata.

Den här artikeln är speciellt förberedd för PvPServer.

Bu cevap yeterince yardımcı oldu mu?

Oyla

overlay spinner