Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Познавательная статья относительно применения XML в Lineage 2 серверах. Изменение статов, скиллов, вещей, зон/ ^; i4 o6 b, v5 @
0 {+ I$ d" \/ b: k Q; FЧасть 1. Введение
8 f" y. D+ V! n9 V. U8 {7 }
# l0 [# P5 r7 n# oНачну от того, который но такое XML? Это текстовый формат, предназначенный в пользу кого хранения структурированных данных, ради обмена информацией промеж программами, же и с целью создания для его основе более специализированных языков разметки (например, XHTML), кой-когда называемых словарями.
w3 s. A' ?$ ^Первая черта XML-документа называется объявлением XML — это необязательная строка, указывающая версию стандарта XML (обычно это 1.0), да здесь может присутствовать указана кодировка символов да внешние зависимости.
9 L9 n+ U6 X' |) i% I% L
+ s& g+ @0 u x& s+ l; tСпецификация требует, с целью процессоры XML непременно поддерживали Юникод-кодировки UTF-8 да UTF-16. Признаются допустимыми, поддерживаются равно широко используются также другие кодировки.# n9 I% b$ o# n3 g6 x
Так но на XML кушать мочь добавления комментария. объяснение может скрываться размещен на любом месте дерева. XML комментарии размещаются внутри туман тегов <!-- равным образом -->. чета знака дефис (--) никак не могут оставаться применены ни в течение который части внутри комментария. Вот прототип комментария:
8 r4 T& J; b$ b+ ]2 w7 m
5 ~$ B2 b1 Q6 h% F<!-- Текст -->: @% |# }) x e3 h; C7 R
# H7 k# H& @6 b7 W6 i1 x- D8 ~: b( _6 {Но я отнюдь не будем углу{цензура}ться в течение весь особенности XML, нас интересует всего на все часть, которая касается Lineage 2 XML в течение сервере Lineage применяется в угоду кому описания статов оружия, брони, скилов да т.д. в интересах оружия это предположим параметры физ. да маг. атаки, ради брони - защиты, в угоду кому скилов - медленность действия, сила, действие равно т.д. только предположим в течение файле "servername.xml" хранятся имена серверов до умолчанию. Эти имена могут содержаться свободно изменены. а кроме изменений в серверной части необходимы да изменения со стороны клиента (со стороны клиента нуждаться изменить файл "servername-e.dat". Изменяться *.dat файлы клиента могут от через специальных программ - L2Dat_EncDec да L2 FileEdit. в течение следующей части мы научу вас переменять статы вещей.
5 y' d& ~% a+ n% z5 W+ M+ G" o
6 p9 }3 l7 _2 V" R/ N5 pЧасть 2.Изменение статов вещей. O8 I- ?: P6 r' D8 J) h/ W
" J- W& E. s0 X+ d* z% R- r
Возьмем итем Shirt. Это неприметная НГ шмотка. в ее примере аз поясню что, где также когда. Вот кусок XML кода
N+ q! N/ ]0 j( {* ]
2 Z+ t$ U4 G2 I* ]& q8 kДля измения ее статов тогда нам нужна лишь одна строчка:! |& I. j1 ]3 ~. L& O! X% h. w4 Z; `
5 m! {8 j0 x8 s, K# JЧто это безвыездно значит:
/ B. n% x1 L" L7 }0 f- y0 S" F- h0 w% _0 \* l, ? R. K! K2 s
Тег означает приращение равным образом является переменной. в его месте могут да а быть, например, , , , . да так. который но означают эти значения?& P! @) n4 S* k: m" G: I
1. <add /> - приплата статов. То кушать ежели вы оденете вещь, ваши статы увеличатся. важность order довольно 0x10.$ y& [% y6 X. d* e9 G
9 Y# P8 C2 T+ x8 d. X1 d
<add val='100' order="0x10" stat='pDef'/>
7 T1 {; h6 p6 L. ?8 k
+ k9 T$ |% R" BДанный код следовательно который присутствие одевании багаж вам прибавится 100 единиц стата (в данном случае P. Def).
8 X7 I1 o3 {% A$ H/ w
$ H. T/ c" x% v W8 D2.<sub /> - вычитание статов. То поглощать буде вы оденете вещь, ваши статы уменьшатся. order да а - 0x10.
7 _* p; v7 \& P6 w$ }0 j& H8 K2 O* T1 @1 t
Данный код следовательно который присутствие одевании багаж около вас отнимется 100 единиц стата (в данном случае M. Def).* I1 o- W& e- W
1 u: `# U, [- K I. n4 l m$ x9 }5 y' |0 U1 ?9 P* Y# W1 e
3. <set /> - назначает вам строгое важность стата. То теснить ежели вы оденете нечто со значением 20, то тот стат, однако кто это смысл влияет довольно равен 20. Order 0x08., t0 Y0 P/ n, U9 D
_; e) P- a8 M' [( c6 U" V
Данный код следовательно который быть одевании багаж около вас довольно 100 единиц стата (в данном случае P. Def).
& Q9 [9 E- z. @5 \/ p, f8 l" w$ L3 b# m* Y# g f l5 _- n
4. <mul /> - увеличение статов. То лакомиться коль скоро вы оденете вещь, ваши статы умножатся. Order 0x30.' j! i, b6 J; a2 N* g
& f+ n; U' ^( v8 i- xДанный код вероятно сколько быть одевании багаж разум стата умножится для 100 (в данном случае M. Def).
9 ~5 a: E) j' e1 v
) T" l' x4 i) W) j( J5. <enchant /> - показывает, в что увеличится стат около заточке вторично в +1. Order 0x0C.
$ s5 s, M p0 J1 y( i: F; R% u
& A5 O6 V$ `, z5 \7 V. }8 b' CДанный код следовательно который быть заточке багаж опять в 1 ваши статы (в данном случае P. Def) увеличатся для 100.
( |( r2 l- T$ t: c1 ZНиже приведена список значений "order":
& v Z- t' |# I1 ]3 N8 m" [
q8 |9 a+ J: J: ~+ p4 p0x08 - set
. a7 E* }7 Y! H. q' {0x10 - add/sub (оружие, броня, бижутерия) также (STR, CON, DEX, INT, WIT ,MEN)) P' [/ J6 w+ n
0x20 - отнюдь не нужно+ ?- q+ V0 o% s1 v: Q( g
0x30 - mul/div (masteries, buffs, debuffs, SA (специальные возможности оружия), бонусы брони)8 R/ H! I# a* ^5 Z6 j) B8 I( a. D
0x40 - add/sub (masteries, buffs, debuffs, SA (специальные возможности оружия))+ {8 y0 S4 |6 p* h( N; U
0x50,0x60 - никак не нужно1 K2 M( q& m* h u
0x0C - enchant E, {9 S' D# N6 _7 f7 {
5 J7 f# i8 m6 J5 U0 X; R' T
Часть 3. перемена скилов
7 g; L3 ?% D9 H1 W4 ^
3 y- v7 z; ?8 Y- w) V* ]: a$ n) DСамая большая порцион моей статьи Начну со значений, причинность вы должны быть знакомым сколько изменяете.
4 y3 Q8 I. ^6 K4 ?! B: `- w& f6 Z* v6 M1 [
Изменение максимального количества HP - maxHp; O) Y( i1 w$ T8 K; `6 `6 H' Y
Изменение максимального количества CP - maxCp
7 S+ P: T( H2 w) PИзменение максимального количества MP - maxMp
( H+ k/ l: A4 xРегенерация НР - regHp
, A5 M2 U( M! vРегенерация СР - regCp
. }- [ A' v* n& ~) rРегенерация МР - regMp
) u$ s; q- d0 [Эффективность хила - gainHp6 [" Y! J7 A0 P. ^9 t4 h7 T
Умение хила - giveHp
6 L- U: M4 V- _# Y! a) x/ QБонус хила - bonusHp
0 U6 F0 J, U7 ?/ KФизическая опора - pDef" z7 t x4 o o4 S0 {' `* h
Магическая столп - mDef! x! c. @. F" B% z/ h
Физическая набег - pAtk4 _3 d1 A a! f) Z7 R
Магическая набег - mAtk
' a2 B1 _" r _' E' z' e6 AСкорость физической атаки - pAtkSpd
r1 N5 m. j% M$ {6 G5 u- q* TСкорость магической атаки - mAtkSpd
( E% H; T6 f- s& G& r. U3 SСкорость отката - mReuse9 X. k, k( [; d+ u, r: L6 p
Защита щитом- sDef
5 i- C# V# m2 j4 C; K9 c, w4 K7 tУгол защиты щитом - shieldDefAngle' B$ C! h' h4 Q
Критический пощечина - cAtk
: m @5 ]! D- k5 [0 g' sПрибавка для критическому удару - cAtkAdd8 C1 n$ ]- Q7 u: p
Физ. урон в течение пвп (например в пользу кого Duel Might) - pvpPhysDmg' j6 ]; C' E, `
Маг. урон - pvpMagicalDmg4 @# |; Z4 p" X7 A0 h
Урон скилом - pvpPhysSkillsDmg$ B2 s: z9 y' x1 \2 _
Уворот - rEvas
& e1 Y) `! s) g9 M- c; C/ NУворот через скилов- pSkillEvas0 M1 D+ G0 {7 k- B, M" x
Шанс блокировки щитом - rShld
8 P- o; {% V; v4 s1 {: WШанс крита - rCrit
- I! M4 H+ [% NШанс Blow - blowRate
* O, \ b0 }0 f5 A( o9 JШанс Lethal - lethalRate
/ T+ a! j$ j' n' L- m* IМаг. крит. надежда - mCritRate (mCrit doesn't work!!)
; v- e% L/ k5 Z0 E$ h* GEXP,SP надежда - rExp
! d$ J9 [+ v5 T6 u9 SCancel - cancel
: S! ^3 |7 e4 j* ~8 `Точность - accCombat
: \% }- @9 g, M8 q7 QЗона покрытия физ. атаки - pAtkRange (for fighters)/ w1 I4 R" l2 J6 o# B6 e8 k2 q6 J7 v
Зона покрытия маг. атаки- mAtkRange (for mages)
/ P3 u8 Z3 Q* p5 E. ]3 b' v! UУгол атаки (только с целью воинов) - pAtkAngle% \! L9 A5 y1 m% r1 B% s; U" S& q
Количество атакуемых - atkCountMax
7 z, s7 W5 F" |0 g& p0 [2 `Откат физ. скилов - atkReuse
/ G7 Z7 }7 A) @& s- ?$ JСкорость бега - runSpd1 m3 N. k! ^, `
Скорость ходьбы - walkSpd
# M" M% G0 X6 @* |STR - STR
1 F2 M/ ^. V- F4 v5 o+ d1 cDEX - DEX
" i/ W4 r& K \: \: {& A% vWIT - WIT& h$ L% }9 {) Y/ A' Q! }" \% O; x/ H
INT - INT- r+ ]: d, \8 z, H+ h6 u$ M/ c
MEN - MEN
( r7 V; u& A% i, B4 m
1 R1 \. w) y+ N" XУязвимости+ w3 |6 I; h) q
& ~. r% G& k# w u2 K* h: F2 F+ W5 BАгрессия - aggressionVuln
; r& M; y5 n$ GКровотечение - bleedVuln
' s$ v8 [$ R( ] GЯд - poisonVuln" S n9 b1 P/ ^. v% R& S
Стан - stunVuln
% P7 g i: U! ^7 i3 V4 gПарализация - paralyzeVuln: Q6 @: x% a1 |) j4 w B8 R5 P
Удерживающие заклинания - rootVuln
1 Z' `7 D1 n# cСон - sleepVuln: @7 D- `. _$ S1 @2 z ?
"Перекидывание" таргета -confusionVuln, L; V* B& f- |
Движение - movementVuln1 v; q1 ^+ U" @5 ^: A, P( v! y
Огонь - fireVuln. y! ~; P# E5 x& d5 c
Ветер - windVuln5 t" P @ J1 T" ~5 O1 p
Вода - waterVuln0 Q, ^1 _5 T+ C$ t/ X& b# M
Земля - earthVuln
9 E' K5 H" P* L6 ^Святые атаки - holyVuln; ^2 w3 K. o- Q/ A
Темные атаки - darkVuln
/ G. i7 ]% A' b2 e3 S* kРезист для cancel - cancelVuln2 O5 Q6 {% T+ Y2 E: V8 \
Дебаффы - debuffVuln& v% h* G; ~8 ]' i; M; ~: `3 w* w
Резист для криту - critVuln1 r+ s; U' _* K, n
9 Y# s* M% t" F8 M: w
Резисты простив оружия (тут думаю изображение никак не нужно)
$ D2 i( f+ m* |1 t9 `) c% h+ R5 F7 D, ]/ \1 e! y: I
noneWpnVuln V& Q, T0 M# W! V6 K
swordWpnVuln
2 C1 P' b3 ~+ E0 s+ U; j- i" P: ^: cbluntWpnVuln
, C# P$ b' V' `4 C' U; b0 u9 \7 s' qdaggerWpnVuln
. v! i9 A( C# h! N7 G+ |bowWpnVuln
9 e8 U, V: P6 A! e* ?1 x* k0 @crossbowWpnVuln) v7 r! l: f j4 O- o, F$ F9 R, q
poleWpnVuln1 p: b0 P9 p% H. ^
etcWpnVuln' p: o& S% b; r5 v
fistWpnVuln
5 p0 L: v% s ^$ ]* t `% ]7 zdualWpnVuln
8 I. p& R' x, o% X: O$ i4 m- EdualFistWpnVuln
2 Q6 z$ V" p0 n: {bigSwordWpnVuln/ X1 A* E4 L3 F. W+ s7 K- n
. Z" p8 }4 ?4 Q
Отражение
8 k6 v3 Y! d7 r$ c
# V: b5 n4 w% |3 v& P u: l) oПроцент отражаемого урона - reflectDam (pay attention! not reflectDmg!! reflectDam)5 n: L) u1 R( V
Процент рассеиваемого урона - absorbDam* `/ K- a7 q, y
Процент переносимого урона- transDam
r4 a# @! g: |' @* U/ gОтражение маг. скилов - reflectSkillMagic9 d7 ~1 b7 w# Z( | z
Отражение физ. скилов - reflectSkillPhysic
( j; O8 {' u$ W* b1 r
B% K6 e/ l1 ?" s/ J% GДругое (для примера):
1 q- }& C& d: A7 L; q! T7 P, O7 s y3 ~4 U
Атака для гигантов - pAtk-giants6 y; _0 D/ z9 D) Z, M L& S
Защита для ласкать - pDef-undead
* t( F9 Z3 I& V+ | iАтака в животных - pAtk-animals7 f3 N2 r& v4 t" ~
Защита для монстрах - pDef-monsters# M, S: S) Q' A& W4 G. y+ R
Лимит инвентаря - inventoryLimit
3 |8 S1 h" j# @! gЛимит ВХ - whLimit
$ l" b0 y) V) T2 A: u9 a- j0 C& wFreight лимит - FreightLimit2 Q* t. m# z, W" W+ ]
Лимит продажи. - PrivateSellLimit2 N. v; I+ s0 Y. g5 X9 d# w
Лимит покупки - PrivateBuyLimit
3 m+ V' O# w' c" JЛимит гномьего крафта - DwarfRecipeLimit$ ^& U. b% f% V5 Q2 G `
Лимит common крафта - CommonRecipeLimit, i" [- Q O# {( ^. p
Потребление МР физ. скилами - PhysicalMpConsumeRate. O. ^% L3 [: K$ |+ H0 V0 b5 `) e2 d
Потребление МР маг. скилами - MagicalMpConsumeRate; m, D. L3 Z! d% j Z) A$ P; Q+ u: V
Потребление МР дансами - DanceMpConsumeRate5 G* n+ Y9 \" A% I+ d; e- ]8 E; z
Потребление НР - HpConsumeRate
$ w5 y7 m; @; e( f' O1 T @) }& uПотребление МР - MpConsume6 c# t4 l* {4 F
Потребление соулшотов - soulShotCount; |; Y" A) X1 |# d& K
Skill Мastery - skillMastery
) K |( i8 O% x% \( w+ q5 s qВремя пребывания около водой - breath
& v+ \- W8 J0 Z x3 G9 D! T# ]* t6 }
Вроде все какой угодно скилл начинается почти открывающего тега да заканчивается закрывающим тегом . в течение скилах теснить 3 обязательных тега, лишенный чего которых он отнюдь не довольно заниматься - это target, skilltype также operatetype. Давайте разберемся сколько это такое вообще ' A; ]5 c; o& X& b" N
4 F$ r ~2 l. F2 m
1. target - тег, что показывает для кого довольно обещать таргет, сколько следовательно с названия. Принимает следующие значения: @; `% H, K7 Y' D
: M/ ^+ B5 `% e! I& H
TARGET_SELF - обозначает, который скилл довольно использоватся только для его владельца (селф бафф типа Battle Roar иначе говоря War Cry)3 ]4 S7 [" @' X0 \5 u( b: f
TARGET_NONE - мишень неопределена7 t$ N: S/ T6 d: E9 f6 b
TARGET_ONE - обозначает, который мишень вашего скилла - тот который в течение таргете.
& r9 B. ?9 y, Y, h. ~TARGET_AREA - обозначает, который скилл довольно массовым. t, B' ?: U- J
TARGET_AGGREMENT - обозначает, сколько целью довольно тот, который вас атакует
m7 X. c; z) u) E
% s3 R6 K7 e/ {" w l2. skilltype - тег, указывающий для вид скилла (бафф, дебафф)- r' ^% e) _, j/ }' z
Принимает следующие значения:
9 \8 }. a# s' m0 ]4 B" IBUFF - бафф (оказывает положительное воздействие)
# b* j* N! b9 \( w4 C/ L' V! J0 SDEBUFF - дебафф (оказывает негативное воздействие)
) `1 ^* d+ r& R/ n
$ ~) h, i/ D/ Y3. operatetype - сей тег служит на определения типа скилла (активный либо пассивный)
. P, l# |% \$ m7 U5 T* @& POP_ACTIVE - активный скилл, может являться использован игроком: c: V* a/ }, x. P' e+ E, |" H
OP_PASSIVE - пассивный скилл, скилл из таким operateType никак не может пребывать использован (действует всегда)8 I+ E% {! Z& a
Это были обязательные переменные, используемые на скилах. в настоящее время перейдем для остальным:
3 {, m1 H2 f5 \" E. Q7 c0 [+ n-power - значение скилла0 p( m, D* n8 b
-hitTime - скорость. чтобы баффа это быстрота чтения заклинания, с целью физ. скилла - прыть атаки
) P! {; Q' J, m/ f- E9 S& [-reuseDelay - откат скилла+ m x% w9 v; u% c
-hpconsume , mpconsume - потребление МР, НР5 S. R, f* l; u2 L2 I% B
-castRange - это дальность использования того иначе иного скилла (дистанция)
" l- Q9 K% T/ M6 C! u( }. K-isMagic, isDebuff, isBuff - это наводящие теги, могут владеть разум "true" также "false". для примеру, isBuff = true (это следовательно сколько скилл является баффом)
/ D7 c3 R8 r' b-effectRange - радиус действия (для массовых скиллов): A. w J- c+ S9 a
-agro - который такое агр, равно сколько такое власть агра думаю растолковать отнюдь не нужно.% [, Z5 b3 I3 p( ^4 u! z
Это основное сколько вам понадобится. ныне расскажу вам по части значении тега на скиллах.& Z& x1 k, V+ U8 _' K( U0 y4 P* p
Тег на скиллах Lineage 2 встречается чрезвычайно часто. Обычно известный тег используется в видах "добавления сложных действий" для скиллу. буде скилл имеет головоломный разновидность реализации то обычно в течение тег добавляют некоторые отдельные значения, которые реализованы в течение ядре ява сервера Lineage. настоящий первенствующий тег к использования здесь - это .
0 N6 l$ J, s s9 UПриведем первообраз использования тега равным образом тега :' _, {" t/ c; g1 ~# M
8 m! o5 B0 [$ R. a; a" d2 t3 R8 o! }3 }3 a8 T! G9 _
+ \: y/ Y$ Z9 j/ ]
Что сие значит:
6 I+ _6 b) `5 e' Z$ _: A# p% w/ F% z4 ^! C9 \
name - Это характер эффекта
- r3 @! o/ W% D- @% G2 E8 {val - важность эффекта. в интересах дебаффов - надежда прохождения, на боевых скилов - сила.
4 N3 Q3 D: a* ]8 @: Q# V/ g. P# Ktime - век действия эффекта9 S3 l5 ?5 x C* ?1 S
StackOrder также stackType - это значения уже описаные на данном скиле. order равно образец то есть но значения равным образом переменные из ядра сервера.2 u! y0 u; S4 h4 B/ S l: Z
6 O! T8 Z, K" }9 e
Думаю со скиллами я разобрались, нынче перейдем для зонам.0 j8 p$ n5 d. e& Y7 ~& W7 f8 Y
( l, o) b1 i5 a$ j- e
Часть 4. чтобы начала описания зон используется тег .
& \) b0 Z5 f1 x2 [8 C/ d0 y7 I# u+ w/ W6 H& ^
9 f( V, Y: N$ A6 M" ]
<!--Комментарий-->0 R6 g" P `, m6 ~. H( E6 M
/ d0 ] O; y1 Y1 ~3 [
Пройдемся за значениям:9 O+ g, b6 k7 _* `0 k' r
5 V9 _7 `: r) r" O
id - идентификатор зоны.- i" E# w# O# D0 k' M' M% M
type - образец зоны (town, arena, jailzone). Например:2 u0 d* ?! O2 U
Town - мирная зона (город)
/ V2 g! I1 F: D7 r! Y: W8 d/ p; \Arena - боевая зона (PVP)5 M4 j6 R+ I p- g* G8 o1 S/ _
JailZone - зона. простой зона (извините после аллегорию ). за другому - тюрьма. в течение ней запрещены беседа да телепорт.
7 d0 J9 e; L |' h# Ishape - это платье разве подобие зоны. Может водиться двух типов :% a1 F& K* L; S" l6 [- t8 ]: F
-nPoly* _% |7 X8 @2 l
-Cupoid.# Q4 S( ]" \5 R5 E* d" y
minZ - это минимально допустимая координата гора (z) на данной зоне ./ g. ?% d; o, |. w* Y$ R/ j. A& _
maxZ - это максимально допустимая координата гора (z) на зоне.4 i, [7 n: }/ y+ g o6 u4 I# m
minZ также maxZ используются в угоду кому избежания прохождения сквозь текстуры, провалов перед них равным образом т.д.
) a* O& `& Z' n- k/ [0 `+ ~ |