Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Гайд по файлу NewQuestData.xml для Lineage 2 сборка L2J_Mobius" O& n$ a* N( X, p* o
1 B+ l2 E1 u# M. ]
4 \ q. B. x+ o
Файл NewQuestData.xml является важным элементом серверной части Lineage 2, так как он определяет ключевые параметры для квестов. Он содержит информацию о начальных и конечных NPC, условиях выполнения, наградах и целях квестов. Этот гайд поможет вам понять, как работает файл, и как добавлять или редактировать квесты на сервере.
2 n @, M! E5 Z' K 1. Введение в структуру файлаФайл NewQuestData.xml используется для описания квестов, начиная с их идентификаторов и заканчивая подробными условиями, целями и наградами. Каждый квест имеет уникальный идентификатор (ID), тип, имя, а также ряд параметров, которые определяют его работу на сервере.
- x) Q4 e5 G% i& a3 nПример записи квеста в NewQuestData.xml:& d) a' j5 K4 Z' l# S
- <quest id="10020" type="1" name="Attack of the Enraged Forest" startNpcId="33963" endNpcId="34505">
* s$ g2 }% b, z8 ]7 l5 | - <locations>! Y8 N; i/ y5 e, y2 V9 z+ I3 h
- <param name="startLocationId">1015</param>$ j G3 S4 c9 x5 W4 S7 U; |
- <param name="endLocationId">1002</param>2 b8 k9 W p5 g9 _4 v+ i. `/ ~1 k
- <param name="questLocationId">1020</param>: S4 p" B/ }8 ]6 w& Y8 D
- </locations>
0 G$ h$ r0 I0 M1 { - <conditions>
4 d' H0 p; n# f7 O0 @ - <param name="preQuestId">10019</param>3 X2 _' I1 J" F7 K2 q8 n
- <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>
0 d6 g/ Q) x* O4 {3 G - </conditions>" s9 H" `% v% M# Q+ W: J: O
- <rewards>( I- W& Y! k/ ]
- <items>& w5 J' @; j' m( @6 J
- <item id="57" count="240000" />
2 ~1 _: A' I+ w2 L - </items>) F0 f" z- l4 H9 R
- <param name="rewardLevel">76</param>9 D8 `9 @0 e" H q S6 M% V0 z( R
- <param name="rewardSp">84</param>
2 n: f5 H+ v9 T& F$ O2 i - </rewards>( t( G0 S* v( f: ~
- <goals>- c( W; `8 G" r1 p( k! C+ i
- <param name="goalCount">30</param>! M9 p* N8 g( \- D4 J4 E3 z
- <param name="goalString">Monsters on the Windy Hill</param>, S3 p5 `$ F4 u: ]( z2 A: K
- </goals>
6 M; K% T5 @ V - </quest>
' D4 V( |$ o$ J3 R* I( k
Скопировать код 2. Описание структуры2.1. Тег <quest>Каждый квест начинается с тега <quest>, который задаёт основные параметры квеста:( p* r# G0 E6 e0 b B! X% v: h$ j
- id — уникальный идентификатор квеста. Например, id="10020" указывает, что это квест с ID 10020.
- type — тип квеста, обычно это 1 для стандартных квестов.
- name — название квеста, которое будет отображаться в игре.
- startNpcId — ID NPC, который начинает квест. Это тот NPC, к которому игрок должен обратиться для начала квеста.
- endNpcId — ID NPC, у которого завершается квест. Игрок должен вернуться к этому NPC для завершения задания.
+ N" J9 h9 m2 N% g% k" ?7 E6 t 2.2. Тег <locations>В этом блоке указываются ключевые локации, связанные с квестом:2 E, ^3 X% ^ h2 d# Y/ d* ~
, `- T+ P9 x5 i- <param name="startLocationId"> — место, где игрок начинает квест.
- <param name="endLocationId"> — место, где квест заканчивается.
- <param name="questLocationId"> — основная локация выполнения квеста. Это может быть область, где нужно убить монстров или выполнить другую задачу.
2 J9 B7 w: Q2 r; \3 `/ g$ t9 j 2.3. Тег <conditions>Этот блок определяет условия для начала квеста:, J& M# t: ^: {: f+ ?! Y
- <param name="preQuestId"> — ID предыдущего квеста, который должен быть завершён для начала текущего. Если значение задано, игрок должен завершить этот квест перед тем, как начать новый.
- <param name="classIds"> — список ID классов, которые могут принять этот квест. Здесь указаны ID классов, имеющих право начать квест.( K' _# _5 i' D- Z7 o4 O! ?
2.4. Тег <rewards>Блок наград описывает, что игрок получит за выполнение квеста:" ^% q- S# D( g! E' F
- <items> — внутренняя секция с наградами в виде предметов.
6 ^: }8 r& F F5 O& q) Y) Z. O- <item id="57" count="240000" /> — предмет, который игрок получит. В данном случае это адена (ID 57) в количестве 240 000.
, D0 T5 P' V7 e: k% k6 m
- <param name="rewardLevel"> — минимальный уровень игрока для получения награды.
- <param name="rewardSp"> — количество SP (Skill Points), которые игрок получит за выполнение квеста. N- s2 e$ D) e
2.5. Тег <goals>Этот блок определяет цели квеста:
1 Z: ]1 @1 z9 s, t3 n! l0 z- <param name="goalCount"> — количество целей для выполнения, например, сколько монстров нужно убить.
- <param name="goalString"> — описание цели. Это текст, который объясняет, что нужно сделать (например, убить монстров на определённой территории)., H! O! Z+ [9 q* G: v
3. Пример полного квеста
; G* C4 N" X* y& M6 u2 `, s H8 j
Предположим, вы хотите создать новый квест, где игрок должен убить 10 демонов и получить награду:2 _3 i" K7 w% M" t- ^# Y: c; g
- <quest id="10101" type="1" name="Demon Hunt" startNpcId="34001" endNpcId="34001">
2 }+ U) F( ?' \& h" ~+ ^ \ - <locations>
* U5 R/ o o d# o - <param name="startLocationId">1015</param>5 Q# A, \: G# h$ s( ~8 X+ w: @
- <param name="endLocationId">1015</param>! z. g% I& A% ~; A' {/ R& R
- <param name="questLocationId">1020</param>1 j& P# w9 s3 n( C, N! G4 x
- </locations>
$ P* P; X0 [3 p, l% Q3 @ - <conditions>! E( N" {- x; s% Y: ~# u Z! Z t: Y
- <param name="preQuestId">10099</param>
5 [6 `" }* F g# _7 r ` - <param name="classIds">1;2;3;4;5</param>
. q% M0 G7 \5 f2 A W - </conditions>
; {' W" F( f$ _) U# |- C - <rewards>
0 j8 l/ R% g& a- U9 y - <items>
4 ?( {$ u, b% n$ k" M( Z9 g1 N) ? - <item id="57" count="50000" />2 I8 Z6 S0 @5 l& w
- </items># ~- A) b' a& g: c% p) K( a1 [" {
- <param name="rewardLevel">50</param>
1 V9 ^' k7 n$ u1 M) E - <param name="rewardSp">1000</param>
7 r" S! |" z" \ - </rewards>
6 X8 |& V m+ D - <goals>
) e# j+ c0 Y& L1 ~! e - <param name="goalCount">10</param>
+ }; @" S6 a2 g* q- l - <param name="goalString">Demons in the cursed forest</param>
) R% e6 i* U1 O - </goals>7 x, q- O7 R6 W2 v S+ e+ x
- </quest>
) b0 ^: j! ]' O( |$ J+ G3 V
Скопировать код Здесь:) }) F. `5 z) |- V
- ID квеста: 10101.
- Название квеста: "Demon Hunt".
- Начальный и конечный NPC: Жрец с ID 34001.
- Локации: игрок начнет и закончит квест в одной и той же локации (ID 1015).
- Условие начала: игрок должен завершить квест с ID 10099.
- Цель: убить 10 демонов в заколдованном лесу.
- Награда: 50 000 аден и 1000 SP.) p* u7 L4 m, V2 w
4. Частые ошибки и их решения- Некорректные ID — убедитесь, что все ID NPC, предметов и локаций существуют в базе данных.
- Несовместимость классов — если квест доступен только для определенных классов, проверьте, правильно ли вы указали их ID в classIds.
- Цели не выполняются — проверьте правильность параметров в <goals>, убедитесь, что все цели прописаны верно.) h& p5 D" t5 l( {
5. ЗаключениеФайл NewQuestData.xml является важной частью механики квестов на сервере Lineage 2. Правильная настройка параметров, таких как ID, условия и цели, позволяет создавать уникальные квесты с интересными наградами. Этот гайд поможет вам уверенно добавлять и редактировать квесты на вашем сервере.
6 c5 m' Z) e6 ^; C0 n: T# f7 |' }/ r+ s+ v
|