Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Гайд по файлу NewQuestData.xml для Lineage 2 сборка L2J_Mobius
0 z% N4 e, c# ~. t- J6 k& N6 G, S/ I+ D. y3 E9 A
- y9 J- K: `' \, N: gФайл NewQuestData.xml является важным элементом серверной части Lineage 2, так как он определяет ключевые параметры для квестов. Он содержит информацию о начальных и конечных NPC, условиях выполнения, наградах и целях квестов. Этот гайд поможет вам понять, как работает файл, и как добавлять или редактировать квесты на сервере./ K2 g. L H$ c6 K
1. Введение в структуру файлаФайл NewQuestData.xml используется для описания квестов, начиная с их идентификаторов и заканчивая подробными условиями, целями и наградами. Каждый квест имеет уникальный идентификатор (ID), тип, имя, а также ряд параметров, которые определяют его работу на сервере.$ B0 U9 i1 W* q% Z
Пример записи квеста в NewQuestData.xml:3 x3 F _: F% W( C$ M, v
- <quest id="10020" type="1" name="Attack of the Enraged Forest" startNpcId="33963" endNpcId="34505">8 Y, H- Q$ k- v3 N) I5 q$ x
- <locations>
7 Q# p# J9 @7 L9 Y) J - <param name="startLocationId">1015</param>: N6 C3 x0 h: }, a& m
- <param name="endLocationId">1002</param>
9 W5 |9 i9 `% S - <param name="questLocationId">1020</param>
" l2 U: t3 G' ~* _# e - </locations>, [& V; L1 L7 o' r# C
- <conditions>, ?! h/ A1 k4 o- y) K
- <param name="preQuestId">10019</param>; e& U1 W4 D0 F) [& y
- <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>
' x+ s8 Y- P5 c, j, e( s& n - </conditions>; l9 u: Y2 p; B2 [: ^8 j
- <rewards>
6 T' ] ~6 c( ]) p) V, { - <items>
& i- A. x1 C9 m0 \ - <item id="57" count="240000" />$ O' j n' l) t( A d Z
- </items>
8 t" N/ e# U7 W. W - <param name="rewardLevel">76</param>1 j$ ^0 \6 T# I3 ]2 P4 Z
- <param name="rewardSp">84</param># e! o7 d8 w0 q7 D- }
- </rewards>
, B6 { N% e8 w3 x5 J3 l; q - <goals>
$ I+ j/ f5 Y6 q8 t4 _ - <param name="goalCount">30</param>( {3 U% l0 j6 D6 S( K& H2 d; Z
- <param name="goalString">Monsters on the Windy Hill</param>( J& J& j. e$ S; Z: {
- </goals>0 d& J; l9 I- Q" K8 l7 A
- </quest>
[8 l i. I% t/ o
Скопировать код 2. Описание структуры2.1. Тег <quest>Каждый квест начинается с тега <quest>, который задаёт основные параметры квеста:
1 }% A$ f+ W* l7 _4 e( h( r- id — уникальный идентификатор квеста. Например, id="10020" указывает, что это квест с ID 10020.
- type — тип квеста, обычно это 1 для стандартных квестов.
- name — название квеста, которое будет отображаться в игре.
- startNpcId — ID NPC, который начинает квест. Это тот NPC, к которому игрок должен обратиться для начала квеста.
- endNpcId — ID NPC, у которого завершается квест. Игрок должен вернуться к этому NPC для завершения задания.8 d$ i$ G# B) K5 l, C5 {! K
2.2. Тег <locations>В этом блоке указываются ключевые локации, связанные с квестом:
D! o4 H/ T+ h1 F/ G$ G. C2 h" }1 z$ P M0 @ M" h6 T$ k
- <param name="startLocationId"> — место, где игрок начинает квест.
- <param name="endLocationId"> — место, где квест заканчивается.
- <param name="questLocationId"> — основная локация выполнения квеста. Это может быть область, где нужно убить монстров или выполнить другую задачу.; J# Y0 F3 D& S
2.3. Тег <conditions>Этот блок определяет условия для начала квеста:
5 C. W& u) w) T' Z; }- <param name="preQuestId"> — ID предыдущего квеста, который должен быть завершён для начала текущего. Если значение задано, игрок должен завершить этот квест перед тем, как начать новый.
- <param name="classIds"> — список ID классов, которые могут принять этот квест. Здесь указаны ID классов, имеющих право начать квест.
: x+ x/ w$ Q: i/ w8 w5 T7 e 2.4. Тег <rewards>Блок наград описывает, что игрок получит за выполнение квеста:
' [% J' x- w- H# B2 b) y# q2 y! r9 o; g- <items> — внутренняя секция с наградами в виде предметов.
8 [" i4 s: {+ T; q. L" \# l$ g' h4 G- <item id="57" count="240000" /> — предмет, который игрок получит. В данном случае это адена (ID 57) в количестве 240 000.& n" H8 T# l2 J
- <param name="rewardLevel"> — минимальный уровень игрока для получения награды.
- <param name="rewardSp"> — количество SP (Skill Points), которые игрок получит за выполнение квеста.
3 ?" J5 ] B) p, y6 y+ B1 [1 \ 2.5. Тег <goals>Этот блок определяет цели квеста:0 c% k* [" S U5 W# v" C. J6 M+ u
- <param name="goalCount"> — количество целей для выполнения, например, сколько монстров нужно убить.
- <param name="goalString"> — описание цели. Это текст, который объясняет, что нужно сделать (например, убить монстров на определённой территории).
$ e A9 p+ @9 r4 H7 m: m! y5 {
3. Пример полного квеста
" d: M3 c7 L) v3 V2 g+ C( m, j" ^! i/ Z* t2 }9 Y4 @* `3 `6 U
Предположим, вы хотите создать новый квест, где игрок должен убить 10 демонов и получить награду:2 c' V' X( K9 S+ w
- <quest id="10101" type="1" name="Demon Hunt" startNpcId="34001" endNpcId="34001">
& p R" ~3 g4 g - <locations>
: _ v9 M+ @ C6 a - <param name="startLocationId">1015</param>
5 j7 }: }5 ~. P7 g: Z - <param name="endLocationId">1015</param>( ~; M, F, C5 m: Q4 ]5 H
- <param name="questLocationId">1020</param>$ s. h5 P e( q% d8 G/ p
- </locations>
3 \% R8 O; f) d - <conditions>
' X1 j) W# L4 ]2 [; M - <param name="preQuestId">10099</param>! w" a! ~8 b1 k4 v6 K" O
- <param name="classIds">1;2;3;4;5</param>
& {9 i8 K6 R2 e2 [+ w% k* ~, S4 G2 v - </conditions>
5 T9 K9 J* ]2 V5 y4 H9 f5 m - <rewards>9 T: ^* w3 k' p
- <items>
4 G: B+ i8 ] h; u - <item id="57" count="50000" />
) n \" w% d# K" u - </items>
4 u1 A) u/ ~$ P: { - <param name="rewardLevel">50</param>
9 {* S: h7 r4 t% p3 c Y - <param name="rewardSp">1000</param>
2 r9 W: i, ~% r" w! W% H - </rewards>
4 ?, o" Q8 ~: C5 r# P, V - <goals>
+ P9 L3 |5 I* x0 w- J& ] - <param name="goalCount">10</param>' s- |9 D; `9 ~6 @8 }/ H
- <param name="goalString">Demons in the cursed forest</param>
! W p& e) [9 |0 E- M O - </goals>& u: E* t7 T) t$ o, L1 y
- </quest>
8 q4 M+ _$ S& K9 Y9 X6 j6 X; A
Скопировать код Здесь:
4 P7 I, C o$ ]- ID квеста: 10101.
- Название квеста: "Demon Hunt".
- Начальный и конечный NPC: Жрец с ID 34001.
- Локации: игрок начнет и закончит квест в одной и той же локации (ID 1015).
- Условие начала: игрок должен завершить квест с ID 10099.
- Цель: убить 10 демонов в заколдованном лесу.
- Награда: 50 000 аден и 1000 SP.( e; Q+ m5 {0 n* ]
4. Частые ошибки и их решения- Некорректные ID — убедитесь, что все ID NPC, предметов и локаций существуют в базе данных.
- Несовместимость классов — если квест доступен только для определенных классов, проверьте, правильно ли вы указали их ID в classIds.
- Цели не выполняются — проверьте правильность параметров в <goals>, убедитесь, что все цели прописаны верно.% ~6 L+ ~. ] v3 X9 R$ [5 Z
5. ЗаключениеФайл NewQuestData.xml является важной частью механики квестов на сервере Lineage 2. Правильная настройка параметров, таких как ID, условия и цели, позволяет создавать уникальные квесты с интересными наградами. Этот гайд поможет вам уверенно добавлять и редактировать квесты на вашем сервере.
1 |: ^2 v) L g) b- r6 @3 F+ ]% h! @7 f! G" c
|