Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Гайд по файлу NewQuestData.xml для Lineage 2 сборка L2J_Mobius
`' Z; E% h( O+ R p3 Q) ^$ V' `/ e6 g% P- H& X7 k
6 ~/ q" u, m4 J0 V! {+ k) Y( j
Файл NewQuestData.xml является важным элементом серверной части Lineage 2, так как он определяет ключевые параметры для квестов. Он содержит информацию о начальных и конечных NPC, условиях выполнения, наградах и целях квестов. Этот гайд поможет вам понять, как работает файл, и как добавлять или редактировать квесты на сервере.
0 H% s& L1 Y2 m 1. Введение в структуру файлаФайл NewQuestData.xml используется для описания квестов, начиная с их идентификаторов и заканчивая подробными условиями, целями и наградами. Каждый квест имеет уникальный идентификатор (ID), тип, имя, а также ряд параметров, которые определяют его работу на сервере.: X; h$ w: u/ ?
Пример записи квеста в NewQuestData.xml:) ?2 a3 E9 M& u3 ^. }
- <quest id="10020" type="1" name="Attack of the Enraged Forest" startNpcId="33963" endNpcId="34505">; d* a+ N3 l1 e1 ], a }% [% g
- <locations>' q- e/ u" H F
- <param name="startLocationId">1015</param>
+ J8 P1 d o* b j5 g' _/ D5 v0 P1 B - <param name="endLocationId">1002</param>' Q4 C' y' K& B& [+ W, d: N
- <param name="questLocationId">1020</param>
3 V" z; A) k* y" y( c - </locations>
. K3 r5 Q1 {* h. V - <conditions>9 e1 }6 J- d+ V, b4 f7 _4 F) G' \
- <param name="preQuestId">10019</param>' [. @9 |5 l7 x/ ^8 j5 A6 Y0 p U2 {7 c
- <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>. t; q- G' l# K9 B% G* M5 S/ M" O
- </conditions>: L( c9 j7 a7 A( ~8 t, a& G
- <rewards>4 [# l7 d) ]* ]1 I
- <items>/ W/ i/ k( l4 }+ w' N
- <item id="57" count="240000" />0 v/ O4 b! w/ F) K
- </items>
1 Z7 @. d: w! Z6 ~& o) D1 L2 B; e - <param name="rewardLevel">76</param>, A" `: m5 e% h: Z7 E9 L4 ^) [
- <param name="rewardSp">84</param>
# I. F( W: z w; Q6 n; _2 U; { - </rewards>
9 e2 x; H! {* e b H; p9 t# D - <goals>
5 t. b1 U% |0 x8 F Q" N - <param name="goalCount">30</param>) f1 N# @$ y4 h4 G* j" E( t
- <param name="goalString">Monsters on the Windy Hill</param>
6 Q) J' {; o1 X - </goals>: K ]) M/ v$ D0 m% b
- </quest>$ H6 H3 r' U9 M- |( M, s/ \
Скопировать код 2. Описание структуры2.1. Тег <quest>Каждый квест начинается с тега <quest>, который задаёт основные параметры квеста:
% p( u4 k0 m* P$ P- id — уникальный идентификатор квеста. Например, id="10020" указывает, что это квест с ID 10020.
- type — тип квеста, обычно это 1 для стандартных квестов.
- name — название квеста, которое будет отображаться в игре.
- startNpcId — ID NPC, который начинает квест. Это тот NPC, к которому игрок должен обратиться для начала квеста.
- endNpcId — ID NPC, у которого завершается квест. Игрок должен вернуться к этому NPC для завершения задания.$ b, S9 `" s1 D$ i6 G
2.2. Тег <locations>В этом блоке указываются ключевые локации, связанные с квестом:0 a0 c* F! g9 j- i8 Y
( y* G* l0 t7 z8 _
- <param name="startLocationId"> — место, где игрок начинает квест.
- <param name="endLocationId"> — место, где квест заканчивается.
- <param name="questLocationId"> — основная локация выполнения квеста. Это может быть область, где нужно убить монстров или выполнить другую задачу.
% f9 o0 K b2 M 2.3. Тег <conditions>Этот блок определяет условия для начала квеста:5 d- e& q2 h9 |1 k
- <param name="preQuestId"> — ID предыдущего квеста, который должен быть завершён для начала текущего. Если значение задано, игрок должен завершить этот квест перед тем, как начать новый.
- <param name="classIds"> — список ID классов, которые могут принять этот квест. Здесь указаны ID классов, имеющих право начать квест.
4 L8 S) K- D( b" _5 x& q. d& [ 2.4. Тег <rewards>Блок наград описывает, что игрок получит за выполнение квеста:* M4 z- @3 p+ e( Q# G# C# M% B
- <items> — внутренняя секция с наградами в виде предметов.
# h! ?+ T6 T$ V& V7 U$ j0 U' t2 ~- <item id="57" count="240000" /> — предмет, который игрок получит. В данном случае это адена (ID 57) в количестве 240 000.
0 P h5 G+ A' @1 z" R& |" y s9 R
- <param name="rewardLevel"> — минимальный уровень игрока для получения награды.
- <param name="rewardSp"> — количество SP (Skill Points), которые игрок получит за выполнение квеста.6 N& m: w7 L$ E% @" F# G0 R
2.5. Тег <goals>Этот блок определяет цели квеста:
) M& [7 Y1 S3 ^0 j2 I- <param name="goalCount"> — количество целей для выполнения, например, сколько монстров нужно убить.
- <param name="goalString"> — описание цели. Это текст, который объясняет, что нужно сделать (например, убить монстров на определённой территории).( n& @% B2 `/ r/ ?! T1 I2 j" J
3. Пример полного квеста, [% o* [' r, h3 A
9 b5 f1 q( J6 h' o% y% ]7 pПредположим, вы хотите создать новый квест, где игрок должен убить 10 демонов и получить награду:
& ~7 X; ?, D6 |- <quest id="10101" type="1" name="Demon Hunt" startNpcId="34001" endNpcId="34001">! J/ `! N& P8 O0 ]9 k: u
- <locations>; `- _4 a! }/ U: `! [" T
- <param name="startLocationId">1015</param>, m" b" h+ {$ Y3 w! P/ \
- <param name="endLocationId">1015</param>
/ n3 x0 R+ L; N) J9 G - <param name="questLocationId">1020</param>
2 c$ ~/ M2 `2 Y0 b7 f z% s: O - </locations>3 z* h% x% z; T& K F! Q4 S
- <conditions>
4 t) X- m* ^1 V2 E- }( D# L2 q5 w: k - <param name="preQuestId">10099</param>
- Y* O6 H: S* A8 V - <param name="classIds">1;2;3;4;5</param>2 R) s- F. q8 l" o# f$ r
- </conditions>6 I5 O3 i5 g+ `7 {2 B* k; [: {. M. W
- <rewards>. y' q1 X3 Q5 S% s5 a2 q& X( r. d
- <items>3 b) P$ K# @7 ^, O
- <item id="57" count="50000" />
) p2 [7 _# t8 ^7 x b1 N) d - </items>7 M9 L& f2 i+ h1 v% `
- <param name="rewardLevel">50</param>
" S2 z6 [" X: b" V' |( G - <param name="rewardSp">1000</param>6 p8 @! O j9 _! X, w% \% |3 s
- </rewards>
- P7 x$ @9 ?. L2 R4 x6 a - <goals>
* h' c; T" F" }& [2 ? - <param name="goalCount">10</param>8 z" Y8 E; O4 Z; T
- <param name="goalString">Demons in the cursed forest</param>1 b* O: k9 ^8 h
- </goals>
; k2 W6 G! }) H - </quest>
. `2 h6 V3 v: C( u2 M3 R
Скопировать код Здесь:
# k2 V- j) T; ?- ID квеста: 10101.
- Название квеста: "Demon Hunt".
- Начальный и конечный NPC: Жрец с ID 34001.
- Локации: игрок начнет и закончит квест в одной и той же локации (ID 1015).
- Условие начала: игрок должен завершить квест с ID 10099.
- Цель: убить 10 демонов в заколдованном лесу.
- Награда: 50 000 аден и 1000 SP.5 v- _3 |2 H+ t
4. Частые ошибки и их решения- Некорректные ID — убедитесь, что все ID NPC, предметов и локаций существуют в базе данных.
- Несовместимость классов — если квест доступен только для определенных классов, проверьте, правильно ли вы указали их ID в classIds.
- Цели не выполняются — проверьте правильность параметров в <goals>, убедитесь, что все цели прописаны верно.: L0 x# w9 k9 i$ ?* n
5. ЗаключениеФайл NewQuestData.xml является важной частью механики квестов на сервере Lineage 2. Правильная настройка параметров, таких как ID, условия и цели, позволяет создавать уникальные квесты с интересными наградами. Этот гайд поможет вам уверенно добавлять и редактировать квесты на вашем сервере.( F9 }9 X$ \. y, P+ R
# J2 b# W; l w/ \
|