Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Гайд по файлу NewQuestData.xml для Lineage 2 сборка L2J_Mobius
* _- ]: Q3 g9 f' M
( D8 S- u5 R) D: \9 v+ L$ ~0 G: ~7 J4 E
Файл NewQuestData.xml является важным элементом серверной части Lineage 2, так как он определяет ключевые параметры для квестов. Он содержит информацию о начальных и конечных NPC, условиях выполнения, наградах и целях квестов. Этот гайд поможет вам понять, как работает файл, и как добавлять или редактировать квесты на сервере.
; C7 K M' I" @8 r- L 1. Введение в структуру файлаФайл NewQuestData.xml используется для описания квестов, начиная с их идентификаторов и заканчивая подробными условиями, целями и наградами. Каждый квест имеет уникальный идентификатор (ID), тип, имя, а также ряд параметров, которые определяют его работу на сервере.
% u. K! K8 T0 } lПример записи квеста в NewQuestData.xml:
' F! y5 s+ y% ?+ M3 }( R9 v$ g- <quest id="10020" type="1" name="Attack of the Enraged Forest" startNpcId="33963" endNpcId="34505">
4 { t1 R9 N. y$ `* Q - <locations>4 P9 M8 x/ K) Y
- <param name="startLocationId">1015</param>
1 M; \' _9 v e# E' I - <param name="endLocationId">1002</param>* }& _" Q, a/ y1 s7 n
- <param name="questLocationId">1020</param>( V- l" N+ a0 r3 t: A2 c
- </locations>
t8 N& K2 y# _" o: d& z+ x! N - <conditions>
K: z' M, A6 t" A# q. c; I - <param name="preQuestId">10019</param> |4 a. ~. d9 j. j2 c
- <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>
/ @: n' F, D1 ^! k5 C2 W - </conditions>! A; Z% T( ]0 w% Y7 J- M
- <rewards> |! X/ w+ _- B8 ~7 [
- <items>
4 y. E) A8 }: X" r3 h! [ - <item id="57" count="240000" />
9 g7 B f" s1 j5 b. L- h - </items>
% n* d1 I0 d# z; y2 V v - <param name="rewardLevel">76</param>
" ^& n% h' X6 D; ~: Q, t( q; Q - <param name="rewardSp">84</param>" B1 k7 }7 t2 R/ i5 K$ e. O
- </rewards>5 c- }4 r6 c4 k: \! v1 R. p0 r
- <goals>6 z% R1 c( _# K' |
- <param name="goalCount">30</param>3 {, A7 X8 Y) h4 V p$ ?
- <param name="goalString">Monsters on the Windy Hill</param>/ G( X& P* k9 k* H; I9 E
- </goals>
; L1 R. J) ^/ g - </quest>
. j; v8 O0 t7 p- X2 D1 Q
Скопировать код 2. Описание структуры2.1. Тег <quest>Каждый квест начинается с тега <quest>, который задаёт основные параметры квеста:6 }. g. k; w/ D) H
- id — уникальный идентификатор квеста. Например, id="10020" указывает, что это квест с ID 10020.
- type — тип квеста, обычно это 1 для стандартных квестов.
- name — название квеста, которое будет отображаться в игре.
- startNpcId — ID NPC, который начинает квест. Это тот NPC, к которому игрок должен обратиться для начала квеста.
- endNpcId — ID NPC, у которого завершается квест. Игрок должен вернуться к этому NPC для завершения задания.2 W) x1 T# c6 b, J4 o/ @
2.2. Тег <locations>В этом блоке указываются ключевые локации, связанные с квестом:7 }# m7 f9 e* w, k% M- P" F a) l
; s6 n2 E* M! a' r& M8 o; O) t, B
- <param name="startLocationId"> — место, где игрок начинает квест.
- <param name="endLocationId"> — место, где квест заканчивается.
- <param name="questLocationId"> — основная локация выполнения квеста. Это может быть область, где нужно убить монстров или выполнить другую задачу.
* s: ^" V9 [8 r 2.3. Тег <conditions>Этот блок определяет условия для начала квеста:$ G+ ~6 i+ v' I$ A, \0 V
- <param name="preQuestId"> — ID предыдущего квеста, который должен быть завершён для начала текущего. Если значение задано, игрок должен завершить этот квест перед тем, как начать новый.
- <param name="classIds"> — список ID классов, которые могут принять этот квест. Здесь указаны ID классов, имеющих право начать квест.
# ^- M! R8 R& h! Q8 F 2.4. Тег <rewards>Блок наград описывает, что игрок получит за выполнение квеста:
% Q) w) d! X( Y- <items> — внутренняя секция с наградами в виде предметов.
( i3 Q4 m+ T! ~0 Q- s- <item id="57" count="240000" /> — предмет, который игрок получит. В данном случае это адена (ID 57) в количестве 240 000.* X5 H' S. t4 l# B6 G j3 r
- <param name="rewardLevel"> — минимальный уровень игрока для получения награды.
- <param name="rewardSp"> — количество SP (Skill Points), которые игрок получит за выполнение квеста.$ F% n: ]; e" ^- l
2.5. Тег <goals>Этот блок определяет цели квеста:+ T1 k& q$ ~5 d/ {: S# e* o! u
- <param name="goalCount"> — количество целей для выполнения, например, сколько монстров нужно убить.
- <param name="goalString"> — описание цели. Это текст, который объясняет, что нужно сделать (например, убить монстров на определённой территории).3 d8 ?% j: {' e" G' ]
3. Пример полного квеста9 l! d% o4 |* O* ~ F
0 _( ]+ ]1 a, x! q. F UПредположим, вы хотите создать новый квест, где игрок должен убить 10 демонов и получить награду:
( a" s9 H# c( S! r B; m2 h# i& z/ O- <quest id="10101" type="1" name="Demon Hunt" startNpcId="34001" endNpcId="34001">' c1 T/ M A) \9 ?3 u
- <locations>
( P4 g* l+ Z5 M. ? - <param name="startLocationId">1015</param>
* F4 g* b' y8 L0 _ - <param name="endLocationId">1015</param>* [, m/ B1 g2 x8 b' t
- <param name="questLocationId">1020</param>
6 C* Z$ ^; [1 {! w1 F - </locations>) T3 G' X# ]0 Y' O9 |/ Q
- <conditions>
) u( P1 R; T8 Z; w - <param name="preQuestId">10099</param>6 D( J# c" N# T9 C' n
- <param name="classIds">1;2;3;4;5</param>: I8 a/ M# C* X+ I" b2 p
- </conditions>6 i* \$ Q7 o7 z# y1 y5 Z) i
- <rewards>, W P+ T& W5 `7 u& b+ d$ L
- <items>! d ]1 {3 Q0 j: v" Y/ Y1 H* e* M
- <item id="57" count="50000" />3 E0 j' X3 L# S4 s' H% h
- </items>
. H; P3 a9 F3 S# C% c6 U9 Z( ? - <param name="rewardLevel">50</param>
' ?3 R! J! o3 L# A - <param name="rewardSp">1000</param>% C9 v/ S+ U5 f0 |3 W/ ?
- </rewards>3 ^: w& X4 _4 t. O D: f( M
- <goals>
! ^6 J. B8 i* X* D* [6 H# \# w% X8 ^; A - <param name="goalCount">10</param> l( f% t. `- a* }+ H
- <param name="goalString">Demons in the cursed forest</param>2 d$ C( u! W0 C [- _
- </goals>
/ d" G# x# F5 y3 _! I5 B. ~1 F - </quest>- {6 s0 g s* W, L( g i2 o
Скопировать код Здесь:: N5 k. i: x' l2 i, ]! b
- ID квеста: 10101.
- Название квеста: "Demon Hunt".
- Начальный и конечный NPC: Жрец с ID 34001.
- Локации: игрок начнет и закончит квест в одной и той же локации (ID 1015).
- Условие начала: игрок должен завершить квест с ID 10099.
- Цель: убить 10 демонов в заколдованном лесу.
- Награда: 50 000 аден и 1000 SP.: }, @$ U% B! P8 P2 V" `
4. Частые ошибки и их решения- Некорректные ID — убедитесь, что все ID NPC, предметов и локаций существуют в базе данных.
- Несовместимость классов — если квест доступен только для определенных классов, проверьте, правильно ли вы указали их ID в classIds.
- Цели не выполняются — проверьте правильность параметров в <goals>, убедитесь, что все цели прописаны верно.1 x8 }% ]# X& {/ M# J( Q
5. ЗаключениеФайл NewQuestData.xml является важной частью механики квестов на сервере Lineage 2. Правильная настройка параметров, таких как ID, условия и цели, позволяет создавать уникальные квесты с интересными наградами. Этот гайд поможет вам уверенно добавлять и редактировать квесты на вашем сервере.
, L- \& l- J& M# G: z, o$ b8 \5 {3 z: f6 u0 t$ G( J
|