Top.Mail.Ru

[html, xml] Гайд по файлу NewQuestData.xml для Lineage 2 сборка L2J_Mobius

[Скопировать ссылку]
Astraliya Опубликовано 2024-10-19 08:02:14 | Показать все сообщения |Режим чтения Распечатать Назад Вперед

Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!

Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться

x
Гайд по файлу NewQuestData.xml для Lineage 2 сборка L2J_Mobius
4 o& w" y, \- g* Y0 N. Y, \6 h9 w$ I4 y) ]# ?
9 r# \$ Z& Q* X$ ~4 K8 a" O# l6 i
Файл NewQuestData.xml является важным элементом серверной части Lineage 2, так как он определяет ключевые параметры для квестов. Он содержит информацию о начальных и конечных NPC, условиях выполнения, наградах и целях квестов. Этот гайд поможет вам понять, как работает файл, и как добавлять или редактировать квесты на сервере.' x; ?9 Q  @& i9 F) h" c. a

1. Введение в структуру файлаФайл NewQuestData.xml используется для описания квестов, начиная с их идентификаторов и заканчивая подробными условиями, целями и наградами. Каждый квест имеет уникальный идентификатор (ID), тип, имя, а также ряд параметров, которые определяют его работу на сервере.
+ J* [) _, T8 B: BПример записи квеста в NewQuestData.xml:! d& a) x; O- D7 e
  1. <quest id="10020" type="1" name="Attack of the Enraged Forest" startNpcId="33963" endNpcId="34505">
    & e: K8 w3 q1 x4 G4 X. C  W" [
  2.         <locations>  C* o3 f. V$ ~: w0 @5 S
  3.                 <param name="startLocationId">1015</param>
    , q' g8 f- S8 e# z
  4.                 <param name="endLocationId">1002</param>
    2 f& R9 U' B. K& `$ y
  5.                 <param name="questLocationId">1020</param># e# g% O4 S: j9 x+ e: f
  6.         </locations>
    9 w7 R! N" G0 j. g& e3 C* M
  7.         <conditions>" F5 q8 s' v2 c" f
  8.                 <param name="preQuestId">10019</param>2 P9 c3 x8 R; ?7 p0 p
  9.                 <param name="classIds">2;3;5;6;8;9;12;13;14;16;17;20;21;23;24;27;28;30;33;34;36;37;40;41;43;46;48;51;52;55;57;127;128;129;130</param>- g: n/ @- y& q/ a9 m
  10.         </conditions>
    ! H3 [2 U- |* |1 H, {) G
  11.         <rewards># L  V4 H5 i$ p/ I
  12.                 <items>4 c0 G% Y' ^) C; ]
  13.                         <item id="57" count="240000" />
    + d7 f" d9 K6 m9 ?0 G  Z
  14.                 </items>" Y6 p; p+ i* e
  15.                 <param name="rewardLevel">76</param>
    5 b- R7 o  T8 J! [) z# X7 f5 K8 h
  16.                 <param name="rewardSp">84</param>5 M9 b$ V* h1 V. O
  17.         </rewards>
    4 ?3 X2 V% D" c/ Z
  18.         <goals>" q$ H! i# Y, U* m! {2 B" m
  19.                 <param name="goalCount">30</param>
    ) r. C% \9 `% K8 ?* F- `
  20.                 <param name="goalString">Monsters on the Windy Hill</param>
    + I3 i/ ?, x$ _0 U
  21.         </goals>6 Q# U$ z+ Q: ?7 s. n9 {. k9 ?% ]
  22. </quest>8 j! L* y9 e4 c; Q3 B
Скопировать код

2. Описание структуры2.1. Тег <quest>Каждый квест начинается с тега <quest>, который задаёт основные параметры квеста:$ ]5 C4 x3 q& l7 E) L6 d
  • id — уникальный идентификатор квеста. Например, id="10020" указывает, что это квест с ID 10020.
  • type — тип квеста, обычно это 1 для стандартных квестов.
  • name — название квеста, которое будет отображаться в игре.
  • startNpcId — ID NPC, который начинает квест. Это тот NPC, к которому игрок должен обратиться для начала квеста.
  • endNpcId — ID NPC, у которого завершается квест. Игрок должен вернуться к этому NPC для завершения задания.* n. A, w. ]; b- ]( c
2.2. Тег <locations>В этом блоке указываются ключевые локации, связанные с квестом:% B) J) B% ^' }2 e
- U" X0 ~# ?; J$ G6 `
  • <param name="startLocationId"> — место, где игрок начинает квест.
  • <param name="endLocationId"> — место, где квест заканчивается.
  • <param name="questLocationId"> — основная локация выполнения квеста. Это может быть область, где нужно убить монстров или выполнить другую задачу.
    ! K. y6 \  C; @1 v) s) p7 U
2.3. Тег <conditions>Этот блок определяет условия для начала квеста:
$ V4 ?- K* x  J
  • <param name="preQuestId"> — ID предыдущего квеста, который должен быть завершён для начала текущего. Если значение задано, игрок должен завершить этот квест перед тем, как начать новый.
  • <param name="classIds"> — список ID классов, которые могут принять этот квест. Здесь указаны ID классов, имеющих право начать квест.- `" I6 k: N& t+ V: g' e
2.4. Тег <rewards>Блок наград описывает, что игрок получит за выполнение квеста:& v  a( f- s. ]6 a' `8 b
  • <items> — внутренняя секция с наградами в виде предметов.. G  n0 O. s6 J" N$ _
    • <item id="57" count="240000" /> — предмет, который игрок получит. В данном случае это адена (ID 57) в количестве 240 000.1 z" y( m6 Z% ~6 q1 t
  • <param name="rewardLevel"> — минимальный уровень игрока для получения награды.
  • <param name="rewardSp"> — количество SP (Skill Points), которые игрок получит за выполнение квеста.; G" M1 u0 O' U1 }, r
2.5. Тег <goals>Этот блок определяет цели квеста:
0 a$ ]4 g* d% z+ D
  • <param name="goalCount"> — количество целей для выполнения, например, сколько монстров нужно убить.
  • <param name="goalString"> — описание цели. Это текст, который объясняет, что нужно сделать (например, убить монстров на определённой территории).& a9 A1 R3 d5 y1 `. O

3. Пример полного квеста
- w6 l# }7 T; e. \/ N+ Z. W# C5 O7 P! V- E0 e
Предположим, вы хотите создать новый квест, где игрок должен убить 10 демонов и получить награду:
: Y; y! r5 V% @/ ?
  1. <quest id="10101" type="1" name="Demon Hunt" startNpcId="34001" endNpcId="34001">2 E% F8 ~8 j, c6 j" S9 v- ~
  2.         <locations>  H6 x0 A3 |& b: Q* T  {. C
  3.                 <param name="startLocationId">1015</param>
    9 O- b7 W1 d0 b/ ^% J6 {
  4.                 <param name="endLocationId">1015</param>
    - y1 e* r# l" V; n, r6 s  p+ |
  5.                 <param name="questLocationId">1020</param>& r7 d! t, D, {4 h, Z( l
  6.         </locations>
    7 ]2 g8 `2 t# E  `/ V: u
  7.         <conditions>
    : B7 F8 e% y% p
  8.                 <param name="preQuestId">10099</param>
    # \' B* t9 d" f7 n" b. d
  9.                 <param name="classIds">1;2;3;4;5</param>
    , P" l4 m; C  ?+ a" U
  10.         </conditions>
    $ x- c: j% |9 u. Y
  11.         <rewards>+ @  g1 m9 b% B2 E' y
  12.                 <items>
    8 e' c. W3 ?% @9 C9 c3 V2 f: X
  13.                         <item id="57" count="50000" />
    : R, K% z/ Z* c4 x* D
  14.                 </items>
      d! ~0 J3 ^7 v' `$ `' y4 @
  15.                 <param name="rewardLevel">50</param>7 y1 I1 w. P; m! L6 i6 U. D
  16.                 <param name="rewardSp">1000</param>4 K! E8 j( [9 Y: L  A
  17.         </rewards>
    & T- R( m& n* p3 r
  18.         <goals>" c9 A0 Q+ H2 X4 C! U: E
  19.                 <param name="goalCount">10</param>
    $ o: k$ D! Q# |+ I! g! ^& m
  20.                 <param name="goalString">Demons in the cursed forest</param>$ f0 t/ A) h5 f( G" R% m7 ]7 N/ l
  21.         </goals>7 q& ?8 f) Q5 ?9 r, x
  22. </quest>
    . U5 g1 i! u( d& @
Скопировать код
Здесь:
4 h+ e3 w2 t& Z0 R$ s5 b
  • ID квеста: 10101.
  • Название квеста: "Demon Hunt".
  • Начальный и конечный NPC: Жрец с ID 34001.
  • Локации: игрок начнет и закончит квест в одной и той же локации (ID 1015).
  • Условие начала: игрок должен завершить квест с ID 10099.
  • Цель: убить 10 демонов в заколдованном лесу.
  • Награда: 50 000 аден и 1000 SP.6 ^$ t: Q% t+ T0 N

4. Частые ошибки и их решения
  • Некорректные ID — убедитесь, что все ID NPC, предметов и локаций существуют в базе данных.
  • Несовместимость классов — если квест доступен только для определенных классов, проверьте, правильно ли вы указали их ID в classIds.
  • Цели не выполняются — проверьте правильность параметров в <goals>, убедитесь, что все цели прописаны верно., w" Y6 ~% {2 t5 S& C

5. ЗаключениеФайл NewQuestData.xml является важной частью механики квестов на сервере Lineage 2. Правильная настройка параметров, таких как ID, условия и цели, позволяет создавать уникальные квесты с интересными наградами. Этот гайд поможет вам уверенно добавлять и редактировать квесты на вашем сервере.  y5 r* H9 k( W0 V( k: {: A
$ X2 a9 k! K+ x. ]( h* u
Чтобы ответить, вам надо авторизироваться в системе Вход | Зарегистрироваться

Правил начисления баллов

  • Выдающийся вклад

    Прилагайте постоянные усилия для процветания форума в течение длительного времени или много раз выдвигайте конструктивные предложения.
  • Авторитет сайта

    Участники, внесшие выдающийся вклад в работу форума

подписок0

подписчиков0

постов9

Опубликовать
Сектор творческих людей
Горячая линия

638638758

С понедельника по воскресенье с 9:00 до 23:00

Обратной связь

admin@artace.ru Онлайн

QR-код

Powered by Discuz! X3.5© 2001-2021 Comsenz Inc.