Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Гайд по файлу NewQuestData.xml для Lineage 2 сборка L2J_Mobius
, E8 _. q8 d3 N6 K) a2 W' W$ V
$ T7 R& @: W% o6 B9 ]# v! t m; @6 q" X/ [- }! a F8 m4 x, B8 t u. O5 d
Файл NewQuestData.xml является важным элементом серверной части Lineage 2, так как он определяет ключевые параметры для квестов. Он содержит информацию о начальных и конечных NPC, условиях выполнения, наградах и целях квестов. Этот гайд поможет вам понять, как работает файл, и как добавлять или редактировать квесты на сервере.
/ {* \- R) ~& C) S 1. Введение в структуру файлаФайл NewQuestData.xml используется для описания квестов, начиная с их идентификаторов и заканчивая подробными условиями, целями и наградами. Каждый квест имеет уникальный идентификатор (ID), тип, имя, а также ряд параметров, которые определяют его работу на сервере.
8 K& X; [+ M2 y. t* G9 FПример записи квеста в NewQuestData.xml:& K3 z s8 x- ]* X
- <quest id="10020" type="1" name="Attack of the Enraged Forest" startNpcId="33963" endNpcId="34505">, M( [& q z& Z& h2 b2 n
- <locations>, Z/ f' A- f6 F! y" l, ?: |" x
- <param name="startLocationId">1015</param> C, D2 s' q" l
- <param name="endLocationId">1002</param>
, s! m/ f% K" v- Z, d - <param name="questLocationId">1020</param>2 E" h' Z4 C% S' m) z
- </locations>
, h" i3 K7 j, H" V - <conditions>" x$ o5 C: J! }- @) W8 q
- <param name="preQuestId">10019</param>
, h8 W9 k( s, J* Y( M - <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>" c7 a3 e* W; [7 d! g8 N* U' K' K; ^
- </conditions>+ w" _, I+ i% N: V
- <rewards>
0 K3 u$ e3 Y8 ? - <items>( O3 }4 N0 r8 o6 |6 o' H
- <item id="57" count="240000" />
6 W1 J8 e3 C8 v3 } - </items>
/ V5 w1 j( W8 s - <param name="rewardLevel">76</param>+ l5 `4 M; g# q, b% D
- <param name="rewardSp">84</param>
6 b1 J$ y f5 O( G& ?, A" Y - </rewards>5 I7 K; @* s8 i+ }! v
- <goals>
* |# _3 \ r( |/ r, v' B: n - <param name="goalCount">30</param>; }% n2 m" e1 u3 c2 A. b7 s
- <param name="goalString">Monsters on the Windy Hill</param>4 |% @) x9 N; N# z2 u4 M
- </goals>' M! C! \0 w# k2 Q7 [1 t) `3 i
- </quest>
. E7 U) s* a2 l3 ~* ~" C% C7 C
Скопировать код 2. Описание структуры2.1. Тег <quest>Каждый квест начинается с тега <quest>, который задаёт основные параметры квеста:
8 ?7 V/ _7 j2 D9 A# a+ a' z1 t- id — уникальный идентификатор квеста. Например, id="10020" указывает, что это квест с ID 10020.
- type — тип квеста, обычно это 1 для стандартных квестов.
- name — название квеста, которое будет отображаться в игре.
- startNpcId — ID NPC, который начинает квест. Это тот NPC, к которому игрок должен обратиться для начала квеста.
- endNpcId — ID NPC, у которого завершается квест. Игрок должен вернуться к этому NPC для завершения задания.$ @4 s4 n: m! o A/ g6 B1 t# w
2.2. Тег <locations>В этом блоке указываются ключевые локации, связанные с квестом:2 Z2 ]/ n; O- a) j, k: C
- Y* `' Y5 W1 j5 n7 h
- <param name="startLocationId"> — место, где игрок начинает квест.
- <param name="endLocationId"> — место, где квест заканчивается.
- <param name="questLocationId"> — основная локация выполнения квеста. Это может быть область, где нужно убить монстров или выполнить другую задачу.8 }4 j' O; d, ]' Q+ _# q
2.3. Тег <conditions>Этот блок определяет условия для начала квеста:
( l. K" h- }7 ^/ Y7 H/ t1 S- <param name="preQuestId"> — ID предыдущего квеста, который должен быть завершён для начала текущего. Если значение задано, игрок должен завершить этот квест перед тем, как начать новый.
- <param name="classIds"> — список ID классов, которые могут принять этот квест. Здесь указаны ID классов, имеющих право начать квест.
2 x. K% Q. U7 G4 X+ \ 2.4. Тег <rewards>Блок наград описывает, что игрок получит за выполнение квеста:
! U8 q0 ~/ {' I0 @5 h3 x- <items> — внутренняя секция с наградами в виде предметов." U" s/ r6 }" l. u
- <item id="57" count="240000" /> — предмет, который игрок получит. В данном случае это адена (ID 57) в количестве 240 000., j: v0 w) U& M6 J% g
- <param name="rewardLevel"> — минимальный уровень игрока для получения награды.
- <param name="rewardSp"> — количество SP (Skill Points), которые игрок получит за выполнение квеста.4 Q: h' Y; u/ e$ R
2.5. Тег <goals>Этот блок определяет цели квеста:2 m5 A- p: Q1 R, g, L& J0 x' J
- <param name="goalCount"> — количество целей для выполнения, например, сколько монстров нужно убить.
- <param name="goalString"> — описание цели. Это текст, который объясняет, что нужно сделать (например, убить монстров на определённой территории).
% M( B; N h! `- X$ {4 h
3. Пример полного квеста2 g9 A9 f5 p6 o$ i4 S
4 g8 [( u9 G$ e2 G8 a! r: `Предположим, вы хотите создать новый квест, где игрок должен убить 10 демонов и получить награду:
6 B0 q" `4 [0 I% C) \ w- <quest id="10101" type="1" name="Demon Hunt" startNpcId="34001" endNpcId="34001">
3 g/ f; y. Y- i5 [. S - <locations>* p$ Y! {6 b. _" ]4 v5 c
- <param name="startLocationId">1015</param>
5 W* z4 F- v9 D0 j& l% L - <param name="endLocationId">1015</param>* V/ _. Z |# E, w1 c
- <param name="questLocationId">1020</param>
6 u6 e# L8 j1 d: A - </locations>
) j* j% ?# d$ H - <conditions>
* ^" p2 r+ o+ ~1 F# l! O - <param name="preQuestId">10099</param>4 b' e5 v( |' i3 s0 Y" L1 q# r
- <param name="classIds">1;2;3;4;5</param>
* o2 y" W" V7 J4 X1 a+ n/ g - </conditions>9 S& [# X' ^3 N& n0 I
- <rewards>
g p) S3 X# G" N' g/ V - <items>$ N7 A5 w- ]) q) [, j- F! x* N
- <item id="57" count="50000" />( [5 ^5 h" g g; A( V
- </items>( b. N; u5 C9 w6 g, }* Q- R
- <param name="rewardLevel">50</param>3 F& L% \! \& G4 W& D6 f; ?
- <param name="rewardSp">1000</param>: D: A* p- Z M) f* g
- </rewards>
3 I! S5 X* j' \1 @0 M# c - <goals>
, X/ e5 ?1 ]8 _7 J; m/ V4 \, { - <param name="goalCount">10</param>
. F9 I+ f; U: e/ o6 k - <param name="goalString">Demons in the cursed forest</param>0 [. Z2 C9 N: C9 I: x! E: X7 e8 ^
- </goals>& j1 b5 t ~- V8 @3 Z
- </quest>
* }- V U/ m% v, U
Скопировать код Здесь:: G" {% ?3 G2 U5 X
- ID квеста: 10101.
- Название квеста: "Demon Hunt".
- Начальный и конечный NPC: Жрец с ID 34001.
- Локации: игрок начнет и закончит квест в одной и той же локации (ID 1015).
- Условие начала: игрок должен завершить квест с ID 10099.
- Цель: убить 10 демонов в заколдованном лесу.
- Награда: 50 000 аден и 1000 SP.
, h1 l, Y8 H, h% k& Q, ]
4. Частые ошибки и их решения- Некорректные ID — убедитесь, что все ID NPC, предметов и локаций существуют в базе данных.
- Несовместимость классов — если квест доступен только для определенных классов, проверьте, правильно ли вы указали их ID в classIds.
- Цели не выполняются — проверьте правильность параметров в <goals>, убедитесь, что все цели прописаны верно.
& e/ i1 Y i8 i0 K
5. ЗаключениеФайл NewQuestData.xml является важной частью механики квестов на сервере Lineage 2. Правильная настройка параметров, таких как ID, условия и цели, позволяет создавать уникальные квесты с интересными наградами. Этот гайд поможет вам уверенно добавлять и редактировать квесты на вашем сервере.
. S9 c+ `" V- b. z, l% P: D- A! |/ L. E! y) J' X/ T
|