Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Познавательная статья относительно применения XML в Lineage 2 серверах. Изменение статов, скиллов, вещей, зон
& b+ o# s2 ^) b! T2 O
1 O# w, A5 P( _! I& iЧасть 1. Введение
/ D r! I8 E4 |4 W* K- a3 `1 I- o
Начну от того, который но такое XML? Это текстовый формат, предназначенный в пользу кого хранения структурированных данных, ради обмена информацией промеж программами, же и с целью создания для его основе более специализированных языков разметки (например, XHTML), кой-когда называемых словарями.
4 l5 M/ h) Y$ gПервая черта XML-документа называется объявлением XML — это необязательная строка, указывающая версию стандарта XML (обычно это 1.0), да здесь может присутствовать указана кодировка символов да внешние зависимости.
0 X. y1 R" U0 V' P8 q
3 s( O! `; }8 b( fСпецификация требует, с целью процессоры XML непременно поддерживали Юникод-кодировки UTF-8 да UTF-16. Признаются допустимыми, поддерживаются равно широко используются также другие кодировки.
& P) c) @5 a; sТак но на XML кушать мочь добавления комментария. объяснение может скрываться размещен на любом месте дерева. XML комментарии размещаются внутри туман тегов <!-- равным образом -->. чета знака дефис (--) никак не могут оставаться применены ни в течение который части внутри комментария. Вот прототип комментария:! ~+ A$ O0 r% t# F* u
! _1 o/ @, p" s$ s1 Z<!-- Текст -->
* U5 K- {; L" [7 z
" ]& V r. V! b! B* f' P0 V, n2 JНо я отнюдь не будем углу{цензура}ться в течение весь особенности XML, нас интересует всего на все часть, которая касается Lineage 2 XML в течение сервере Lineage применяется в угоду кому описания статов оружия, брони, скилов да т.д. в интересах оружия это предположим параметры физ. да маг. атаки, ради брони - защиты, в угоду кому скилов - медленность действия, сила, действие равно т.д. только предположим в течение файле "servername.xml" хранятся имена серверов до умолчанию. Эти имена могут содержаться свободно изменены. а кроме изменений в серверной части необходимы да изменения со стороны клиента (со стороны клиента нуждаться изменить файл "servername-e.dat". Изменяться *.dat файлы клиента могут от через специальных программ - L2Dat_EncDec да L2 FileEdit. в течение следующей части мы научу вас переменять статы вещей." R- D# I, S3 n4 v! g& l! l3 I1 v9 w5 W1 Y
( R9 ?6 N* M* f+ p r' `
Часть 2.Изменение статов вещей.6 [( l9 H* C# c+ G8 n
' g- y5 G9 q4 O4 w$ mВозьмем итем Shirt. Это неприметная НГ шмотка. в ее примере аз поясню что, где также когда. Вот кусок XML кода: z7 k- E- Q" [8 n6 L* y
$ D3 ~/ o% i ` b1 o2 xДля измения ее статов тогда нам нужна лишь одна строчка:
5 U0 ~" g3 K# P, E6 V( s6 C7 r, o2 r& H: W* d
Что это безвыездно значит:
) _; j* j6 ?' S) t4 G' T- i6 z0 Z4 M, C# P7 G- a
Тег означает приращение равным образом является переменной. в его месте могут да а быть, например, , , , . да так. который но означают эти значения?
W8 @, M+ l7 |9 Y" N1. <add /> - приплата статов. То кушать ежели вы оденете вещь, ваши статы увеличатся. важность order довольно 0x10.
5 w Q1 q3 s$ f: n, ^; Q
, x) ]; j/ Q- B- m, I! O# C<add val='100' order="0x10" stat='pDef'/>
$ B( M: z; Z s& d0 `8 z/ x" G8 z8 p) s* r
Данный код следовательно который присутствие одевании багаж вам прибавится 100 единиц стата (в данном случае P. Def).
. f& n" L/ O6 A) G; y7 A5 O/ ~# U( M; W. b9 s# l$ Z4 I5 W
2.<sub /> - вычитание статов. То поглощать буде вы оденете вещь, ваши статы уменьшатся. order да а - 0x10.
6 `* b( X, a6 r3 Z5 t9 M
1 O- C" T# I* I" V2 U& m+ d* ^8 KДанный код следовательно который присутствие одевании багаж около вас отнимется 100 единиц стата (в данном случае M. Def).
O! N. A5 E6 d: n5 U7 r t0 y+ Z- B3 W) n& V/ p5 W* `/ z
! C0 h: f7 g7 E8 I) t* s6 a; A" B2 M
3. <set /> - назначает вам строгое важность стата. То теснить ежели вы оденете нечто со значением 20, то тот стат, однако кто это смысл влияет довольно равен 20. Order 0x08.7 D9 S% m1 R: p3 h. a4 V" c7 V
' G" L ~& z9 v, y) J: gДанный код следовательно который быть одевании багаж около вас довольно 100 единиц стата (в данном случае P. Def).7 a% p5 ` C/ v# S% |5 r8 B: w
9 A: K) l6 }6 v/ q* ?$ b
4. <mul /> - увеличение статов. То лакомиться коль скоро вы оденете вещь, ваши статы умножатся. Order 0x30.
2 C! ^1 ~! _, ^3 w* {# h1 ?$ d$ T6 l/ v$ E. x$ N6 R0 `
Данный код вероятно сколько быть одевании багаж разум стата умножится для 100 (в данном случае M. Def).4 ?" L: [& P4 t
& J5 y( t4 J' M: p Q5. <enchant /> - показывает, в что увеличится стат около заточке вторично в +1. Order 0x0C.
+ O; t; q$ w$ N) X: k& L
4 x/ k9 d1 Z. f) ]+ cДанный код следовательно который быть заточке багаж опять в 1 ваши статы (в данном случае P. Def) увеличатся для 100.
0 i2 v5 m) N- q" b$ V8 m4 R! [8 k9 G" ?Ниже приведена список значений "order":3 W3 x. _5 k+ s' w1 v
+ ]+ \8 R) @) F& O& c. c3 _0x08 - set
* z" e: c% P6 e: Z2 L8 D x( Y0x10 - add/sub (оружие, броня, бижутерия) также (STR, CON, DEX, INT, WIT ,MEN)
( i, U: e$ g; l1 K. G0x20 - отнюдь не нужно
& E P* }# {0 ~0 q2 B4 x0x30 - mul/div (masteries, buffs, debuffs, SA (специальные возможности оружия), бонусы брони)3 \. O/ t% S( U$ f5 j) v
0x40 - add/sub (masteries, buffs, debuffs, SA (специальные возможности оружия))
; W/ k2 f% {+ {+ Y! F, ^" G# [% T' {9 e0x50,0x60 - никак не нужно. N# j- @) n0 a2 `* E8 N
0x0C - enchant
6 v1 C, K3 V% c' U4 y! n
( i% O4 ~5 c+ ]2 CЧасть 3. перемена скилов
+ D' ~1 g2 o( n" A$ P! E
& F) E2 u- k/ d& P( `Самая большая порцион моей статьи Начну со значений, причинность вы должны быть знакомым сколько изменяете.
8 n: S! f8 b% M! _
6 C- m9 ~: v" `9 F, rИзменение максимального количества HP - maxHp
) c% q. N4 g: S0 G/ u# lИзменение максимального количества CP - maxCp0 [5 f( ^; _, W6 ?# [) N5 H2 t
Изменение максимального количества MP - maxMp
2 _9 f! N, r0 R% d+ YРегенерация НР - regHp, X$ p2 _- D; X$ ?' k- G! X" T
Регенерация СР - regCp
( _# Y" I% d3 ]6 V' d$ I, e* oРегенерация МР - regMp
- l' h, D7 Z& X* e& IЭффективность хила - gainHp- h% j2 ^2 q3 n# _" p L
Умение хила - giveHp0 V; ~9 g! w7 r. ]7 W
Бонус хила - bonusHp* V& m/ c& s n* w/ b0 N
Физическая опора - pDef
$ r/ S1 {+ j" X" @8 P) A1 qМагическая столп - mDef
+ L: R& b) E7 x; U6 ?+ ]5 zФизическая набег - pAtk7 N8 j4 Y# r0 D9 h1 ]
Магическая набег - mAtk
) Q2 l& E2 {2 f: a! x0 h/ Q" PСкорость физической атаки - pAtkSpd
, W: y" k- \; o- cСкорость магической атаки - mAtkSpd. G, S( |. m; w
Скорость отката - mReuse
2 b! ^# Q1 r! x! ~% d6 wЗащита щитом- sDef
; M }5 ~! A5 oУгол защиты щитом - shieldDefAngle
; l! _. _5 w, O7 sКритический пощечина - cAtk
0 J1 j& \/ B' Q; o! w3 H0 iПрибавка для критическому удару - cAtkAdd
- {- } T4 h1 e# c LФиз. урон в течение пвп (например в пользу кого Duel Might) - pvpPhysDmg! \: }2 v& W: d& I. Q' N8 h3 H
Маг. урон - pvpMagicalDmg6 z7 @/ c3 p" `4 T' s1 S: b9 m9 U
Урон скилом - pvpPhysSkillsDmg& M. s+ h/ }2 l, q* ]- D8 k
Уворот - rEvas: H g7 I( M( Z3 {# ~. a3 [
Уворот через скилов- pSkillEvas
, |4 u( z$ H' cШанс блокировки щитом - rShld
; v" h6 u; A7 Q' v7 G) }5 R* E0 R7 DШанс крита - rCrit
7 H7 E8 I2 S; N: [Шанс Blow - blowRate9 T8 U% O' g: h" u: g
Шанс Lethal - lethalRate( V2 e& c$ C& W! I) F) U/ F- t
Маг. крит. надежда - mCritRate (mCrit doesn't work!!)
' f) j/ Q" m. IEXP,SP надежда - rExp
% m7 W7 G; R2 C* t7 [Cancel - cancel3 a: R, {+ ?* i. j% F
Точность - accCombat; z* i0 ]" K$ {. K. _
Зона покрытия физ. атаки - pAtkRange (for fighters)
/ o: ^% z M! L2 X7 d5 GЗона покрытия маг. атаки- mAtkRange (for mages)
@1 l8 H; l3 ~Угол атаки (только с целью воинов) - pAtkAngle Z1 q% c2 x8 @7 U6 Y4 ?) z
Количество атакуемых - atkCountMax
8 [5 e% d# ~' U2 D. CОткат физ. скилов - atkReuse5 F3 `5 B- q' }) ]- S7 v" v
Скорость бега - runSpd& r" X/ u2 \* u" t. P
Скорость ходьбы - walkSpd) c% H+ u3 I3 S* a5 G
STR - STR
; }, F# H0 M; D! O0 bDEX - DEX& `# S0 q$ q- a) Q
WIT - WIT
4 ~9 X, g- L7 G8 c+ UINT - INT
1 j0 L3 p/ ?+ _ P! R( DMEN - MEN* y6 g6 |) i; O5 p( k# E
; K$ _( F' l/ l6 K& t: Q9 FУязвимости$ B" I. y' @9 O Y2 a
! _" m: p. M3 DАгрессия - aggressionVuln8 @% H( o$ R+ H
Кровотечение - bleedVuln; C( |( C2 G4 Y! v+ f* N
Яд - poisonVuln9 R1 ? l8 \: T+ Y+ O
Стан - stunVuln
# {' k0 X+ W6 eПарализация - paralyzeVuln% q+ B/ ?( {; A4 d
Удерживающие заклинания - rootVuln
, @: O( T8 L6 QСон - sleepVuln3 T, l' N9 V& R* @/ f6 D8 c
"Перекидывание" таргета -confusionVuln
1 z6 I, w: P' F: \. lДвижение - movementVuln
4 O4 ?3 O* K: z/ V0 N+ Y/ HОгонь - fireVuln, f" J) z& J5 j9 `' @; u# E
Ветер - windVuln
; X+ u8 Z( {9 AВода - waterVuln
6 t" f7 O3 g% }: G# Z! D4 M! {% @Земля - earthVuln
+ Y, D1 x0 z0 N* ` c- t* ` \' m. P) sСвятые атаки - holyVuln
# d; c3 A8 J) k3 j! }7 GТемные атаки - darkVuln1 A F( t: B; x; h# V
Резист для cancel - cancelVuln1 {9 I4 o c5 f' r& \* V
Дебаффы - debuffVuln
' G2 q9 ^- d7 iРезист для криту - critVuln
2 Y. p* s" ^8 O% k. ^' E5 S. R. b. l/ q+ B6 u' S
Резисты простив оружия (тут думаю изображение никак не нужно)& w' e5 ^8 q. s6 K
0 `9 U6 M2 d8 ?! anoneWpnVuln$ n) g& y8 {1 g8 M' W w
swordWpnVuln
% V) j/ ^ N/ V. v; J0 LbluntWpnVuln
; @7 g7 h( i }daggerWpnVuln( b! K- ]) ]) |& j; M
bowWpnVuln d0 M* u: |- B3 a- O
crossbowWpnVuln1 y7 ^& K$ i/ `8 g% {- D
poleWpnVuln6 P+ w! T; f5 @0 Q* [# F/ T% @% F
etcWpnVuln7 |" J3 r* P7 ~0 W5 i K
fistWpnVuln
4 U9 q" ?: T2 ]& v( Q& JdualWpnVuln
1 `/ y' {$ S0 ~0 C: H8 a8 Z. odualFistWpnVuln' A _1 W, T: r- m0 t( E% |4 O
bigSwordWpnVuln
; I4 a9 N, h0 b- w+ `
r; u n- f% B z" X, sОтражение0 s6 Y1 X7 D0 P. m
. f8 {/ y; q# h& q L: JПроцент отражаемого урона - reflectDam (pay attention! not reflectDmg!! reflectDam)
- u' q6 |8 ^; c7 ~5 Q* R8 d/ sПроцент рассеиваемого урона - absorbDam: n: E1 o0 d0 e7 ]$ V. I2 Q6 U) t
Процент переносимого урона- transDam* G7 Z: H/ c' }: x8 u+ t
Отражение маг. скилов - reflectSkillMagic
2 [+ r, w) o3 Q' ~. ]) CОтражение физ. скилов - reflectSkillPhysic" ?3 [8 \7 q2 [2 |' b4 v/ ?1 A
( _9 Y x3 x/ {& J, i @
Другое (для примера):. y8 H4 }/ V. c" _- N) _
) f4 y, I7 G/ T0 n9 TАтака для гигантов - pAtk-giants
( x4 H" X% O) l( a* [Защита для ласкать - pDef-undead: X& ~; C% D! g! E1 h, a
Атака в животных - pAtk-animals
/ Q- [# j5 a7 `" `) ~6 t3 k/ {Защита для монстрах - pDef-monsters
0 [. o5 O: A1 l1 U E7 O q: fЛимит инвентаря - inventoryLimit+ ^6 U$ w# g6 z& R) }1 R
Лимит ВХ - whLimit% r5 X8 @7 U% c& S! p, ~) W1 s
Freight лимит - FreightLimit
7 M4 C9 d! W0 e2 D/ ?6 RЛимит продажи. - PrivateSellLimit
, _- ^" r3 P# Z. D: ]0 EЛимит покупки - PrivateBuyLimit
' ?' D* e, i9 F. i, O- |Лимит гномьего крафта - DwarfRecipeLimit( i5 a" Q" ^, f2 v% u
Лимит common крафта - CommonRecipeLimit0 U# D) {4 Q' E
Потребление МР физ. скилами - PhysicalMpConsumeRate
9 t7 a( Y z- [9 Z* _8 X4 qПотребление МР маг. скилами - MagicalMpConsumeRate8 z8 L$ [/ h& }0 l8 W, y
Потребление МР дансами - DanceMpConsumeRate4 N! \2 T" A4 t4 C5 V, V; J. K
Потребление НР - HpConsumeRate
1 W* v h6 ^% j) S5 vПотребление МР - MpConsume
6 }6 J& ~0 x( m! @0 s- yПотребление соулшотов - soulShotCount! W& c* \. l* S$ k
Skill Мastery - skillMastery
3 p) ]4 m; G6 |% WВремя пребывания около водой - breath$ }9 ?6 q; B$ ?
, }" Y2 n$ y% z' f, f* v% Z3 E/ B
Вроде все какой угодно скилл начинается почти открывающего тега да заканчивается закрывающим тегом . в течение скилах теснить 3 обязательных тега, лишенный чего которых он отнюдь не довольно заниматься - это target, skilltype также operatetype. Давайте разберемся сколько это такое вообще 1 i# b- b- Q. R" W) X9 f5 ~" Q
2 {5 B8 o! S& z, X7 Q$ l1. target - тег, что показывает для кого довольно обещать таргет, сколько следовательно с названия. Принимает следующие значения:
" l8 ?5 _. {$ v# q) F1 J8 t7 b$ }+ E7 c/ Z
TARGET_SELF - обозначает, который скилл довольно использоватся только для его владельца (селф бафф типа Battle Roar иначе говоря War Cry)
/ d s* P( d' T. pTARGET_NONE - мишень неопределена" o. h( B5 L! P9 s/ o
TARGET_ONE - обозначает, который мишень вашего скилла - тот который в течение таргете.
. o8 r0 ]6 N9 gTARGET_AREA - обозначает, который скилл довольно массовым
- E/ _ z: i5 |' H+ j2 oTARGET_AGGREMENT - обозначает, сколько целью довольно тот, который вас атакует
' @6 a w) s; _/ D3 C! k$ }5 ~9 z! d4 j9 G7 e. l4 ^# _2 {
2. skilltype - тег, указывающий для вид скилла (бафф, дебафф)* N- u i2 p" O! `; m/ p
Принимает следующие значения:& f& a/ J% n8 {- X% s2 q
BUFF - бафф (оказывает положительное воздействие)+ z' y4 f, P& [- \8 e# ]. Z
DEBUFF - дебафф (оказывает негативное воздействие)
! ?2 l5 O0 I8 a( N. g% i9 J( K" u8 e4 \: ]6 F, n7 j
3. operatetype - сей тег служит на определения типа скилла (активный либо пассивный)
( }- t& R4 U8 j t7 A/ }! D! T5 wOP_ACTIVE - активный скилл, может являться использован игроком; ^- V+ K( b( w6 m6 C
OP_PASSIVE - пассивный скилл, скилл из таким operateType никак не может пребывать использован (действует всегда)# _4 }- @- P, B. k. s
Это были обязательные переменные, используемые на скилах. в настоящее время перейдем для остальным:! F/ \# U4 d* U( y4 m$ `' m
-power - значение скилла! Y% U. L( t& i+ U
-hitTime - скорость. чтобы баффа это быстрота чтения заклинания, с целью физ. скилла - прыть атаки
3 E. @; N( l* t5 b-reuseDelay - откат скилла
+ \7 |5 a' ?' O/ Y-hpconsume , mpconsume - потребление МР, НР; F0 D: b& d% }
-castRange - это дальность использования того иначе иного скилла (дистанция)
# L; R# g& s7 r) Y) E-isMagic, isDebuff, isBuff - это наводящие теги, могут владеть разум "true" также "false". для примеру, isBuff = true (это следовательно сколько скилл является баффом), A. i; H/ S) n/ }6 Y0 D) Q" a
-effectRange - радиус действия (для массовых скиллов)6 \" w9 @/ q# C$ v4 R
-agro - который такое агр, равно сколько такое власть агра думаю растолковать отнюдь не нужно.
( X" }. H; o+ Z/ R) B, J2 JЭто основное сколько вам понадобится. ныне расскажу вам по части значении тега на скиллах.2 b! g/ r7 E5 w0 W7 }
Тег на скиллах Lineage 2 встречается чрезвычайно часто. Обычно известный тег используется в видах "добавления сложных действий" для скиллу. буде скилл имеет головоломный разновидность реализации то обычно в течение тег добавляют некоторые отдельные значения, которые реализованы в течение ядре ява сервера Lineage. настоящий первенствующий тег к использования здесь - это ./ A) W2 `$ \1 h* ~1 Q/ T0 r! { D
Приведем первообраз использования тега равным образом тега :. u1 c* l! G- Q7 v
9 K, V7 }# H7 P
2 M. ?4 Q$ U; o4 q% Z% o! _; E' @! c E7 M" X5 \: q' Y
Что сие значит:+ l( J' F/ v+ h# x
; W6 d! a2 l2 _% d8 p; i; {name - Это характер эффекта
5 W7 S8 d8 Q) w2 {5 Fval - важность эффекта. в интересах дебаффов - надежда прохождения, на боевых скилов - сила.
+ J: \$ E) y* X$ Btime - век действия эффекта# \. F8 @' I* `4 `' y
StackOrder также stackType - это значения уже описаные на данном скиле. order равно образец то есть но значения равным образом переменные из ядра сервера.
' m2 w, }! ], `. [) Q U* R5 v' @: U0 H+ u
Думаю со скиллами я разобрались, нынче перейдем для зонам.7 d. @, V O- @7 n& G
' k# m0 C8 B; K8 ]' f' sЧасть 4. чтобы начала описания зон используется тег .
& ~* A2 b* x/ B! C4 ^/ O& ^
& b1 ? G6 ^# }; u4 k5 s" n& u: c4 L# K. H; G- B) o; v% B* K
<!--Комментарий-->. n' X) u3 M: q. a- t% I, a* z
& U5 L& H# [" g. V$ g0 ^! L; \4 tПройдемся за значениям:
* a$ W: D# h5 l, @$ h! u( z" L* d3 U2 Z4 [4 f
id - идентификатор зоны.
" ^7 W, W b* t+ ltype - образец зоны (town, arena, jailzone). Например: Y+ p! e: Q# O& G c
Town - мирная зона (город)8 v) t0 |. I* `' i% o" w9 C) B
Arena - боевая зона (PVP)9 N( s, `( h, ~9 C1 ]2 v
JailZone - зона. простой зона (извините после аллегорию ). за другому - тюрьма. в течение ней запрещены беседа да телепорт.
: \, h4 E2 V+ K% d1 Yshape - это платье разве подобие зоны. Может водиться двух типов :$ U% g) r. t _0 I. O f# Q
-nPoly; o [( c- p$ c- `5 u) t. ^. E
-Cupoid.0 b8 d8 S! T7 r$ V% c
minZ - это минимально допустимая координата гора (z) на данной зоне .
! ~1 C, I! f6 n) f K3 O8 L* qmaxZ - это максимально допустимая координата гора (z) на зоне.' J) A. k( V2 u6 |$ m
minZ также maxZ используются в угоду кому избежания прохождения сквозь текстуры, провалов перед них равным образом т.д.! F5 K' p% C ^! M4 f6 E9 D7 t" [
|