How to Solve Metin2 Quest Errors?
Guide for quest reload, NPC unresponsiveness, function errors and quest compilation issues.
Quests, NPC conversations, event systems, biologist, teleportation, market, boss tracking, daily rewards and many special systems on Metin2 servers. quest It works through files. Therefore, even a small mistake made on the quest side may cause the NPC not to react, the event not to start, or the channel syserr file to constantly produce errors.
The biggest problem with quest errors is that the error often seems general, such as “NPC is not working”. But the real reason may be wrong vnum, missing function, broken syntax, faulty state structure or the quest not being compiled at all.
1. Where to Find Quest Files?
The path of Quest files may vary depending on the server infrastructure. Commonly used directories are:
/usr/game/share/locale/turkey/quest/ /home/game/share/locale/turkey/quest/ /usr/metin2/share/locale/turkey/quest/
Quest files are usually .quest with extension. Files created after compilation object It is kept under the folder.
2. First Check to Understand Quest Error
If a quest is not working, the relevant channel syserr file should be checked first.
cd /usr/game/channel1/core1 tail -n 100 syserr
To watch live errors that occur after reloading the quest:
tail -f syserr
Common quest error examples:
no such quest function attempt to call field syntax error unexpected symbol quest not found when condition error
3. How to Compile Quest?
When you add a new quest file, it is not enough to just throw the file into the folder. The quest needs to be compiled.
First enter the quest directory:
cd /usr/game/share/locale/turkey/quest
Example for compiling a single quest:
./qc quest_adi.quest
The qc path may be different on some systems:
/usr/game/share/locale/turkey/quest/qc quest_adi.quest
The script name used to compile all quests varies depending on the infrastructure. Example:
sh make.sh
4. How to Reload Quest?
After the quest is compiled, it can be reloaded in-game with a GM character.
/reload q
In some cases, just reloading is not enough. Especially if the state structure, quest flag or starting conditions have changed, it may be necessary to re-enter the character or restart the channel.
The general order should be as follows:
- Edit quest file
- Check syntax
- Compile Quest file with qc
- Execute /reload q in-game
- Check out Syserr
- Test NPC or event behavior
5. NPC Quest Not Working Problem
If nothing happens when you click on the NPC, the following points should be checked:
- Is the NPC vnum used in the quest correct?
- Do NPCs really spawn on the map on the server side?
- Is Quest compiled?
- Did syserr occur after /reload q?
- Is the beginning of the quest state correct?
- Does the code quit executing due to wrong condition in Quest?
Example NPC trigger structure:
quest ornek_npc begin
state start begin
when 20011.chat."Ornek Menu" begin
say_title("Ornek NPC")
say("Bu bir test mesajidir.")
end
end
endhere 20011 NPC vnum value. If the NPC vnum is incorrect, the quest will not work.
6. no such quest function error
in Syserr no such quest function If it is seen, the function used in the quest is not defined on the server.
Reasons:
- Quest is taken from another infrastructure.
- The relevant quest function is not added on the Source side.
- The helper function that should be in questlib.lua is missing.
- The function name is misspelled.
In this case, the solution is to check whether the function actually exists on the server. Quests taken from other files should not be considered directly compatible.
7. Quest Syntax Errors
The most common typos in Quest files are:
- end under or overuse
- Not closing quotation marks
- Wrong when condition written
- Using Turkish characters or bad encoding
- Using functions taken from another system without adaptation
Example faulty structure:
say("Merhaba oyuncu)Correct structure:
say("Merhaba oyuncu")8. Quest Flag Problems
Some quests keep a flag on the character or account. The quest does not start or may appear to be completed due to incorrect flag value.
For example, if a quest has already been completed, the NPC may not show the menu again. In this case, the relevant quest flag should be checked.
Common Mistakes
- Forgetting to put the Quest file in a folder and compile it
- Doing /reload q even though there is a compilation error
- Wrong NPC vnum value
- Using quests taken from other files without adapting them
- Thinking that an NPC is not working without checking the quest flag
- The quest appears to be correct but does not work because the encoding is corrupted.
FAQ
I did /reload q but the quest didn't work, why?
Quest may not have been compiled at all, it may have given an error during compilation, or it may not be visible in the player due to the state/flag condition.
I click on the NPC and the menu does not appear. Is the problem with the NPC?
Not always. Even if the NPC vnum is correct, the quest may not be compiled, written incorrectly, or running due to a condition.
Why does the quest I received from another server give an error?
Because the functions used, questlib structure or source supports may not be available in your infrastructure.
Safety and Operations Recommendations
- Make a backup of the file before editing Quest.
- Implement major quest changes on the live server during low player hours.
- Check syserr after every quest compilation.
- Pay attention to Turkish character and encoding distortions.
- Take a backup before bulk deleting quest flag operations related to player data.
This article is specially prepared for PvPServer.