Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Гайд по файлу NewQuestData.xml для Lineage 2 сборка L2J_Mobius: Z" P: W5 n$ \1 L: j
& V. n. K9 I. K- x" v3 B( C
8 K( Q1 t4 B0 ^, ~5 E' uФайл NewQuestData.xml является важным элементом серверной части Lineage 2, так как он определяет ключевые параметры для квестов. Он содержит информацию о начальных и конечных NPC, условиях выполнения, наградах и целях квестов. Этот гайд поможет вам понять, как работает файл, и как добавлять или редактировать квесты на сервере." \0 g' [$ M# e1 I6 x6 G L
1. Введение в структуру файлаФайл NewQuestData.xml используется для описания квестов, начиная с их идентификаторов и заканчивая подробными условиями, целями и наградами. Каждый квест имеет уникальный идентификатор (ID), тип, имя, а также ряд параметров, которые определяют его работу на сервере.+ ` g: N8 B7 p U/ w& W4 \3 n$ C8 T
Пример записи квеста в NewQuestData.xml:" i; L8 D. O, R( R9 A7 ~
- <quest id="10020" type="1" name="Attack of the Enraged Forest" startNpcId="33963" endNpcId="34505">
3 z" I5 [1 C. l" U/ ` - <locations>
; \" a5 {" M: e1 c - <param name="startLocationId">1015</param>
. p; [+ i3 w1 i9 Z2 M - <param name="endLocationId">1002</param>
$ |" e' K" e6 d1 b: r3 ~ - <param name="questLocationId">1020</param>. ^8 I" d9 g0 W. Q5 |, m' \0 O
- </locations>* ]: k' T0 S: v; ]- [) H
- <conditions>5 V6 z3 n* l% o u0 b1 ]' F' }
- <param name="preQuestId">10019</param>
3 C6 i) P r+ P - <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>
1 H6 d/ E+ o! O9 [, | - </conditions>
! M$ [9 L, T, \8 q2 R: n2 N - <rewards>
5 Z4 m7 Z' h' ]( k1 b3 ^ P - <items>
3 w6 x6 l- k& b+ N2 l# ~ - <item id="57" count="240000" />
9 n9 x' o; S/ | - </items>" d! W8 z8 j) b# @
- <param name="rewardLevel">76</param>, y8 e3 A% N: y
- <param name="rewardSp">84</param>
* X8 y) e6 E. w. H+ y9 q$ @+ X - </rewards>
) V+ k9 `0 o: m - <goals>" V5 l% I- d' F
- <param name="goalCount">30</param>
& w# |# a0 P0 Y; [2 P! m - <param name="goalString">Monsters on the Windy Hill</param>
8 w }% V, h) ~! l/ p0 I, M - </goals>( [6 j' y" l2 x4 z
- </quest>/ t2 R& q. n4 r8 k: a# V/ _
Скопировать код 2. Описание структуры2.1. Тег <quest>Каждый квест начинается с тега <quest>, который задаёт основные параметры квеста:9 ]7 | L+ }/ \5 ^
- id — уникальный идентификатор квеста. Например, id="10020" указывает, что это квест с ID 10020.
- type — тип квеста, обычно это 1 для стандартных квестов.
- name — название квеста, которое будет отображаться в игре.
- startNpcId — ID NPC, который начинает квест. Это тот NPC, к которому игрок должен обратиться для начала квеста.
- endNpcId — ID NPC, у которого завершается квест. Игрок должен вернуться к этому NPC для завершения задания.# }. \8 ~% U0 [; n" C; R! n9 r+ F
2.2. Тег <locations>В этом блоке указываются ключевые локации, связанные с квестом:9 E! L) ^9 |6 O+ w
; @8 @; h$ I+ l4 N
- <param name="startLocationId"> — место, где игрок начинает квест.
- <param name="endLocationId"> — место, где квест заканчивается.
- <param name="questLocationId"> — основная локация выполнения квеста. Это может быть область, где нужно убить монстров или выполнить другую задачу.
- q1 ?7 R* k: x/ X7 I- @ 2.3. Тег <conditions>Этот блок определяет условия для начала квеста:) u6 @& F6 _' p; K- B
- <param name="preQuestId"> — ID предыдущего квеста, который должен быть завершён для начала текущего. Если значение задано, игрок должен завершить этот квест перед тем, как начать новый.
- <param name="classIds"> — список ID классов, которые могут принять этот квест. Здесь указаны ID классов, имеющих право начать квест.$ P+ X! d5 |5 D/ G" `# y
2.4. Тег <rewards>Блок наград описывает, что игрок получит за выполнение квеста:
2 K8 ^5 A9 } r7 Q0 j% N- <items> — внутренняя секция с наградами в виде предметов.. ]5 r9 z6 ]3 ~: @
- <item id="57" count="240000" /> — предмет, который игрок получит. В данном случае это адена (ID 57) в количестве 240 000.
) I7 L' u; b7 M* `' y
- <param name="rewardLevel"> — минимальный уровень игрока для получения награды.
- <param name="rewardSp"> — количество SP (Skill Points), которые игрок получит за выполнение квеста.
( b+ g% r1 ]& Q: U7 J$ f+ ~0 ^0 s 2.5. Тег <goals>Этот блок определяет цели квеста:
, t& d/ j8 Q) `3 X# g- <param name="goalCount"> — количество целей для выполнения, например, сколько монстров нужно убить.
- <param name="goalString"> — описание цели. Это текст, который объясняет, что нужно сделать (например, убить монстров на определённой территории).4 n4 N% x! {* ]. B6 H* f
3. Пример полного квеста" Q- S8 o5 e* o8 d4 V1 G
& ^3 \: p% s) ]; n2 L3 [/ @6 V" C
Предположим, вы хотите создать новый квест, где игрок должен убить 10 демонов и получить награду:% |4 U* k2 W, `& O# i
- <quest id="10101" type="1" name="Demon Hunt" startNpcId="34001" endNpcId="34001">
3 j, i. ^3 U* i4 e; h - <locations>& i5 z1 v% o' L! |
- <param name="startLocationId">1015</param>6 D; ^5 c! B" t7 J8 o
- <param name="endLocationId">1015</param>5 }3 n; ]4 b( T' }; {( x
- <param name="questLocationId">1020</param>
9 K+ J# Q* _2 y& p - </locations># U: `/ N/ a- E
- <conditions>
5 @1 h4 W3 T- C - <param name="preQuestId">10099</param>1 Y, S8 P- S$ n3 ~. S
- <param name="classIds">1;2;3;4;5</param>% z+ x7 U5 b! o
- </conditions>9 a* ^' @ N3 M) e# g, S
- <rewards>9 N1 C' D6 ]3 ]4 B- A `
- <items>% P# o& |0 C% p7 F7 z
- <item id="57" count="50000" />- U) e* V- ?& M* a/ `. r* J. r
- </items>
' E4 B8 z4 d9 z! D d0 W+ @ - <param name="rewardLevel">50</param>
$ ]( o5 d( I6 o: D% R8 A2 L - <param name="rewardSp">1000</param>
" E( A, q, U* ^9 [$ ?! N& U - </rewards>
9 E8 R" [+ F" b) a/ K - <goals>
$ \. ~1 i, R- O$ u4 L - <param name="goalCount">10</param>4 p1 z6 k, h$ z' C* c0 j0 `- T
- <param name="goalString">Demons in the cursed forest</param>
7 X' i/ |- g3 f( K& M: {, p; i. m - </goals>
* X& P. j9 ^1 c2 C# k - </quest>0 U' @! c# U/ X7 [4 p
Скопировать код Здесь:9 h$ E8 F; [9 ?& f% C
- ID квеста: 10101.
- Название квеста: "Demon Hunt".
- Начальный и конечный NPC: Жрец с ID 34001.
- Локации: игрок начнет и закончит квест в одной и той же локации (ID 1015).
- Условие начала: игрок должен завершить квест с ID 10099.
- Цель: убить 10 демонов в заколдованном лесу.
- Награда: 50 000 аден и 1000 SP.0 J( W9 z# Z+ b: z: n: E! t, Y
4. Частые ошибки и их решения- Некорректные ID — убедитесь, что все ID NPC, предметов и локаций существуют в базе данных.
- Несовместимость классов — если квест доступен только для определенных классов, проверьте, правильно ли вы указали их ID в classIds.
- Цели не выполняются — проверьте правильность параметров в <goals>, убедитесь, что все цели прописаны верно.
- z' w; e( Z' x% S S9 R
5. ЗаключениеФайл NewQuestData.xml является важной частью механики квестов на сервере Lineage 2. Правильная настройка параметров, таких как ID, условия и цели, позволяет создавать уникальные квесты с интересными наградами. Этот гайд поможет вам уверенно добавлять и редактировать квесты на вашем сервере.
/ e/ Y. a/ @' J' Q$ q; e0 M; Z7 l7 \" Q0 D8 w/ b/ a
|