Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Гайд по файлу NewQuestData.xml для Lineage 2 сборка L2J_Mobius
* H; [( h1 [8 T
( @( F' A8 w- Z4 }0 m. s" A2 @! L- U3 o
Файл NewQuestData.xml является важным элементом серверной части Lineage 2, так как он определяет ключевые параметры для квестов. Он содержит информацию о начальных и конечных NPC, условиях выполнения, наградах и целях квестов. Этот гайд поможет вам понять, как работает файл, и как добавлять или редактировать квесты на сервере.# N0 O, Q: [) k- U9 F
1. Введение в структуру файлаФайл NewQuestData.xml используется для описания квестов, начиная с их идентификаторов и заканчивая подробными условиями, целями и наградами. Каждый квест имеет уникальный идентификатор (ID), тип, имя, а также ряд параметров, которые определяют его работу на сервере.( {+ y* }, _- U; o6 m" G( a
Пример записи квеста в NewQuestData.xml:( `# R# k, F" |. K, s
- <quest id="10020" type="1" name="Attack of the Enraged Forest" startNpcId="33963" endNpcId="34505">" E& T' I' o, `1 W
- <locations> Q' F+ }* H4 U
- <param name="startLocationId">1015</param>
) v0 O2 w; _6 \+ D/ N3 }' N - <param name="endLocationId">1002</param>
) m9 n/ x8 ^0 y3 Y - <param name="questLocationId">1020</param>
$ U; e+ p7 O9 s/ @4 l - </locations>
) \6 c- I- w4 l# g - <conditions>
% `6 }5 b; \* e& g - <param name="preQuestId">10019</param>" C( \1 k" u6 `8 R7 S6 K
- <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>
$ v7 n, n9 j1 D. P7 B3 B8 C - </conditions>
" ]3 { g( F, u& G& g9 m - <rewards>
5 p" }7 L- Z" I! L$ U, Z# K - <items> ?# v: j: H7 B6 [4 G0 e7 x! [8 `: j0 D* \
- <item id="57" count="240000" />; I: V7 X3 }. A. n G2 f0 N4 {
- </items>5 O9 Y$ n1 C' N/ [. ?3 u; ^9 Q
- <param name="rewardLevel">76</param>
, @& G# C g4 x" i - <param name="rewardSp">84</param>
9 J$ [2 y6 Z5 a# T - </rewards>; Z$ z; q) v* ^
- <goals>0 |+ }* S$ w6 ^0 o3 R
- <param name="goalCount">30</param>8 H! p1 Y; M: ^0 c! g
- <param name="goalString">Monsters on the Windy Hill</param>
+ y/ L4 l ]0 E9 D- y& q/ r8 v - </goals>
; ?- h4 ^/ N& B6 M$ V - </quest>- |+ n3 g7 m5 i1 l6 l' K
Скопировать код 2. Описание структуры2.1. Тег <quest>Каждый квест начинается с тега <quest>, который задаёт основные параметры квеста:
4 u( L4 l8 V6 V' n- k- id — уникальный идентификатор квеста. Например, id="10020" указывает, что это квест с ID 10020.
- type — тип квеста, обычно это 1 для стандартных квестов.
- name — название квеста, которое будет отображаться в игре.
- startNpcId — ID NPC, который начинает квест. Это тот NPC, к которому игрок должен обратиться для начала квеста.
- endNpcId — ID NPC, у которого завершается квест. Игрок должен вернуться к этому NPC для завершения задания.2 d+ a* V# o1 k! o) t
2.2. Тег <locations>В этом блоке указываются ключевые локации, связанные с квестом:7 g+ F& Y3 o" g6 G& e2 |0 ?; K
/ I" R2 l. N# J1 y( S6 W# ]9 h( I; s- G+ @
- <param name="startLocationId"> — место, где игрок начинает квест.
- <param name="endLocationId"> — место, где квест заканчивается.
- <param name="questLocationId"> — основная локация выполнения квеста. Это может быть область, где нужно убить монстров или выполнить другую задачу.) V9 U$ r5 {/ N. s% h
2.3. Тег <conditions>Этот блок определяет условия для начала квеста:: T, A; S1 _) h2 Z+ q8 n3 r
- <param name="preQuestId"> — ID предыдущего квеста, который должен быть завершён для начала текущего. Если значение задано, игрок должен завершить этот квест перед тем, как начать новый.
- <param name="classIds"> — список ID классов, которые могут принять этот квест. Здесь указаны ID классов, имеющих право начать квест.
7 a6 X6 T1 T# ^$ ^: z; F 2.4. Тег <rewards>Блок наград описывает, что игрок получит за выполнение квеста:6 F2 J. \; Q) ^# t
- <items> — внутренняя секция с наградами в виде предметов.
) `2 j/ W( B8 i6 z- <item id="57" count="240000" /> — предмет, который игрок получит. В данном случае это адена (ID 57) в количестве 240 000.
) L+ s/ B1 o) Y# B x) w0 g/ v
- <param name="rewardLevel"> — минимальный уровень игрока для получения награды.
- <param name="rewardSp"> — количество SP (Skill Points), которые игрок получит за выполнение квеста.* S" O2 U/ }: }9 _6 t j
2.5. Тег <goals>Этот блок определяет цели квеста:5 O s; S6 ~6 }/ ^) X$ J" J
- <param name="goalCount"> — количество целей для выполнения, например, сколько монстров нужно убить.
- <param name="goalString"> — описание цели. Это текст, который объясняет, что нужно сделать (например, убить монстров на определённой территории).
, y* \" t7 k- ~) c7 n- A
3. Пример полного квеста. c4 }$ |1 c) b) J. f
* T. J- F2 n( {6 f- J) k# c9 IПредположим, вы хотите создать новый квест, где игрок должен убить 10 демонов и получить награду:) s3 S/ G1 u4 d* A: e2 c/ g' o
- <quest id="10101" type="1" name="Demon Hunt" startNpcId="34001" endNpcId="34001">
6 G& N1 q% o, i4 I/ v0 v7 f( X% X - <locations>
e! O& w& e' Y* u4 }/ ^' ], R - <param name="startLocationId">1015</param>% o3 p j( g, s3 j) s
- <param name="endLocationId">1015</param>
) J0 ^2 g! {& N; I0 e - <param name="questLocationId">1020</param>0 ]0 a& m% r0 S* ]. [
- </locations>% T$ R- _6 i( A; P/ G- `
- <conditions>5 W# o `- I/ e) }. j9 K" |
- <param name="preQuestId">10099</param>
; c# M: o0 n4 u9 v# N3 i. _ - <param name="classIds">1;2;3;4;5</param>
( w; B9 q6 h( K( w- ? - </conditions>
/ [$ Y) y7 s: w& F5 V - <rewards>
1 X, t& q0 y+ S0 m; c, ~: d/ m - <items>5 b( N+ W1 g# G& Q. q; `# O
- <item id="57" count="50000" />- @8 ~# R) M+ b* B# }: `2 w2 W
- </items>
. G1 J' R* ^% l! I5 c - <param name="rewardLevel">50</param>- m. }2 p$ T- ^9 M
- <param name="rewardSp">1000</param>3 \) J) K+ Z2 `6 v% i% [
- </rewards> y: T- }0 v* X0 Y: L' }
- <goals>
6 C5 d" @1 i6 O5 j - <param name="goalCount">10</param>
0 W; F. J# {! E; d/ |- [ - <param name="goalString">Demons in the cursed forest</param>( v" Y. ~0 v! a% ]4 r' ^
- </goals>
* |% x) n/ h, ?" s* Y - </quest>6 y: R" Y6 ~& X9 k
Скопировать код Здесь: g& T, p, h! R( ^+ }, D
- ID квеста: 10101.
- Название квеста: "Demon Hunt".
- Начальный и конечный NPC: Жрец с ID 34001.
- Локации: игрок начнет и закончит квест в одной и той же локации (ID 1015).
- Условие начала: игрок должен завершить квест с ID 10099.
- Цель: убить 10 демонов в заколдованном лесу.
- Награда: 50 000 аден и 1000 SP." l/ S3 t1 e t4 h( N9 o- Y
4. Частые ошибки и их решения- Некорректные ID — убедитесь, что все ID NPC, предметов и локаций существуют в базе данных.
- Несовместимость классов — если квест доступен только для определенных классов, проверьте, правильно ли вы указали их ID в classIds.
- Цели не выполняются — проверьте правильность параметров в <goals>, убедитесь, что все цели прописаны верно./ r( k9 C0 T4 b! ]$ k O" w! M5 ~
5. ЗаключениеФайл NewQuestData.xml является важной частью механики квестов на сервере Lineage 2. Правильная настройка параметров, таких как ID, условия и цели, позволяет создавать уникальные квесты с интересными наградами. Этот гайд поможет вам уверенно добавлять и редактировать квесты на вашем сервере.
# f6 A7 N. ?) M! K
: V! }4 e# C1 o# N7 |# h8 F8 j |