Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Гайд по файлу NewQuestData.xml для Lineage 2 сборка L2J_Mobius. x. x$ {. A' E) \
7 H9 N" Z- B$ w* X% _
" D& q( W* o: k3 `( AФайл NewQuestData.xml является важным элементом серверной части Lineage 2, так как он определяет ключевые параметры для квестов. Он содержит информацию о начальных и конечных NPC, условиях выполнения, наградах и целях квестов. Этот гайд поможет вам понять, как работает файл, и как добавлять или редактировать квесты на сервере.' d+ \2 V4 h$ c4 \( \; j
1. Введение в структуру файлаФайл NewQuestData.xml используется для описания квестов, начиная с их идентификаторов и заканчивая подробными условиями, целями и наградами. Каждый квест имеет уникальный идентификатор (ID), тип, имя, а также ряд параметров, которые определяют его работу на сервере.
! J7 K$ Y! |3 }+ a1 ]Пример записи квеста в NewQuestData.xml:
* p `- g5 B6 x! |, p; _- <quest id="10020" type="1" name="Attack of the Enraged Forest" startNpcId="33963" endNpcId="34505">' w7 ]8 e# y7 G- L$ ]
- <locations>
! W- M5 U' C! F4 Z$ [3 _5 b' } - <param name="startLocationId">1015</param>6 a* o) Q$ l# Q1 e0 ^/ R T! Y
- <param name="endLocationId">1002</param>2 Y) ?/ Q3 l8 P/ j3 `! B2 A3 b+ \
- <param name="questLocationId">1020</param>
) R/ S5 u+ M" n7 V. M4 t - </locations>
3 m' a& _0 J' L6 m/ T, U+ l - <conditions># ?+ T! ]) r# ~% Q( ^
- <param name="preQuestId">10019</param>
0 }6 _ G5 I7 X4 I, _ - <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 b* t# z" }7 u/ R; a
- </conditions>2 X; t: \" F! a: M* f4 G/ p
- <rewards>9 x: d1 P8 J6 v; L5 D1 R+ J4 o4 ^" u
- <items>: U1 {* e9 M4 Y' K( P0 T# ]
- <item id="57" count="240000" />
: q) f* U% M Z8 l# B! \9 z - </items>
& j- ~9 e" N+ s - <param name="rewardLevel">76</param>
. g; M' m( }, f2 S - <param name="rewardSp">84</param>" ]5 q7 ?: S. ]7 G% r' X
- </rewards>
1 d+ u' A! q# z A; W - <goals>
0 J( \, b2 F% k - <param name="goalCount">30</param>
, ]7 j5 {/ z2 o1 p$ x - <param name="goalString">Monsters on the Windy Hill</param>6 I, a; X; u, \2 E7 s6 T" ~0 g
- </goals>
" q8 _- W# r) ~ - </quest>/ `' Y1 |9 b |6 }5 m
Скопировать код 2. Описание структуры2.1. Тег <quest>Каждый квест начинается с тега <quest>, который задаёт основные параметры квеста:' Y) {8 S6 x3 J$ O6 t
- id — уникальный идентификатор квеста. Например, id="10020" указывает, что это квест с ID 10020.
- type — тип квеста, обычно это 1 для стандартных квестов.
- name — название квеста, которое будет отображаться в игре.
- startNpcId — ID NPC, который начинает квест. Это тот NPC, к которому игрок должен обратиться для начала квеста.
- endNpcId — ID NPC, у которого завершается квест. Игрок должен вернуться к этому NPC для завершения задания.
- ~0 N- M1 ^+ h7 G+ P) O 2.2. Тег <locations>В этом блоке указываются ключевые локации, связанные с квестом:6 E. d) r8 W- @6 \% Y2 d( n
$ w& s7 W- h6 I+ @- <param name="startLocationId"> — место, где игрок начинает квест.
- <param name="endLocationId"> — место, где квест заканчивается.
- <param name="questLocationId"> — основная локация выполнения квеста. Это может быть область, где нужно убить монстров или выполнить другую задачу.7 i* C/ b5 G5 F! r! z _
2.3. Тег <conditions>Этот блок определяет условия для начала квеста:: g* g7 a* R: k& B% ?- j$ S$ H! S
- <param name="preQuestId"> — ID предыдущего квеста, который должен быть завершён для начала текущего. Если значение задано, игрок должен завершить этот квест перед тем, как начать новый.
- <param name="classIds"> — список ID классов, которые могут принять этот квест. Здесь указаны ID классов, имеющих право начать квест./ b. F% c% a* L2 |6 c, K
2.4. Тег <rewards>Блок наград описывает, что игрок получит за выполнение квеста:
% i* _5 b" D0 c6 e$ Q, v- <items> — внутренняя секция с наградами в виде предметов." ^) [9 |! n' g Q+ o
- <item id="57" count="240000" /> — предмет, который игрок получит. В данном случае это адена (ID 57) в количестве 240 000.) H; u, P& O2 g& n
- <param name="rewardLevel"> — минимальный уровень игрока для получения награды.
- <param name="rewardSp"> — количество SP (Skill Points), которые игрок получит за выполнение квеста.* e2 p* Q3 S! A. S, W2 i
2.5. Тег <goals>Этот блок определяет цели квеста:
) G! N" V, V0 T h% ^- <param name="goalCount"> — количество целей для выполнения, например, сколько монстров нужно убить.
- <param name="goalString"> — описание цели. Это текст, который объясняет, что нужно сделать (например, убить монстров на определённой территории).% B: I+ S. W; i, o R6 ~
3. Пример полного квеста
* _6 z _: Y$ B$ c2 k* _! u8 |0 f0 E: v4 x
Предположим, вы хотите создать новый квест, где игрок должен убить 10 демонов и получить награду:
; f8 N) L$ a# H0 S. I h- <quest id="10101" type="1" name="Demon Hunt" startNpcId="34001" endNpcId="34001">) C N6 z) [# i! Y4 P
- <locations>
! |- g# H/ m' W( Z# r$ A# _) y% R - <param name="startLocationId">1015</param>! O: n2 f) }6 J7 P' N$ P) ?
- <param name="endLocationId">1015</param>
1 ~+ p7 ^- I3 ^' U) i - <param name="questLocationId">1020</param>
% ]4 t$ g" d2 P9 `5 w, r: F" R - </locations>/ w: v0 X! d- L# L
- <conditions># J6 y/ z$ `( t( y
- <param name="preQuestId">10099</param>
- L, u# Y% D7 e! j7 P - <param name="classIds">1;2;3;4;5</param>
) q/ n$ m# \$ P5 v# P - </conditions>/ [% a( L5 m R4 K h
- <rewards>3 b7 f+ o- H& Q* B* p0 X# r9 S
- <items>
B0 C [1 L, M W - <item id="57" count="50000" />
F/ t* w+ L! z" L8 V - </items>
/ k) Y" i7 X3 [# T4 k4 L/ ] - <param name="rewardLevel">50</param>
( [* G% j; {6 Y - <param name="rewardSp">1000</param>
$ V. f& J: ~$ L. Q7 }: {" W - </rewards>3 y/ Y, A) D, H/ Q5 l! N
- <goals>
B, ]' t1 n# T% L) m - <param name="goalCount">10</param>$ @1 o' Y- d& q1 b' V" B" k! f
- <param name="goalString">Demons in the cursed forest</param>
, N ~8 s/ y( ^ - </goals>
4 [' D8 S9 C3 `% s - </quest>
) V8 G3 Y5 A8 X8 S# @- N |
Скопировать код Здесь:
7 l9 ^* g* s) B. Z- ID квеста: 10101.
- Название квеста: "Demon Hunt".
- Начальный и конечный NPC: Жрец с ID 34001.
- Локации: игрок начнет и закончит квест в одной и той же локации (ID 1015).
- Условие начала: игрок должен завершить квест с ID 10099.
- Цель: убить 10 демонов в заколдованном лесу.
- Награда: 50 000 аден и 1000 SP.3 a9 M+ J/ l% a4 D9 D$ w l; ~
4. Частые ошибки и их решения- Некорректные ID — убедитесь, что все ID NPC, предметов и локаций существуют в базе данных.
- Несовместимость классов — если квест доступен только для определенных классов, проверьте, правильно ли вы указали их ID в classIds.
- Цели не выполняются — проверьте правильность параметров в <goals>, убедитесь, что все цели прописаны верно.7 f/ D/ e/ T4 T& y& p
5. ЗаключениеФайл NewQuestData.xml является важной частью механики квестов на сервере Lineage 2. Правильная настройка параметров, таких как ID, условия и цели, позволяет создавать уникальные квесты с интересными наградами. Этот гайд поможет вам уверенно добавлять и редактировать квесты на вашем сервере.
8 y7 P5 L4 O& t1 v; K+ U: x0 g, \! R5 d% K* }" a
|