Jak vyřešit chyby Metin2 Quest?
Průvodce pro opětovné načtení questu, nereagování NPC, chyby funkcí a problémy s kompilací questů.
Úkoly, konverzace NPC, systémy událostí, biolog, teleportace, trh, sledování šéfů, denní odměny a mnoho speciálních systémů na serverech Metin2. hledání Funguje přes soubory. Proto i malá chyba na straně questu může způsobit, že NPC nebude reagovat, událost se nespustí nebo soubor channel syserr bude neustále produkovat chyby.
Největší problém s chybami při hledání je ten, že chyba se často jeví jako obecná, jako například „NPC nefunguje“. Ale skutečným důvodem může být špatné číslo, chybějící funkce, nefunkční syntaxe, chybná stavová struktura nebo to, že quest není vůbec zkompilován.
1. Kde hledat soubory úkolů?
Cesta k souborům Quest se může lišit v závislosti na infrastruktuře serveru. Běžně používané adresáře jsou:
/usr/game/share/locale/turkey/quest/ /home/game/share/locale/turkey/quest/ /usr/metin2/share/locale/turkey/quest/
Soubory hledání jsou obvykle .hledání s prodloužením. Soubory vytvořené po kompilaci objekt Je uložen pod složkou.
2. Nejprve zaškrtněte, abyste pochopili chybu Quest
Pokud quest nefunguje, měl by se nejprve zkontrolovat příslušný soubor syserr kanálu.
cd /usr/game/channel1/core1 tail -n 100 syserr
Chcete-li sledovat živé chyby, ke kterým dojde po opětovném načtení úkolu:
tail -f syserr
Příklady běžných chyb při hledání:
no such quest function attempt to call field syntax error unexpected symbol quest not found when condition error
3. Jak sestavit Quest?
Když přidáte nový soubor questu, nestačí soubor jen hodit do složky. Je potřeba sestavit quest.
Nejprve zadejte adresář úkolů:
cd /usr/game/share/locale/turkey/quest
Příklad pro sestavení jednoho questu:
./qc quest_adi.quest
Cesta qc se může na některých systémech lišit:
/usr/game/share/locale/turkey/quest/qc quest_adi.quest
Název skriptu použitý ke kompilaci všech úkolů se liší v závislosti na infrastruktuře. Příklad:
sh make.sh
4. Jak znovu načíst Quest?
Po sestavení úkolu jej lze znovu načíst ve hře s postavou GM.
/reload q
V některých případech nestačí pouze opětovné načtení. Zejména pokud se změnila struktura stavu, příznak úkolu nebo počáteční podmínky, může být nutné znovu zadat postavu nebo restartovat kanál.
Obecné pořadí by mělo být následující:
- Upravit soubor questu
- Zkontrolujte syntaxi
- Zkompilujte soubor Quest s qc
- Spustit/znovu načíst q ve hře
- Podívejte se na Syserr
- Otestujte chování NPC nebo události
5. NPC Quest nefunguje problém
Pokud se po kliknutí na NPC nic nestane, měli byste zkontrolovat následující body:
- Je NPC vnum použité v questu správné?
- Skutečně se NPC objevují na mapě na straně serveru?
- Je Quest zkompilován?
- Došlo k syserr po /reload q?
- Je začátek stavu úkolu správný?
- Přestane se kód provádět kvůli špatnému stavu v Questu?
Příklad struktury spouštění NPC:
quest ornek_npc begin
state start begin
when 20011.chat."Ornek Menu" begin
say_title("Ornek NPC")
say("Bu bir test mesajidir.")
end
end
endtady 20011 Hodnota NPC vnum. Pokud je číslo NPC nesprávné, quest nebude fungovat.
6. žádná taková chyba funkce hledání
v Syserru žádná taková vyhledávací funkce Pokud je vidět, funkce použitá v úkolu není na serveru definována.
důvody:
- Úkol je převzat z jiné infrastruktury.
- Příslušná funkce hledání není přidána na straně Zdroj.
- Chybí pomocná funkce, která by měla být v questlib.lua.
- Název funkce je špatně napsaný.
V tomto případě je řešením zkontrolovat, zda funkce na serveru skutečně existuje. Úkoly převzaté z jiných souborů by neměly být považovány za přímo kompatibilní.
7. Chyby syntaxe hledání
Nejběžnější překlepy v souborech Quest jsou:
- konec nedostatečně nebo nadměrně
- Neuzavření uvozovek
- Špatně, když je napsána podmínka
- Používání tureckých znaků nebo špatného kódování
- Použití funkcí převzatých z jiného systému bez přizpůsobení
Příklad chybné struktury:
say("Merhaba oyuncu)Správná struktura:
say("Merhaba oyuncu")8. Problémy s příznakem Quest
Některé questy mají na postavě nebo účtu vlajku. Úkol se nespustí nebo se může zdát dokončený kvůli nesprávné hodnotě příznaku.
Například, pokud byl úkol již dokončen, NPC nemusí znovu zobrazit nabídku. V tomto případě by měl být zaškrtnut příslušný příznak úkolu.
Časté chyby
- Zapomněli jste vložit soubor Quest do složky a zkompilovat jej
- Provádíte /reload q, i když došlo k chybě kompilace
- Nesprávná hodnota NPC vnum
- Používání úkolů převzatých z jiných souborů bez jejich přizpůsobení
- Myslet si, že NPC nefunguje bez kontroly příznaku questu
- Zdá se, že úkol je správný, ale nefunguje, protože kódování je poškozeno.
FAQ
Udělal jsem /reload q, ale quest nefungoval, proč?
Quest nemusí být vůbec zkompilován, může způsobit chybu během kompilace nebo nemusí být v přehrávači viditelný kvůli stavu/stavu vlajky.
Kliknu na NPC a nabídka se neobjeví. Je problém s NPC?
Ne vždy. I když je číslo NPC správné, quest nemusí být zkompilován, napsán nesprávně nebo spuštěn kvůli nějaké podmínce.
Proč quest, který jsem obdržel z jiného serveru, zobrazuje chybu?
Protože použité funkce, struktura questlib nebo podpora zdroje nemusí být ve vaší infrastruktuře dostupné.
Bezpečnostní a provozní doporučení
- Před úpravou Questu vytvořte zálohu souboru.
- Implementujte hlavní změny questů na živém serveru během nízkých hodin hráčů.
- Zkontrolujte syserr po každé kompilaci questu.
- Věnujte pozornost tureckému znaku a zkreslení kódování.
- Před hromadným mazáním operací příznaků questů souvisejících s daty hráčů si udělejte zálohu.
Tento článek je speciálně připraven pro PvPServer.