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

Як вирішити помилки квесту Metin2? Посібник з перезавантаження та створення квесту

Yazdır

Як вирішити помилки квесту Metin2?

Посібник щодо перезавантаження квестів, невідповідності NPC, функціональних помилок і проблем компіляції квестів.

Квести, розмови NPC, системи подій, біолог, телепортація, ринок, стеження за босом, щоденні винагороди та багато спеціальних систем на серверах Metin2. квест Він працює через файли. Таким чином, навіть невелика помилка, зроблена на стороні квесту, може призвести до того, що NPC не відреагує, подія не розпочнеться або файл каналу syserr постійно створюватиме помилки.

Найбільша проблема з помилками квестів полягає в тому, що помилка часто здається загальною, наприклад «NPC не працює». Але справжньою причиною може бути неправильний vnum, відсутня функція, несправний синтаксис, несправна структура стану або квест взагалі не скомпільовано.

Просте пояснення: Файл квесту - це файл інструкцій, який повідомляє NPC, що робити. Якщо інструкція неправильна, NPC не може відповісти правильно.

1. Де знайти файли квестів?

Шлях файлів Quest може відрізнятися залежно від інфраструктури сервера. Найпоширеніші каталоги:

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

Файли квестів зазвичай .квест з розширенням. Файли, створені після компіляції об'єкт Зберігається під папкою.

2. Спочатку перевірте, щоб зрозуміти помилку квесту

Якщо квест не працює, спершу слід перевірити відповідний файл syserr каналу.

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

Щоб переглянути реальні помилки, які виникають після перезавантаження квесту:

tail -f syserr

Приклади поширених помилок у квесті:

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

3. Як скомпілювати квест?

Коли ви додаєте новий файл квесту, недостатньо просто закинути файл у папку. Квест потрібно скласти.

Спочатку увійдіть в каталог квестів:

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

Приклад складання одиночного квесту:

./qc quest_adi.quest

Шлях qc може відрізнятися в деяких системах:

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

Назва сценарію, яка використовується для компіляції всіх квестів, залежить від інфраструктури. приклад:

sh make.sh
Важливо: Складання всіх квестів без потреби на великих серверах може бути ризикованим. Більш контрольовано компілювати лише відредагований файл квесту.

4. Як перезавантажити квест?

Після того, як квест складено, його можна перезавантажити в грі за допомогою персонажа GM.

/reload q

У деяких випадках просто перезавантаження недостатньо. Особливо якщо структура стану, прапор квесту або початкові умови змінилися, може знадобитися повторно ввести персонажа або перезапустити канал.

Загальний порядок повинен бути таким:

  • Редагувати файл квесту
  • Перевірте синтаксис
  • Скомпілюйте файл Quest за допомогою qc
  • Виконайте /reload q у грі
  • Перевірте Syserr
  • Перевірте поведінку NPC або події

5. NPC Quest не працює Проблема

Якщо нічого не відбувається, коли ви натискаєте на NPC, слід перевірити наступні пункти:

  • Чи правильний NPC vnum, використаний у квесті?
  • Чи справді NPC з’являються на карті на стороні сервера?
  • Квест складено?
  • Чи виник syserr після /reload q?
  • Чи правильний стан початку квесту?
  • Код перестає виконуватися через неправильну умову в квесті?

Приклад тригерної структури 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
end

тут 20011 Значення vnum NPC. Якщо NPC vnum неправильний, квест не працюватиме.

6. немає такої помилки функції квесту

в Сисеррі немає такої функції квесту Якщо його видно, функція, яка використовується в квесті, не визначена на сервері.

Причини:

  • Квест взято з іншої інфраструктури.
  • Відповідна функція квесту не додається на стороні джерела.
  • Допоміжна функція, яка повинна бути в questlib.lua, відсутня.
  • Назва функції написана з помилкою.

У цьому випадку рішення полягає в тому, щоб перевірити, чи дійсно функція існує на сервері. Квести, взяті з інших файлів, не слід вважати безпосередньо сумісними.

7. Синтаксичні помилки квесту

Найпоширенішими помилками у файлах Quest є:

  • кінець недостатнє або надмірне використання
  • Не закриваючи лапки
  • Неправильно, коли написано умову
  • Використання турецьких символів або неправильне кодування
  • Використання функцій, взятих з іншої системи без адаптації

Приклад несправної структури:

say("Merhaba oyuncu)

Правильна структура:

say("Merhaba oyuncu")

8. Проблеми з прапорцями квесту

Деякі квести зберігають прапор на персонажі або обліковому записі. Квест не починається або може здатися завершеним через неправильне значення прапора.

Наприклад, якщо квест уже виконано, NPC може більше не показувати меню. У цьому випадку потрібно відзначити відповідний прапорець квесту.

Увага: Масове видалення позначки квесту на живому сервері слід виконувати обережно. Неправильна операція може пошкодити записи квестів, подій або нагород гравців.

Поширені помилки

  • Ви забули помістити файл Quest у папку та скомпілювати його
  • Виконання /reload q, незважаючи на помилку компіляції
  • Неправильне значення NPC vnum
  • Використання квестів, взятих з інших файлів без їх адаптації
  • Думаючи, що NPC не працює, не перевіривши прапорець квесту
  • Квест здається правильним, але не працює, оскільки кодування пошкоджено.

FAQ

Я зробив /reload q, але квест не спрацював, чому?
Можливо, квест взагалі не було скомпільовано, можливо, виникла помилка під час компіляції, або він може бути невидимим у програвачі через умову стану/прапора.

Я натискаю на NPC, а меню не з’являється. Проблема в NPC?
Не завжди. Навіть якщо vnum NPC правильний, квест може бути не скомпільований, написаний неправильно або запущений через певну умову.

Чому квест, який я отримав з іншого сервера, видає помилку?
Оскільки використовувані функції, структура questlib або підтримка вихідного коду можуть бути недоступні у вашій інфраструктурі.

Рекомендації з техніки безпеки та експлуатації

  • Зробіть резервну копію файлу перед редагуванням Quest.
  • Внесіть основні зміни в квест на живому сервері під час малої кількості гравців.
  • Перевіряйте syserr після кожної компіляції квесту.
  • Зверніть увагу на турецькі символи та спотворення кодування.
  • Зробіть резервну копію, перш ніж масово видаляти операції прапорців квесту, пов’язані з даними гравців.

Ця стаття спеціально підготовлена для PvPServer.

Bu cevap yeterince yardımcı oldu mu?

Oyla

overlay spinner