Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Гайд по файлу NewQuestData.xml для Lineage 2 сборка L2J_Mobius
, i X2 I0 ?+ J% J% ~/ X9 L$ C; l6 c# R. c- P, ]+ p3 p& A9 S$ C, `
, @' o9 U) |+ M7 p
Файл NewQuestData.xml является важным элементом серверной части Lineage 2, так как он определяет ключевые параметры для квестов. Он содержит информацию о начальных и конечных NPC, условиях выполнения, наградах и целях квестов. Этот гайд поможет вам понять, как работает файл, и как добавлять или редактировать квесты на сервере.4 [' ? u( b0 e2 }/ E
1. Введение в структуру файлаФайл NewQuestData.xml используется для описания квестов, начиная с их идентификаторов и заканчивая подробными условиями, целями и наградами. Каждый квест имеет уникальный идентификатор (ID), тип, имя, а также ряд параметров, которые определяют его работу на сервере.
8 h3 h; x, P$ mПример записи квеста в NewQuestData.xml:
/ {! Q/ @$ p5 E3 Q% b$ U- <quest id="10020" type="1" name="Attack of the Enraged Forest" startNpcId="33963" endNpcId="34505">. ?5 L+ B4 v# k$ a
- <locations>
6 l( {( B9 R5 g" Z3 S7 F2 c2 ` - <param name="startLocationId">1015</param>
5 d( x3 ]8 f' B+ k( D8 f - <param name="endLocationId">1002</param>& i0 w' n U5 C
- <param name="questLocationId">1020</param>
9 E- [0 n+ L7 i& |; E- q4 z |+ R: Q - </locations>% o8 E& W! Z8 K% o8 A8 w% f
- <conditions>- X6 a4 I, Q0 O: N9 Q
- <param name="preQuestId">10019</param>
* E0 ~5 d: b: A) b" M - <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>5 ?: v+ N! i$ @, c( t: a
- </conditions>
1 @" v7 g( e: ?( n+ L8 U - <rewards>
q9 L& V: z$ W( U$ ~- P: E - <items>
5 a( |+ [$ y5 q9 D$ J - <item id="57" count="240000" />
3 t6 d: O. [2 F0 C - </items>
- t9 S% ^6 k5 [) O* k - <param name="rewardLevel">76</param>
: R$ E3 r6 m9 z+ c - <param name="rewardSp">84</param>! d; k9 a+ L8 Y; @' o) a
- </rewards> [5 ]5 ~, w1 U* S, g
- <goals>+ p5 t7 B8 x" H, [
- <param name="goalCount">30</param>
. b4 O; ` F) a0 j - <param name="goalString">Monsters on the Windy Hill</param>
# D; I+ i1 J+ A - </goals>
e T& I1 K8 A4 u - </quest>
( Q6 Q( b& _) f1 z/ T% [! X" W
Скопировать код 2. Описание структуры2.1. Тег <quest>Каждый квест начинается с тега <quest>, который задаёт основные параметры квеста:3 X+ I! B2 P7 w; \* M
- id — уникальный идентификатор квеста. Например, id="10020" указывает, что это квест с ID 10020.
- type — тип квеста, обычно это 1 для стандартных квестов.
- name — название квеста, которое будет отображаться в игре.
- startNpcId — ID NPC, который начинает квест. Это тот NPC, к которому игрок должен обратиться для начала квеста.
- endNpcId — ID NPC, у которого завершается квест. Игрок должен вернуться к этому NPC для завершения задания.2 v# ~0 v/ i1 B
2.2. Тег <locations>В этом блоке указываются ключевые локации, связанные с квестом:
7 b3 m w$ \% G0 h. K8 i
) `1 p3 q: R9 d1 f- <param name="startLocationId"> — место, где игрок начинает квест.
- <param name="endLocationId"> — место, где квест заканчивается.
- <param name="questLocationId"> — основная локация выполнения квеста. Это может быть область, где нужно убить монстров или выполнить другую задачу.
- `8 U1 x- a2 E 2.3. Тег <conditions>Этот блок определяет условия для начала квеста:
7 Y6 H4 g4 G! t- <param name="preQuestId"> — ID предыдущего квеста, который должен быть завершён для начала текущего. Если значение задано, игрок должен завершить этот квест перед тем, как начать новый.
- <param name="classIds"> — список ID классов, которые могут принять этот квест. Здесь указаны ID классов, имеющих право начать квест.
" h& I8 i5 p% g; J 2.4. Тег <rewards>Блок наград описывает, что игрок получит за выполнение квеста:
3 M. z- `6 _* r' V6 i5 \- <items> — внутренняя секция с наградами в виде предметов.
2 o+ [( G7 d$ y* v% p, z5 ?$ y- <item id="57" count="240000" /> — предмет, который игрок получит. В данном случае это адена (ID 57) в количестве 240 000.0 W% R5 ~7 W% a3 F% @3 @9 I
- <param name="rewardLevel"> — минимальный уровень игрока для получения награды.
- <param name="rewardSp"> — количество SP (Skill Points), которые игрок получит за выполнение квеста.9 B( J' K5 \3 }2 X) j1 ^
2.5. Тег <goals>Этот блок определяет цели квеста:& Y4 a) Z- z* x4 i& ]
- <param name="goalCount"> — количество целей для выполнения, например, сколько монстров нужно убить.
- <param name="goalString"> — описание цели. Это текст, который объясняет, что нужно сделать (например, убить монстров на определённой территории).
$ Z# v/ M ~& ^) a
3. Пример полного квеста5 a3 `$ c) s9 N# U: L% U8 B* x% S
+ T8 Z0 J" a5 w+ Z# JПредположим, вы хотите создать новый квест, где игрок должен убить 10 демонов и получить награду:9 {% l' ?$ H' |& p) p
- <quest id="10101" type="1" name="Demon Hunt" startNpcId="34001" endNpcId="34001">5 M, ?! \5 \ J; T' [ U
- <locations>
I3 \+ ?" R/ M - <param name="startLocationId">1015</param>3 L) i( }, S! K# b
- <param name="endLocationId">1015</param>
$ D6 S( n; @& D9 b$ \. @) v - <param name="questLocationId">1020</param>
8 h/ g9 k$ b- {! E' O1 ~3 h - </locations>
8 E% ?. W L* r/ D - <conditions>: s5 u4 e7 r0 N
- <param name="preQuestId">10099</param>
Z& T3 _' d, [ - <param name="classIds">1;2;3;4;5</param>
7 E, L$ U" k. N( | - </conditions>0 S' ? a$ F! Q9 A9 D2 w* d O
- <rewards>
4 J4 o1 J6 A( p* M# a: y; c/ F - <items>
2 L5 A& v* m; ~ F% G5 V/ k+ l5 u5 { - <item id="57" count="50000" /># r! @$ ?# l# v) T( K8 n( {
- </items>
/ ]" \, V- H4 W - <param name="rewardLevel">50</param>
' P$ N- b0 O+ j: K! @! l- s. Z - <param name="rewardSp">1000</param>2 o. ?" i! x4 Z' A1 [9 ]
- </rewards>
- [7 o3 d8 I2 l& {' o - <goals># S) p& {$ @( u4 }. F
- <param name="goalCount">10</param>1 d0 z2 W: U- ]5 h3 U7 {
- <param name="goalString">Demons in the cursed forest</param>
/ a( X: n; y/ ^. U - </goals>2 {0 n9 }! D7 V/ e9 b3 E( k4 K
- </quest>; A; J/ C8 ?$ v# m8 _4 d, Q
Скопировать код Здесь:. a- T# @, N+ l
- ID квеста: 10101.
- Название квеста: "Demon Hunt".
- Начальный и конечный NPC: Жрец с ID 34001.
- Локации: игрок начнет и закончит квест в одной и той же локации (ID 1015).
- Условие начала: игрок должен завершить квест с ID 10099.
- Цель: убить 10 демонов в заколдованном лесу.
- Награда: 50 000 аден и 1000 SP.
# O( E p: y! I/ a: I
4. Частые ошибки и их решения- Некорректные ID — убедитесь, что все ID NPC, предметов и локаций существуют в базе данных.
- Несовместимость классов — если квест доступен только для определенных классов, проверьте, правильно ли вы указали их ID в classIds.
- Цели не выполняются — проверьте правильность параметров в <goals>, убедитесь, что все цели прописаны верно.
2 g4 i2 ~1 e5 C$ ?6 L
5. ЗаключениеФайл NewQuestData.xml является важной частью механики квестов на сервере Lineage 2. Правильная настройка параметров, таких как ID, условия и цели, позволяет создавать уникальные квесты с интересными наградами. Этот гайд поможет вам уверенно добавлять и редактировать квесты на вашем сервере.
( T- ~) k1 h. a2 Z0 U* q/ H3 g! T
|