Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Гайд по файлу NewQuestData.xml для Lineage 2 сборка L2J_Mobius# L" @# ]8 T$ t7 ~1 B) O
+ x1 g8 Z( ?7 W2 F! V1 u2 S$ U, B
, ?2 I; s- e `& g f% KФайл NewQuestData.xml является важным элементом серверной части Lineage 2, так как он определяет ключевые параметры для квестов. Он содержит информацию о начальных и конечных NPC, условиях выполнения, наградах и целях квестов. Этот гайд поможет вам понять, как работает файл, и как добавлять или редактировать квесты на сервере.
4 Y2 [# m/ [$ ` 1. Введение в структуру файлаФайл NewQuestData.xml используется для описания квестов, начиная с их идентификаторов и заканчивая подробными условиями, целями и наградами. Каждый квест имеет уникальный идентификатор (ID), тип, имя, а также ряд параметров, которые определяют его работу на сервере.* q6 M* l6 E4 T# r, t% L& @1 U
Пример записи квеста в NewQuestData.xml:
. P7 ]2 z, |# J8 M. R- <quest id="10020" type="1" name="Attack of the Enraged Forest" startNpcId="33963" endNpcId="34505">, c8 K p" k1 l; {0 W9 O
- <locations>% ?& L+ O( l# p! I) `
- <param name="startLocationId">1015</param>
% k0 O" H( r4 H4 W1 r S - <param name="endLocationId">1002</param>/ Q, j: }; [8 r* C7 R5 O
- <param name="questLocationId">1020</param>
, Q3 x0 ~/ _1 g& ^, I- w: t5 r - </locations>3 m" c" \ j3 c% }# q/ c0 i
- <conditions>2 G9 z) Z% J' F, e/ E
- <param name="preQuestId">10019</param>6 ?0 w6 [ I& U: D5 H& {. ~
- <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>, P( H# c# B% ^9 \3 `
- </conditions>
) W1 t7 j0 \0 I* J$ I - <rewards>
; I9 ]0 y, ?5 O - <items>
2 l% _& S. x5 o* ]3 o- [: t - <item id="57" count="240000" />
7 s" ^1 O6 D1 q& q3 R - </items>( z/ b1 P. t0 @% }: A6 Z' |
- <param name="rewardLevel">76</param> F0 ?) K+ R1 P2 s5 h8 w+ j
- <param name="rewardSp">84</param>& p# t& X$ p6 r' l
- </rewards>% o8 C! @ o$ E6 [2 l6 \
- <goals>
* I/ `+ ^" q' d& ~ - <param name="goalCount">30</param>) h- G5 g K- C! u( \# D5 \ S7 l
- <param name="goalString">Monsters on the Windy Hill</param>( E6 A4 |- X; Y
- </goals>
7 a7 A% Q. s$ E5 Q$ e" z - </quest>
0 U, S1 ]$ p; P# u1 N" j
Скопировать код 2. Описание структуры2.1. Тег <quest>Каждый квест начинается с тега <quest>, который задаёт основные параметры квеста:% W, p5 m+ T$ ^7 t8 ]: [- Y# J* f# C
- id — уникальный идентификатор квеста. Например, id="10020" указывает, что это квест с ID 10020.
- type — тип квеста, обычно это 1 для стандартных квестов.
- name — название квеста, которое будет отображаться в игре.
- startNpcId — ID NPC, который начинает квест. Это тот NPC, к которому игрок должен обратиться для начала квеста.
- endNpcId — ID NPC, у которого завершается квест. Игрок должен вернуться к этому NPC для завершения задания.
1 B/ L+ h! v6 T% |5 y 2.2. Тег <locations>В этом блоке указываются ключевые локации, связанные с квестом:
! L1 L( n, q/ X( i& W6 X w( N1 R1 m8 P+ ?* p' I9 k, E" c
- <param name="startLocationId"> — место, где игрок начинает квест.
- <param name="endLocationId"> — место, где квест заканчивается.
- <param name="questLocationId"> — основная локация выполнения квеста. Это может быть область, где нужно убить монстров или выполнить другую задачу.& g+ {) D3 Y9 b8 q3 @& ]
2.3. Тег <conditions>Этот блок определяет условия для начала квеста:
! p) {& S! s5 d) M9 U& c& ?$ W- <param name="preQuestId"> — ID предыдущего квеста, который должен быть завершён для начала текущего. Если значение задано, игрок должен завершить этот квест перед тем, как начать новый.
- <param name="classIds"> — список ID классов, которые могут принять этот квест. Здесь указаны ID классов, имеющих право начать квест.2 e/ [( g& U9 [, v, W
2.4. Тег <rewards>Блок наград описывает, что игрок получит за выполнение квеста:
+ Y2 T3 p A0 A) S( R* n- <items> — внутренняя секция с наградами в виде предметов.: V9 f- Z' H1 d Z1 k% o
- <item id="57" count="240000" /> — предмет, который игрок получит. В данном случае это адена (ID 57) в количестве 240 000.. A, D% x" \. P7 M3 j4 A
- <param name="rewardLevel"> — минимальный уровень игрока для получения награды.
- <param name="rewardSp"> — количество SP (Skill Points), которые игрок получит за выполнение квеста.0 @# B3 l$ O6 y! X X
2.5. Тег <goals>Этот блок определяет цели квеста:
3 G9 C' o4 s& K+ q* g; g, f- <param name="goalCount"> — количество целей для выполнения, например, сколько монстров нужно убить.
- <param name="goalString"> — описание цели. Это текст, который объясняет, что нужно сделать (например, убить монстров на определённой территории).
* R) y+ k, d+ }& z7 U! O
3. Пример полного квеста) D5 u; ]7 I- Z
# M# V% L/ o5 ?7 l2 }Предположим, вы хотите создать новый квест, где игрок должен убить 10 демонов и получить награду:9 l' B7 N6 t3 [4 z
- <quest id="10101" type="1" name="Demon Hunt" startNpcId="34001" endNpcId="34001">
& v: q1 H! F' m" U4 ]' k - <locations>% l9 Z r- F. m7 a
- <param name="startLocationId">1015</param>; g& I3 j) N/ {' R& O. W
- <param name="endLocationId">1015</param>; ^: {/ S- w/ h+ o
- <param name="questLocationId">1020</param>$ j2 X y: @, F2 l3 ^& t
- </locations>% C$ m7 F. A" [
- <conditions>% P% n' {. y* X6 T
- <param name="preQuestId">10099</param>
2 |4 r* \ G; E$ k; e - <param name="classIds">1;2;3;4;5</param>
# [7 B/ V$ Z' m. F - </conditions>& a# U" P. \9 I7 h- { y- A4 f
- <rewards>
% s p2 n L, C3 l f - <items>/ l0 I$ S' f/ ]8 w* r8 ]* N
- <item id="57" count="50000" />
% j3 ~) l& T1 G - </items>
" c$ ?0 N$ \. M2 ]$ S - <param name="rewardLevel">50</param>
& \+ L; @9 r2 v - <param name="rewardSp">1000</param>
6 k- J4 G; w, x: I% a/ Y) o - </rewards>8 }7 q7 u$ t: @3 d
- <goals>! b$ v, z2 D, V6 K/ |
- <param name="goalCount">10</param>3 O- W0 g$ Q8 J4 g
- <param name="goalString">Demons in the cursed forest</param>
6 ? u/ K8 _2 ^$ x$ t - </goals>2 s4 O0 W. u% q7 P$ I2 V
- </quest>
! k0 W. E* _9 A" f. J
Скопировать код Здесь:. S. A$ I+ Y: m! S
- ID квеста: 10101.
- Название квеста: "Demon Hunt".
- Начальный и конечный NPC: Жрец с ID 34001.
- Локации: игрок начнет и закончит квест в одной и той же локации (ID 1015).
- Условие начала: игрок должен завершить квест с ID 10099.
- Цель: убить 10 демонов в заколдованном лесу.
- Награда: 50 000 аден и 1000 SP.
. V: O$ v7 y; J# ^3 n
4. Частые ошибки и их решения- Некорректные ID — убедитесь, что все ID NPC, предметов и локаций существуют в базе данных.
- Несовместимость классов — если квест доступен только для определенных классов, проверьте, правильно ли вы указали их ID в classIds.
- Цели не выполняются — проверьте правильность параметров в <goals>, убедитесь, что все цели прописаны верно.! y! R" | w+ q
5. ЗаключениеФайл NewQuestData.xml является важной частью механики квестов на сервере Lineage 2. Правильная настройка параметров, таких как ID, условия и цели, позволяет создавать уникальные квесты с интересными наградами. Этот гайд поможет вам уверенно добавлять и редактировать квесты на вашем сервере.8 z7 T; E) s" o# ]# |
: Z. \, x7 P$ |7 T' E8 x! z |