Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Гайд по файлу NewQuestData.xml для Lineage 2 сборка L2J_Mobius
) ~2 d' K" E2 o# e3 b z
4 a: Q) d+ [1 H* v/ `2 k( m
$ S' [ i1 d' A( KФайл NewQuestData.xml является важным элементом серверной части Lineage 2, так как он определяет ключевые параметры для квестов. Он содержит информацию о начальных и конечных NPC, условиях выполнения, наградах и целях квестов. Этот гайд поможет вам понять, как работает файл, и как добавлять или редактировать квесты на сервере.' L% E0 |5 {3 e
1. Введение в структуру файлаФайл NewQuestData.xml используется для описания квестов, начиная с их идентификаторов и заканчивая подробными условиями, целями и наградами. Каждый квест имеет уникальный идентификатор (ID), тип, имя, а также ряд параметров, которые определяют его работу на сервере.
( q7 Q% d5 J. k) R+ i8 bПример записи квеста в NewQuestData.xml:
" K5 d3 P/ }1 y0 c% ?8 D3 q/ h- <quest id="10020" type="1" name="Attack of the Enraged Forest" startNpcId="33963" endNpcId="34505">
) E2 `0 p3 D6 G7 F: c - <locations># J+ b, z% e% z
- <param name="startLocationId">1015</param>. R$ Z3 G/ L# |% V7 X7 F
- <param name="endLocationId">1002</param>: Q5 {, Q! T0 Q1 z
- <param name="questLocationId">1020</param>7 p S! D! m+ z7 `$ E
- </locations>
9 M/ K1 I+ u; R - <conditions>4 n6 F+ q+ Z; V/ q0 Y# v
- <param name="preQuestId">10019</param>0 v2 t; w- M7 y$ P
- <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>( Y2 A, m7 M; Z% N/ H( q K1 y
- </conditions>7 S, @6 F2 h% M3 q
- <rewards>$ A: f3 b* p4 Z% x4 }( }& K" T% P
- <items>
# C; _) ^ j; |& n. ^1 ? - <item id="57" count="240000" />
+ l" ` Z5 x# l# \0 x0 i - </items>' ~9 P) L5 t1 l1 B$ j( c) d" b0 Q
- <param name="rewardLevel">76</param>
; l% J2 \: W. a0 {# @1 K - <param name="rewardSp">84</param>
# {* w: p+ P6 a7 c- [- ` l6 U - </rewards>: |* ^) E$ w R+ p8 `& Y0 j- \
- <goals># d/ j" x, z8 o
- <param name="goalCount">30</param>
. T u8 X. s' s+ ]! R5 x - <param name="goalString">Monsters on the Windy Hill</param>
) h* t8 K8 B% U" T2 j - </goals># F4 b- A4 ?$ J: \0 H8 |1 a
- </quest>- P" B9 `8 o% {% X
Скопировать код 2. Описание структуры2.1. Тег <quest>Каждый квест начинается с тега <quest>, который задаёт основные параметры квеста:2 A( J3 Z1 U2 ~
- id — уникальный идентификатор квеста. Например, id="10020" указывает, что это квест с ID 10020.
- type — тип квеста, обычно это 1 для стандартных квестов.
- name — название квеста, которое будет отображаться в игре.
- startNpcId — ID NPC, который начинает квест. Это тот NPC, к которому игрок должен обратиться для начала квеста.
- endNpcId — ID NPC, у которого завершается квест. Игрок должен вернуться к этому NPC для завершения задания.
: B4 o: q. L& y) E# |0 [ 2.2. Тег <locations>В этом блоке указываются ключевые локации, связанные с квестом:
& Y" b. ~8 y4 v. D& b
4 U8 B2 J% w E8 D- <param name="startLocationId"> — место, где игрок начинает квест.
- <param name="endLocationId"> — место, где квест заканчивается.
- <param name="questLocationId"> — основная локация выполнения квеста. Это может быть область, где нужно убить монстров или выполнить другую задачу.
9 l. Y2 C( I. r i% Q 2.3. Тег <conditions>Этот блок определяет условия для начала квеста:9 {$ S( A) K: C( B
- <param name="preQuestId"> — ID предыдущего квеста, который должен быть завершён для начала текущего. Если значение задано, игрок должен завершить этот квест перед тем, как начать новый.
- <param name="classIds"> — список ID классов, которые могут принять этот квест. Здесь указаны ID классов, имеющих право начать квест.
& f: _7 |+ F* N# X. F! G 2.4. Тег <rewards>Блок наград описывает, что игрок получит за выполнение квеста:
, i: X/ h2 c w# R5 x' K- <items> — внутренняя секция с наградами в виде предметов.
; ~$ _ e0 Y" P- <item id="57" count="240000" /> — предмет, который игрок получит. В данном случае это адена (ID 57) в количестве 240 000.* S! p8 B1 E. O- c: M
- <param name="rewardLevel"> — минимальный уровень игрока для получения награды.
- <param name="rewardSp"> — количество SP (Skill Points), которые игрок получит за выполнение квеста.
/ z$ y+ n( X4 l. W- ~' v+ J 2.5. Тег <goals>Этот блок определяет цели квеста:4 O+ O3 d& D8 E+ m
- <param name="goalCount"> — количество целей для выполнения, например, сколько монстров нужно убить.
- <param name="goalString"> — описание цели. Это текст, который объясняет, что нужно сделать (например, убить монстров на определённой территории).% s9 \ y, T3 V& }9 c/ k
3. Пример полного квеста
7 l4 f- O- J8 q/ g6 G; j
- R3 X/ Q: z) [1 T |Предположим, вы хотите создать новый квест, где игрок должен убить 10 демонов и получить награду:& k3 |; t0 C; [5 Z( j3 c9 ~, \) }
- <quest id="10101" type="1" name="Demon Hunt" startNpcId="34001" endNpcId="34001">; g; W4 Q# [2 ]3 N: g
- <locations>
' g5 ?' }! e" O9 K; h! A - <param name="startLocationId">1015</param>4 ? i5 M, F; u) p
- <param name="endLocationId">1015</param>4 G; Q9 `" _" o
- <param name="questLocationId">1020</param>3 k. b3 ]+ ^. w5 c3 x; h: e" U
- </locations>9 z- x9 d% f: s3 N
- <conditions>9 Y8 r7 x3 h9 L0 N; [& ~* @
- <param name="preQuestId">10099</param>
/ F0 b3 q1 j* b( y4 C - <param name="classIds">1;2;3;4;5</param>
3 T8 c2 I: i# L t6 b- c5 i( R9 `9 R - </conditions>$ f7 e% R/ C8 n) k) @9 n
- <rewards>. i; A9 L' C; I
- <items>1 l# F. T; T, H8 L# [3 H. f
- <item id="57" count="50000" />& b2 }- ~, A. x" n8 S! W0 b, R/ K
- </items>
4 w: @8 ~9 j; K1 r* h# |/ m - <param name="rewardLevel">50</param>+ _+ k. P* l! h' z! Y, l
- <param name="rewardSp">1000</param>6 A# [! s, g+ R7 B: l. c
- </rewards>
% K% J" z. w5 { - <goals>) O! r/ J& X9 A9 q. y' X i
- <param name="goalCount">10</param>
( ~+ a6 K. @4 G' F - <param name="goalString">Demons in the cursed forest</param>, f% b' s8 \ N# P
- </goals>2 z' E4 @; I0 H5 L) o7 T
- </quest>
: D% R: X9 b% f
Скопировать код Здесь:
. G1 A# E% ^9 Z; H/ J4 }* E5 f- ID квеста: 10101.
- Название квеста: "Demon Hunt".
- Начальный и конечный NPC: Жрец с ID 34001.
- Локации: игрок начнет и закончит квест в одной и той же локации (ID 1015).
- Условие начала: игрок должен завершить квест с ID 10099.
- Цель: убить 10 демонов в заколдованном лесу.
- Награда: 50 000 аден и 1000 SP.9 u6 a w; Y) d! Z6 m$ Y/ N( W
4. Частые ошибки и их решения- Некорректные ID — убедитесь, что все ID NPC, предметов и локаций существуют в базе данных.
- Несовместимость классов — если квест доступен только для определенных классов, проверьте, правильно ли вы указали их ID в classIds.
- Цели не выполняются — проверьте правильность параметров в <goals>, убедитесь, что все цели прописаны верно.
4 `: c) p, X0 U% X$ l0 M1 H
5. ЗаключениеФайл NewQuestData.xml является важной частью механики квестов на сервере Lineage 2. Правильная настройка параметров, таких как ID, условия и цели, позволяет создавать уникальные квесты с интересными наградами. Этот гайд поможет вам уверенно добавлять и редактировать квесты на вашем сервере.& a* |& a' M* [- a) A" a; X+ }# h. L
, p! _$ ~/ H; ? |