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

Hogyan lehet megoldani a Metin2 Quest hibáit? A küldetés újratöltési és felépítési útmutatója

Yazdır

Hogyan lehet megoldani a Metin2 Quest hibáit?

Útmutató a küldetés újratöltéséhez, az NPC-reakció hiányához, a funkcióhibákhoz és a küldetésfordítási problémákhoz.

Küldetések, NPC-beszélgetések, eseményrendszerek, biológus, teleportáció, piac, főnökkövetés, napi jutalmak és sok speciális rendszer a Metin2 szervereken. küldetés Fájlokon keresztül működik. Ezért a küldetésoldalon elkövetett kis hiba is azt okozhatja, hogy az NPC nem reagál, az esemény nem indul el, vagy a csatorna syserr fájlja folyamatosan hibákat produkál.

A küldetéshibákkal kapcsolatos legnagyobb probléma az, hogy a hiba gyakran általánosnak tűnik, például „az NPC nem működik”. De a valódi ok lehet rossz vnum, hiányzó funkció, hibás szintaxis, hibás állapotstruktúra vagy a küldetés egyáltalán nem fordítása.

Egyszerű magyarázat: A küldetésfájl az az utasításfájl, amely megmondja az NPC-nek, hogy mit kell tennie. Ha az utasítás hibás, az NPC nem tud helyesen válaszolni.

1. Hol találhatók a küldetésfájlok?

A Quest fájlok elérési útja a kiszolgáló infrastruktúrájától függően változhat. A leggyakrabban használt könyvtárak a következők:

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

A küldetésfájlok általában .quest kiterjesztéssel. A fordítás után létrehozott fájlok tárgyat A mappa alatt van tárolva.

2. Először ellenőrizze a Quest Error megértéséhez

Ha egy küldetés nem működik, először a megfelelő csatorna syserr fájlt kell ellenőrizni.

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

A küldetés újratöltése után fellépő élő hibák megtekintéséhez:

tail -f syserr

Gyakori küldetési hibák példái:

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

3. Hogyan fordítsuk le a Quest-et?

Új küldetésfájl hozzáadásakor nem elég csak bedobni a fájlt a mappába. A küldetést össze kell állítani.

Először lépjen be a küldetés könyvtárába:

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

Példa egyetlen küldetés összeállítására:

./qc quest_adi.quest

A qc elérési útja bizonyos rendszereken eltérő lehet:

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

Az összes küldetés fordításához használt szkriptnév az infrastruktúrától függően változik. Példa:

sh make.sh
Fontos: Kockázatos lehet az összes küldetés szükségtelen fordítása nagy szervereken. Ellenőrzöttebb, ha csak a szerkesztett küldetésfájlt fordítja le.

4. Hogyan lehet újratölteni a Questet?

A küldetés összeállítása után újratölthető a játékban egy GM karakterrel.

/reload q

Egyes esetekben az újratöltés nem elegendő. Főleg, ha az állapotstruktúra, a küldetésjelző vagy az indulási feltételek megváltoztak, szükség lehet a karakter újbóli megadására vagy a csatorna újraindítására.

Az általános sorrend a következő legyen:

  • Küldetésfájl szerkesztése
  • Ellenőrizze a szintaxist
  • Fordítsa le a Quest fájlt qc-vel
  • Futtassa a /reload q parancsot a játékban
  • Nézd meg a Syserrt
  • Tesztelje az NPC vagy az esemény viselkedését

5. Az NPC Quest nem működik probléma

Ha semmi sem történik, amikor az NPC-re kattint, ellenőrizze a következő pontokat:

  • Helyes a küldetésben használt NPC vnum?
  • Valóban megjelennek az NPC-k a térképen a szerver oldalon?
  • A Quest össze van állítva?
  • A syserr a /reload q után történt?
  • Helyes a küldetés állapotának kezdete?
  • Leáll a kód végrehajtása a Quest rossz feltétele miatt?

Példa NPC trigger szerkezetre:

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

itt 20011 NPC vnum értéke. Ha az NPC vnum helytelen, a küldetés nem fog működni.

6. nincs ilyen küldetésfüggvény hiba

a Syserrben nincs ilyen küldetés funkció Ha látható, akkor a küldetésben használt függvény nincs definiálva a szerveren.

Okok:

  • A Quest egy másik infrastruktúrából származik.
  • A megfelelő küldetésfüggvény nincs hozzáadva a Forrás oldalon.
  • Hiányzik a questlib.lua fájlban található helper függvény.
  • A függvény neve hibásan van írva.

Ebben az esetben a megoldás annak ellenőrzése, hogy a függvény valóban létezik-e a szerveren. A más fájlokból vett küldetéseket nem szabad közvetlenül kompatibilisnek tekinteni.

7. Küldetés szintaktikai hibák

A Quest fájlokban a leggyakoribb elírási hibák a következők:

  • vége alul vagy túlzottan használt
  • Nem záró idézőjel
  • Rossz a feltétel írásakor
  • Török karakterek használata vagy rossz kódolás
  • Más rendszerből átvett függvények alkalmazása adaptáció nélkül

Példa hibás szerkezetre:

say("Merhaba oyuncu)

Helyes szerkezet:

say("Merhaba oyuncu")

8. Quest Flag problémák

Egyes küldetések zászlót tartanak a karakteren vagy a fiókon. A küldetés nem indul el, vagy úgy tűnhet, hogy befejeződött a helytelen zászlóérték miatt.

Például, ha egy küldetést már teljesítettek, előfordulhat, hogy az NPC nem jeleníti meg újra a menüt. Ebben az esetben ellenőrizni kell a megfelelő küldetésjelzőt.

Figyelem: A küldetésjelző tömeges törlését az élő szerveren körültekintően kell végrehajtani. A helytelen működés megsértheti a játékosok küldetéseit, eseményeit vagy jutalmait.

Gyakori hibák

  • Elfelejtette a Quest fájlt egy mappába helyezni és lefordítani
  • A /reload q akkor is, ha fordítási hiba van
  • Hibás NPC vnum érték
  • Más fájlokból vett küldetések használata azok adaptálása nélkül
  • Azt gondolni, hogy egy NPC nem működik a küldetésjelző ellenőrzése nélkül
  • A küldetés helyesnek tűnik, de nem működik, mert a kódolás sérült.

GYIK

Megtettem /újratöltöttem a q-t, de a küldetés nem működött, miért?
Lehet, hogy a Quest egyáltalán nem lett lefordítva, fordítás közben hibát adott, vagy az állapot/zászló állapot miatt nem látszik a lejátszóban.

Az NPC-re kattintok, és nem jelenik meg a menü. Az NPC-vel van a probléma?
Nem mindig. Még ha az NPC vnum helyes is, előfordulhat, hogy a küldetést nem lehet lefordítani, helytelenül írni vagy futni egy feltétel miatt.

Miért ad hibát a másik szervertől kapott küldetés?
Mivel a használt funkciók, előfordulhat, hogy a questlib-struktúra vagy a forrástámogatás nem érhető el az infrastruktúrában.

Biztonsági és üzemeltetési ajánlások

  • A Quest szerkesztése előtt készítsen biztonsági másolatot a fájlról.
  • Végezze el a fő küldetésmódosításokat az élő szerveren alacsony játékosidőben.
  • Minden küldetés összeállítása után ellenőrizze a syserrt.
  • Ügyeljen a török karakterekre és a kódolási torzulásokra.
  • Készítsen biztonsági másolatot a játékosadatokkal kapcsolatos küldetésjelző műveletek tömeges törlése előtt.

Ez a cikk kifejezetten a PvPServer számára készült.

Bu cevap yeterince yardımcı oldu mu?

Oyla

overlay spinner