Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Познавательная статья относительно применения XML в Lineage 2 серверах. Изменение статов, скиллов, вещей, зон
0 C2 r, I: ~3 B0 `$ A# ]
2 h# ~: X9 a, R! pЧасть 1. Введение
- v k6 p- n* {8 |& d1 h1 {) ? t W' \* O* s6 y% P: p
Начну от того, который но такое XML? Это текстовый формат, предназначенный в пользу кого хранения структурированных данных, ради обмена информацией промеж программами, же и с целью создания для его основе более специализированных языков разметки (например, XHTML), кой-когда называемых словарями.6 s. t6 _, ]. L u
Первая черта XML-документа называется объявлением XML — это необязательная строка, указывающая версию стандарта XML (обычно это 1.0), да здесь может присутствовать указана кодировка символов да внешние зависимости.
E! Y1 m& _* D
' Z) c8 V# Z( ^, y! L: JСпецификация требует, с целью процессоры XML непременно поддерживали Юникод-кодировки UTF-8 да UTF-16. Признаются допустимыми, поддерживаются равно широко используются также другие кодировки.* g! x m5 i0 s
Так но на XML кушать мочь добавления комментария. объяснение может скрываться размещен на любом месте дерева. XML комментарии размещаются внутри туман тегов <!-- равным образом -->. чета знака дефис (--) никак не могут оставаться применены ни в течение который части внутри комментария. Вот прототип комментария:, I1 L) i9 ~2 X- h
: \7 V* l1 w& d/ r1 b
<!-- Текст -->6 |6 p' X9 Q* j' v2 U/ R$ C3 m* m
7 b0 G7 I( R4 K5 I3 ^Но я отнюдь не будем углу{цензура}ться в течение весь особенности XML, нас интересует всего на все часть, которая касается Lineage 2 XML в течение сервере Lineage применяется в угоду кому описания статов оружия, брони, скилов да т.д. в интересах оружия это предположим параметры физ. да маг. атаки, ради брони - защиты, в угоду кому скилов - медленность действия, сила, действие равно т.д. только предположим в течение файле "servername.xml" хранятся имена серверов до умолчанию. Эти имена могут содержаться свободно изменены. а кроме изменений в серверной части необходимы да изменения со стороны клиента (со стороны клиента нуждаться изменить файл "servername-e.dat". Изменяться *.dat файлы клиента могут от через специальных программ - L2Dat_EncDec да L2 FileEdit. в течение следующей части мы научу вас переменять статы вещей.0 K! W( M# P7 v) d4 l3 p
6 z- ~4 D- \1 v6 p T( j; b
Часть 2.Изменение статов вещей.
; { [) ~9 V! X( S( k" ~" W) @
Возьмем итем Shirt. Это неприметная НГ шмотка. в ее примере аз поясню что, где также когда. Вот кусок XML кода
9 e9 N, @& A- j0 v$ e
3 i4 }+ r* e, u1 `+ G- [. OДля измения ее статов тогда нам нужна лишь одна строчка:, M+ C. l$ H+ G# K" b
) }0 \& A1 o$ ~& | N t; VЧто это безвыездно значит:" j- S$ |) C8 X
. Y {8 i @, {# M4 z( d
Тег означает приращение равным образом является переменной. в его месте могут да а быть, например, , , , . да так. который но означают эти значения?* T7 X$ y1 u; C
1. <add /> - приплата статов. То кушать ежели вы оденете вещь, ваши статы увеличатся. важность order довольно 0x10.9 F% l- b% ~1 h" j) b; X1 Q& t
2 z% B3 ^8 b6 D2 h* G<add val='100' order="0x10" stat='pDef'/>
1 v+ f# D& \2 J2 y8 o& k
8 {. |; x! _* ~9 H& a0 W' {Данный код следовательно который присутствие одевании багаж вам прибавится 100 единиц стата (в данном случае P. Def).
. V/ J7 \& z/ B% m8 P: B. c+ h! \$ z$ O( @
2.<sub /> - вычитание статов. То поглощать буде вы оденете вещь, ваши статы уменьшатся. order да а - 0x10.
) s* q( }% f! ]0 F, U" b4 D9 G3 Y( K0 ]) |
Данный код следовательно который присутствие одевании багаж около вас отнимется 100 единиц стата (в данном случае M. Def).
0 A4 y: q* g% p% u! y6 I; k3 A. D6 o" I/ E4 h
1 q6 e' Y% M& L6 T" l: F G2 ~3. <set /> - назначает вам строгое важность стата. То теснить ежели вы оденете нечто со значением 20, то тот стат, однако кто это смысл влияет довольно равен 20. Order 0x08.
( p, P f) E0 \" k% q2 i) ~2 h' W7 v3 l# t5 k$ Z3 A7 B
Данный код следовательно который быть одевании багаж около вас довольно 100 единиц стата (в данном случае P. Def)./ Z8 a8 [) d/ G' E+ w7 G. P
^! n0 c- @$ R+ b/ T! M0 [4. <mul /> - увеличение статов. То лакомиться коль скоро вы оденете вещь, ваши статы умножатся. Order 0x30.0 y2 {$ Q) k6 ]
% n* O9 @% k' g, i; X
Данный код вероятно сколько быть одевании багаж разум стата умножится для 100 (в данном случае M. Def)./ a3 ~6 a) S& p w$ R# ]" @: O y
% q% y3 A; y8 R1 E% M- P6 \- Q
5. <enchant /> - показывает, в что увеличится стат около заточке вторично в +1. Order 0x0C.$ T, o) y7 E5 ?
% T1 N& W( H( H) z/ p
Данный код следовательно который быть заточке багаж опять в 1 ваши статы (в данном случае P. Def) увеличатся для 100.
: m) O. _0 [6 `! k& J" WНиже приведена список значений "order":
; }/ u6 \/ [ x7 }# z5 H9 s4 S
0x08 - set
6 S, F% K& q% W) c/ M2 W0x10 - add/sub (оружие, броня, бижутерия) также (STR, CON, DEX, INT, WIT ,MEN)
4 S2 h- _) S; _+ n$ x% H2 A+ q0x20 - отнюдь не нужно
6 n! z3 `+ H' I) k' |0x30 - mul/div (masteries, buffs, debuffs, SA (специальные возможности оружия), бонусы брони)$ v1 t8 Z3 A: P) y! L
0x40 - add/sub (masteries, buffs, debuffs, SA (специальные возможности оружия))8 v7 ]$ I/ T: @$ P g
0x50,0x60 - никак не нужно
" ^' y+ h# N) r6 z4 p0x0C - enchant6 k7 Q- c! B4 \+ i
1 m% E7 w: G5 }2 [( fЧасть 3. перемена скилов' }0 Q! e# h b0 S7 R
# [# ?- d7 V2 U+ W7 rСамая большая порцион моей статьи Начну со значений, причинность вы должны быть знакомым сколько изменяете.3 a: z1 @# N0 q7 h3 X- T; D8 x: ]
/ b2 X% m1 ]1 mИзменение максимального количества HP - maxHp$ p: w2 h( @9 R
Изменение максимального количества CP - maxCp* U; z1 q: E3 I0 W
Изменение максимального количества MP - maxMp6 m2 j) w4 E4 P: Y2 A* N( R1 n
Регенерация НР - regHp/ H8 n. J8 [( C/ v, E
Регенерация СР - regCp
) P8 m0 A/ C8 t. T8 U2 tРегенерация МР - regMp: t. r3 Y/ b$ R) g; \) W, b/ H
Эффективность хила - gainHp( I: |# g! v2 k% v1 e7 ^9 |
Умение хила - giveHp
; U* j' |) D0 MБонус хила - bonusHp
! ^8 K, N9 A2 aФизическая опора - pDef
. H6 K& f' t3 z+ NМагическая столп - mDef
$ [2 @8 w9 H9 [# SФизическая набег - pAtk
& x6 K+ ^* J: D9 OМагическая набег - mAtk5 C4 ]3 V2 y6 p: x. g+ \; v
Скорость физической атаки - pAtkSpd6 X+ ?2 l4 g* Z0 a7 ~0 R+ E
Скорость магической атаки - mAtkSpd G# T# v) q* r8 f
Скорость отката - mReuse
/ _7 E H1 R1 ]) m0 Y5 m! nЗащита щитом- sDef# {. {. F# n1 T' r6 C7 G6 ?
Угол защиты щитом - shieldDefAngle
; `% D/ Q9 I( z# H% {& ^Критический пощечина - cAtk
' @5 [- q& _) p" O' RПрибавка для критическому удару - cAtkAdd$ ?$ B9 Q2 V4 H: U/ E
Физ. урон в течение пвп (например в пользу кого Duel Might) - pvpPhysDmg
4 d4 o1 f( i" c" p# R5 ~3 u$ |Маг. урон - pvpMagicalDmg B, p% M5 N( U1 d
Урон скилом - pvpPhysSkillsDmg
3 {' W0 Z" j5 j: ~5 W' H* Y: \/ p3 HУворот - rEvas
1 |: x( B6 Q- b _1 e9 N/ A, gУворот через скилов- pSkillEvas7 F$ C6 n" g3 x% q7 O4 B, `
Шанс блокировки щитом - rShld
6 a3 R* j0 Y2 W, B! s( O8 |Шанс крита - rCrit; O5 q1 g8 Y3 w9 b& t; E: v$ t% J" k
Шанс Blow - blowRate/ o' c& ?% A9 m/ ~) E x
Шанс Lethal - lethalRate2 k2 I3 j, P* w4 }4 z' s$ e) A
Маг. крит. надежда - mCritRate (mCrit doesn't work!!)
+ ^7 n1 h' i: P9 {/ e4 Q0 SEXP,SP надежда - rExp$ D% B: j S0 z$ Z q1 a4 E
Cancel - cancel
# _, k4 ? S3 l4 dТочность - accCombat5 t; [ v+ }+ w: v# N2 i
Зона покрытия физ. атаки - pAtkRange (for fighters)
, b6 b3 r6 m+ Y# n% mЗона покрытия маг. атаки- mAtkRange (for mages)2 p0 B6 U2 Y: M9 f, O
Угол атаки (только с целью воинов) - pAtkAngle
2 d4 Y% @$ C0 UКоличество атакуемых - atkCountMax' Q% A, b- e/ A6 R1 I3 N% S
Откат физ. скилов - atkReuse6 j4 K. F% H9 G' S+ p
Скорость бега - runSpd4 b% X! U4 t! C
Скорость ходьбы - walkSpd
2 d H: I! M& ~. a) rSTR - STR
& m' q/ u; u* g& j7 E4 H! N$ BDEX - DEX
Y9 s& U: g8 @1 n) dWIT - WIT; @7 Q: t8 x# [" v
INT - INT- h p- _* x1 G7 ?& G. a& j9 _+ ?* |$ |
MEN - MEN
7 U6 @" w( u9 j; S2 O" b4 ^& D& Q3 f* c. M' q" w
Уязвимости
2 s1 A1 T8 N1 Q3 u
0 k& u5 g. H4 d* ^Агрессия - aggressionVuln
/ i. t8 \ C( \9 F) i! z1 nКровотечение - bleedVuln: s- n6 Y$ `3 _' J5 [8 Q
Яд - poisonVuln
! b4 v$ [+ H. [! c5 w( |7 mСтан - stunVuln
% ~+ T; k) F# [0 @Парализация - paralyzeVuln8 L% O* C- K5 U" a/ H
Удерживающие заклинания - rootVuln
{: y# f. r, J. rСон - sleepVuln
; t, l+ ]) R% _" ^"Перекидывание" таргета -confusionVuln( T+ c8 [5 X5 B& W
Движение - movementVuln
, m* `. C! n9 ]- cОгонь - fireVuln. k5 @- b/ N3 n2 f3 w) W0 K- }% q: o
Ветер - windVuln( }( ], e+ F, [( @
Вода - waterVuln
6 E# o1 V* K6 f$ R$ G8 cЗемля - earthVuln$ V- Z/ n0 c4 d5 N/ V" |( \
Святые атаки - holyVuln6 I0 o4 J3 o* m" w( ^$ s, x# `8 h
Темные атаки - darkVuln4 c; Y& Z! d4 b+ ~+ o. c
Резист для cancel - cancelVuln/ [% ]- B' C! b" M
Дебаффы - debuffVuln: q; _. O' g, S
Резист для криту - critVuln
; v6 w) H6 d t6 p) g
8 v! r8 j0 A# W" ], C1 XРезисты простив оружия (тут думаю изображение никак не нужно)
9 w; `% g0 u$ c" R0 \8 [& f# b N( k* G8 T9 j
noneWpnVuln
; m2 O% L. r- a* R5 }swordWpnVuln
7 k! n! L2 c$ `# O& R H# z- cbluntWpnVuln' C9 N) J+ G& _$ N
daggerWpnVuln6 X4 L: i* K# i0 n. c1 l
bowWpnVuln5 _; t7 f: r0 D7 t# J) V I
crossbowWpnVuln3 H' b+ }* L* ]' B0 _9 B
poleWpnVuln( L6 G" f0 v+ t* e( F4 Q
etcWpnVuln
1 g3 j4 @0 [, `( W5 n: W& XfistWpnVuln
9 r" q/ c& I0 VdualWpnVuln
' O. z$ [0 z) ]6 e1 l! ?# q0 PdualFistWpnVuln
4 [. |- K2 y& k+ H7 Q" wbigSwordWpnVuln
4 }9 J+ Y6 Y: k
# A {, Q# k% vОтражение3 X R" R! Z* v) H2 W) Q8 X
' |* i6 D: \# k! A. ~& h `5 FПроцент отражаемого урона - reflectDam (pay attention! not reflectDmg!! reflectDam)( X2 n4 C Z( _4 K7 M& h5 `+ ~
Процент рассеиваемого урона - absorbDam8 W3 A! B$ O9 a* [7 `* q
Процент переносимого урона- transDam' c0 m' c+ R2 K; Z' D
Отражение маг. скилов - reflectSkillMagic
% S4 X) M6 f3 E) _1 N. I; VОтражение физ. скилов - reflectSkillPhysic
& D, N3 o, Z" p. c/ `. n) _2 a& R L4 u/ Q5 n& H
Другое (для примера):
( v$ m# [0 }/ p' Y9 ~4 x+ L7 O% Y' _
4 ]5 d( W) D$ ^: Q8 ]" p% eАтака для гигантов - pAtk-giants
5 ~) t. s% i6 n) b4 d% @Защита для ласкать - pDef-undead
4 K2 [4 d$ M) H) z% p" @# F' YАтака в животных - pAtk-animals2 W5 ?1 e6 w, A- n
Защита для монстрах - pDef-monsters
0 e9 X: _: j% V E8 wЛимит инвентаря - inventoryLimit
5 m: i3 U& V K. R4 z! Q! x8 vЛимит ВХ - whLimit. {( j& |* Y8 m! x9 a* J; s
Freight лимит - FreightLimit- [( Q+ T! J8 D- X# E9 k4 v
Лимит продажи. - PrivateSellLimit
6 [* ^' x% y# n- P; B5 x+ H+ HЛимит покупки - PrivateBuyLimit+ w+ l, }% E+ M& O) [8 a
Лимит гномьего крафта - DwarfRecipeLimit; W0 p R5 g. e3 u& p1 V( e; }
Лимит common крафта - CommonRecipeLimit
+ ~# Y; M0 g, ?Потребление МР физ. скилами - PhysicalMpConsumeRate
# q0 y$ ^) [- ~2 p8 r) wПотребление МР маг. скилами - MagicalMpConsumeRate
, W3 _* a8 X9 g. K+ pПотребление МР дансами - DanceMpConsumeRate
# p& v4 Z4 P) R% A0 a! {3 V0 }0 {Потребление НР - HpConsumeRate
- q; z4 e' }( f5 d2 ^) _% oПотребление МР - MpConsume
% K7 K7 q& |8 ]6 i% Y9 p6 y. Y2 `$ w+ IПотребление соулшотов - soulShotCount% W. Y9 @! j6 t. W
Skill Мastery - skillMastery. r5 Z7 @( P+ ~# T- ?
Время пребывания около водой - breath
3 D' {4 [* q. t9 R5 x$ T2 R b8 d: I6 z3 Z0 k
Вроде все какой угодно скилл начинается почти открывающего тега да заканчивается закрывающим тегом . в течение скилах теснить 3 обязательных тега, лишенный чего которых он отнюдь не довольно заниматься - это target, skilltype также operatetype. Давайте разберемся сколько это такое вообще ( d/ D! l# t' [9 L* p' @$ g
' O% d! @( O1 ]: y9 b+ E5 P7 `
1. target - тег, что показывает для кого довольно обещать таргет, сколько следовательно с названия. Принимает следующие значения:, w5 G: H6 P% O& i
3 b, z, Z- `$ C* {; STARGET_SELF - обозначает, который скилл довольно использоватся только для его владельца (селф бафф типа Battle Roar иначе говоря War Cry)4 `& o' ~ H k1 u6 N
TARGET_NONE - мишень неопределена
0 Q1 ?/ T0 d# i6 L1 mTARGET_ONE - обозначает, который мишень вашего скилла - тот который в течение таргете.7 \7 Q+ j3 r2 |# Z" V) R: J
TARGET_AREA - обозначает, который скилл довольно массовым4 p: p' t: j& C
TARGET_AGGREMENT - обозначает, сколько целью довольно тот, который вас атакует; a1 \/ R1 i$ s- D% D3 n
- Y; _) K* @; ^2. skilltype - тег, указывающий для вид скилла (бафф, дебафф)
Q# _( V/ Q* B- y* j1 w! ]Принимает следующие значения:! r2 y( P4 d9 l" `
BUFF - бафф (оказывает положительное воздействие)! I& Y) p( R. ?% [
DEBUFF - дебафф (оказывает негативное воздействие)& D6 K( d5 L7 v. o) T: G. Z% I
, A, O- P. P. h$ z" J3. operatetype - сей тег служит на определения типа скилла (активный либо пассивный)& b n, H7 U0 h: ? t
OP_ACTIVE - активный скилл, может являться использован игроком3 |4 t/ i/ y. v# w: u. L' A
OP_PASSIVE - пассивный скилл, скилл из таким operateType никак не может пребывать использован (действует всегда)& y* r, W8 K4 M% F6 F0 S
Это были обязательные переменные, используемые на скилах. в настоящее время перейдем для остальным:/ a. R6 O# t8 r# p8 k; S
-power - значение скилла
; [& M# ~3 Q& o/ O' c4 a% q, T-hitTime - скорость. чтобы баффа это быстрота чтения заклинания, с целью физ. скилла - прыть атаки7 g' {: Q5 i$ w6 M+ z8 M
-reuseDelay - откат скилла
$ Y7 C- [( ^# U- l1 p/ j-hpconsume , mpconsume - потребление МР, НР& s; Y# y; a6 I/ y0 C. R
-castRange - это дальность использования того иначе иного скилла (дистанция)
3 b5 x+ R2 q1 e-isMagic, isDebuff, isBuff - это наводящие теги, могут владеть разум "true" также "false". для примеру, isBuff = true (это следовательно сколько скилл является баффом)
+ k, |2 V) d5 y7 F3 f" `% O-effectRange - радиус действия (для массовых скиллов)
( l0 Z, d8 P+ U% C& I3 v0 ]# K-agro - который такое агр, равно сколько такое власть агра думаю растолковать отнюдь не нужно.
/ g% U8 q& d, f6 C- x$ l5 l1 R# oЭто основное сколько вам понадобится. ныне расскажу вам по части значении тега на скиллах.7 I4 J! ]" P, j- ~
Тег на скиллах Lineage 2 встречается чрезвычайно часто. Обычно известный тег используется в видах "добавления сложных действий" для скиллу. буде скилл имеет головоломный разновидность реализации то обычно в течение тег добавляют некоторые отдельные значения, которые реализованы в течение ядре ява сервера Lineage. настоящий первенствующий тег к использования здесь - это ." h9 T; u% p+ A( b: Q4 i* D
Приведем первообраз использования тега равным образом тега :
/ V( j. W0 ]5 Z1 F' _' Z$ n$ n
" F. f! ^5 b# D5 |. C7 R) K- r+ p5 Q, x, A* [7 s8 c
( ~& q1 Q# m! vЧто сие значит:
$ \5 z$ a1 W+ L% Z& {8 g# Y
! L7 A6 c: B( r* L: |& J( F" g" x3 I! Ename - Это характер эффекта$ Q( h, r! j5 |1 P6 W; _" V
val - важность эффекта. в интересах дебаффов - надежда прохождения, на боевых скилов - сила.3 u; K) b# b/ \; k& U
time - век действия эффекта# M/ s$ C u+ O, _1 [
StackOrder также stackType - это значения уже описаные на данном скиле. order равно образец то есть но значения равным образом переменные из ядра сервера.
- N$ N: a6 s4 S% @# R% X1 ^; l8 Y; _* `/ y9 y& F6 Z: z5 i/ n
Думаю со скиллами я разобрались, нынче перейдем для зонам.
2 n& a" B0 @. j9 {" s& v5 U# |9 x3 f0 ^/ d& l1 @
Часть 4. чтобы начала описания зон используется тег .0 h. W5 ]* G( y; ^: c% X
" D4 I [$ R# q
# x. j; P- X- p5 a1 T) H* H7 e<!--Комментарий-->" O" _) @ _* Y4 n7 X9 a
9 ^8 a9 M( l: n2 r5 X8 [1 J8 ^7 K, GПройдемся за значениям:
2 A( ?: w3 m" @5 Z& x6 }6 z1 ?
id - идентификатор зоны.& e' c8 J F. }2 l4 C( P6 b4 c/ i
type - образец зоны (town, arena, jailzone). Например:( B3 o9 [- v3 L" z8 Y" T
Town - мирная зона (город). [% J" b% z! c, |
Arena - боевая зона (PVP); C: H1 ?' b; K7 t, w8 M' o
JailZone - зона. простой зона (извините после аллегорию ). за другому - тюрьма. в течение ней запрещены беседа да телепорт.
% J) T. s1 Y$ l& b! F& u! ]% vshape - это платье разве подобие зоны. Может водиться двух типов :: E7 r3 i, }+ P) ]1 b x
-nPoly
& v0 t+ k3 J' u( M6 O-Cupoid.
8 @9 F' c% }% `# [* dminZ - это минимально допустимая координата гора (z) на данной зоне .
; q# M7 T- p+ N6 _& tmaxZ - это максимально допустимая координата гора (z) на зоне.
* h5 e" V: A8 A6 v. r( D! j7 xminZ также maxZ используются в угоду кому избежания прохождения сквозь текстуры, провалов перед них равным образом т.д.
5 p' x, n5 P" r( R* S+ w |