Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Познавательная статья относительно применения XML в Lineage 2 серверах. Изменение статов, скиллов, вещей, зон
9 D8 b- e5 O7 v& O9 a/ s9 A7 W' ~5 i! F& {+ C; l% x
Часть 1. Введение* @8 m& N; W8 g& y1 k% i5 d
: g# p) Q5 T/ X! g. I
Начну от того, который но такое XML? Это текстовый формат, предназначенный в пользу кого хранения структурированных данных, ради обмена информацией промеж программами, же и с целью создания для его основе более специализированных языков разметки (например, XHTML), кой-когда называемых словарями.3 P2 B( [. E6 G/ m/ E- B
Первая черта XML-документа называется объявлением XML — это необязательная строка, указывающая версию стандарта XML (обычно это 1.0), да здесь может присутствовать указана кодировка символов да внешние зависимости.
8 L e5 R; M/ r( t; L5 r8 [/ }# f$ _6 Y8 w! g- M8 d
Спецификация требует, с целью процессоры XML непременно поддерживали Юникод-кодировки UTF-8 да UTF-16. Признаются допустимыми, поддерживаются равно широко используются также другие кодировки.
% X; e7 H! h0 g" c3 YТак но на XML кушать мочь добавления комментария. объяснение может скрываться размещен на любом месте дерева. XML комментарии размещаются внутри туман тегов <!-- равным образом -->. чета знака дефис (--) никак не могут оставаться применены ни в течение который части внутри комментария. Вот прототип комментария:; {, G/ N* Q; f, p: ~( ~# H
& q$ s+ w3 l$ P. B- o: t<!-- Текст -->
8 O/ ^1 ]# F4 z+ D: T% I8 U
; L0 z! w+ b$ t2 Z# CНо я отнюдь не будем углу{цензура}ться в течение весь особенности XML, нас интересует всего на все часть, которая касается Lineage 2 XML в течение сервере Lineage применяется в угоду кому описания статов оружия, брони, скилов да т.д. в интересах оружия это предположим параметры физ. да маг. атаки, ради брони - защиты, в угоду кому скилов - медленность действия, сила, действие равно т.д. только предположим в течение файле "servername.xml" хранятся имена серверов до умолчанию. Эти имена могут содержаться свободно изменены. а кроме изменений в серверной части необходимы да изменения со стороны клиента (со стороны клиента нуждаться изменить файл "servername-e.dat". Изменяться *.dat файлы клиента могут от через специальных программ - L2Dat_EncDec да L2 FileEdit. в течение следующей части мы научу вас переменять статы вещей.
( S. { v3 S! Q& z& G$ M' C1 D: b7 ?* I2 e$ Y* K- W
Часть 2.Изменение статов вещей." L4 g- l+ {! a8 c( n
( g* ]5 G+ d5 h3 g1 |/ d' p; x
Возьмем итем Shirt. Это неприметная НГ шмотка. в ее примере аз поясню что, где также когда. Вот кусок XML кода
6 {9 E' q; V6 h: E# P
. c8 n+ l2 A" O0 DДля измения ее статов тогда нам нужна лишь одна строчка:6 T% C: W- _2 `$ \; `
3 B. M6 B+ N/ x
Что это безвыездно значит:
- p4 ^" a* a r8 ]1 R2 s/ b: ?/ k9 x4 m* [/ l
Тег означает приращение равным образом является переменной. в его месте могут да а быть, например, , , , . да так. который но означают эти значения?
6 b. D1 s2 f i; o" q0 K( v1. <add /> - приплата статов. То кушать ежели вы оденете вещь, ваши статы увеличатся. важность order довольно 0x10.
; J e% W9 L+ U0 Y
& Z& J8 ?% w% V! t& {4 F6 B0 p<add val='100' order="0x10" stat='pDef'/>
8 l/ P g N/ w4 y6 }& |, n. z. `) l
Данный код следовательно который присутствие одевании багаж вам прибавится 100 единиц стата (в данном случае P. Def).1 ~' N3 Z. I; P7 [* E' D
5 {% q8 N1 _+ Y4 {, J9 C0 B8 G
2.<sub /> - вычитание статов. То поглощать буде вы оденете вещь, ваши статы уменьшатся. order да а - 0x10.
/ L% E, M- a' _7 j9 Z r- _' j" z% n3 x9 o
Данный код следовательно который присутствие одевании багаж около вас отнимется 100 единиц стата (в данном случае M. Def).) Y/ M# W1 L; Y/ j7 N
) E4 Y0 g# Q. k" k; p- k$ a
6 x( _) x5 d) w0 e! k' @* ], u
3. <set /> - назначает вам строгое важность стата. То теснить ежели вы оденете нечто со значением 20, то тот стат, однако кто это смысл влияет довольно равен 20. Order 0x08.
, d k& E/ j/ Y4 Z% Z4 ~# `0 l# L" K: _* F& |
Данный код следовательно который быть одевании багаж около вас довольно 100 единиц стата (в данном случае P. Def).1 w/ ~* s: K+ ^8 i% _
- s$ D& k7 J; q! o4 H- Z$ G+ n4. <mul /> - увеличение статов. То лакомиться коль скоро вы оденете вещь, ваши статы умножатся. Order 0x30.8 Q- A$ _: J) g8 w) P
* N( j- q W6 `0 ]6 _Данный код вероятно сколько быть одевании багаж разум стата умножится для 100 (в данном случае M. Def).
8 g. E) O* }- B ^( K) _ d
0 b: f) i9 R7 |8 u6 N2 L5 m5. <enchant /> - показывает, в что увеличится стат около заточке вторично в +1. Order 0x0C.
# a" ~8 b- o% s! n- z8 }. j6 Q/ B1 W. q9 z2 V9 U4 E* o
Данный код следовательно который быть заточке багаж опять в 1 ваши статы (в данном случае P. Def) увеличатся для 100.' `- F. {4 q+ V
Ниже приведена список значений "order":8 ~8 \% R! j/ w+ N5 L: F
& p/ `, X$ A) _( o6 D0x08 - set9 |# `, ~! A/ O y7 j
0x10 - add/sub (оружие, броня, бижутерия) также (STR, CON, DEX, INT, WIT ,MEN)
# u* p& j+ Y7 @) j o7 k* r, Z0x20 - отнюдь не нужно
; T+ t8 y/ `7 |# x+ t/ b7 L7 r0x30 - mul/div (masteries, buffs, debuffs, SA (специальные возможности оружия), бонусы брони)7 `; y& y- R# j& ~4 ~( ^9 A$ Z( ]1 L
0x40 - add/sub (masteries, buffs, debuffs, SA (специальные возможности оружия))
3 T9 T# {6 ]. n( [0x50,0x60 - никак не нужно
/ Z8 V; h1 R4 ]. b1 P0x0C - enchant. w* [, Q, b+ g+ i: p2 ]9 s
- l! @! v5 Y: M. x
Часть 3. перемена скилов t. V, F9 e o5 k- L( h* m
% y& W, w% I- p8 O' e
Самая большая порцион моей статьи Начну со значений, причинность вы должны быть знакомым сколько изменяете.; ? `% N r) [' F5 T8 `+ W
6 I0 ~1 M/ B7 I3 zИзменение максимального количества HP - maxHp
- H% D( Z- c+ \. M# `6 dИзменение максимального количества CP - maxCp" z* d1 \7 E8 w, B9 F% b; O0 @8 u
Изменение максимального количества MP - maxMp% U3 b& |. k+ O3 d o2 t
Регенерация НР - regHp
4 c* @" W4 q$ e- e5 b" R+ z! G9 w+ zРегенерация СР - regCp
% Q) ^$ }" ~0 P+ z& f% A% O" O# pРегенерация МР - regMp
* c: ~! W8 B. g" H. ~Эффективность хила - gainHp' y+ H$ D2 }1 \
Умение хила - giveHp6 R( f+ j/ m) e
Бонус хила - bonusHp- Z v2 j/ b' F1 E. a$ C$ J
Физическая опора - pDef" Q* o/ g" g. Q3 }
Магическая столп - mDef
7 j& k2 W- l) ?% s' SФизическая набег - pAtk
5 D3 M8 T& m QМагическая набег - mAtk9 n* ^$ b8 M) L5 \5 M5 [
Скорость физической атаки - pAtkSpd
: D, [2 s) z+ ~- h7 o G. K8 s) vСкорость магической атаки - mAtkSpd
; @5 a1 E: L* P* LСкорость отката - mReuse
5 {7 X: o0 E+ l9 ~Защита щитом- sDef" K8 K4 m5 c7 G9 q. W# F
Угол защиты щитом - shieldDefAngle
[: |: W& X5 S; j: t; |Критический пощечина - cAtk$ b! B" S# m9 L+ F# U" D) l# Q
Прибавка для критическому удару - cAtkAdd2 h2 o( p4 W+ K+ n
Физ. урон в течение пвп (например в пользу кого Duel Might) - pvpPhysDmg
3 Y/ g' W( l. n, dМаг. урон - pvpMagicalDmg9 J+ Z. c6 v+ U, S8 L& }1 I
Урон скилом - pvpPhysSkillsDmg" u& j4 Z5 A$ Q! N- M
Уворот - rEvas2 p1 u3 a1 W. v! G1 {9 a7 O
Уворот через скилов- pSkillEvas: B- v# d( e# }
Шанс блокировки щитом - rShld
7 Q/ \, _3 }8 B* RШанс крита - rCrit( w5 ?* z+ ]- j# w- U: y5 m; o5 u
Шанс Blow - blowRate/ z7 s7 p& Y/ y- e" \* ]
Шанс Lethal - lethalRate3 }) l8 c5 w7 K2 q8 o0 G/ J: E( l
Маг. крит. надежда - mCritRate (mCrit doesn't work!!)
6 A8 Q2 c, r( j% ^- w" d& Z& gEXP,SP надежда - rExp
' {7 C+ S r, D t, T, fCancel - cancel
' V, Q% V+ u. WТочность - accCombat5 A$ E O4 D) x% f& o
Зона покрытия физ. атаки - pAtkRange (for fighters)( g/ u$ n* r9 F& D* d3 ~
Зона покрытия маг. атаки- mAtkRange (for mages): _3 a- M; i% p
Угол атаки (только с целью воинов) - pAtkAngle
: Z" ?# n. G6 I e4 JКоличество атакуемых - atkCountMax5 d- y A) t ^4 s1 k7 ^; f2 `- ]
Откат физ. скилов - atkReuse
9 q5 M( w# Q6 P# U6 f( ^. _* q0 sСкорость бега - runSpd7 p" _: n4 o4 s1 v4 H7 Y
Скорость ходьбы - walkSpd
- F1 ^7 f/ }+ m7 G8 \5 R1 h$ a+ G: cSTR - STR# q6 K `' t& B. m% T, f
DEX - DEX, X0 C- }5 [! F7 q1 F# ?2 B4 e3 E# l, ^
WIT - WIT& }: g' r/ S# X$ V) l6 s# ?, b
INT - INT; L0 ` ` s, K4 j( J- `9 \
MEN - MEN
* e6 g* s2 n* i6 @
; r: \* k! D& |3 `2 a$ H3 Q& r5 \) LУязвимости
# z T( m" X9 Y- \/ Y
B0 D8 a, g% uАгрессия - aggressionVuln! N+ q' ~+ V6 I4 N
Кровотечение - bleedVuln- K6 K$ w1 n6 [( `0 g0 x' c
Яд - poisonVuln% B4 G6 H) e& [$ b) c1 w( R
Стан - stunVuln
5 Z- p* d6 d6 W( }2 TПарализация - paralyzeVuln/ A j) ^. x3 s# r% D7 C" X1 t! W% d
Удерживающие заклинания - rootVuln2 V' F. _( q1 q, _
Сон - sleepVuln# L8 T6 t* o1 F* E E
"Перекидывание" таргета -confusionVuln: |; b0 @# N: k2 ~ ~+ l
Движение - movementVuln
& V4 S' r- ^- s8 lОгонь - fireVuln
5 ]; s9 {$ I6 Z4 yВетер - windVuln/ v8 t& a) K4 G
Вода - waterVuln
+ U7 k1 c$ n: q6 H1 A! V( I- mЗемля - earthVuln* {. i7 @6 a8 K6 J
Святые атаки - holyVuln) o- N9 {$ s# w; w: h. H
Темные атаки - darkVuln" u# |8 E; u, L2 ?1 q" }
Резист для cancel - cancelVuln
* o' M6 [: h0 f2 Y; O+ a; p; }- |Дебаффы - debuffVuln
! _4 d! }7 t4 k8 x# c. P& XРезист для криту - critVuln) y. U8 K; `, p3 s
! F, X Q. D( c7 U* W. Q2 ?
Резисты простив оружия (тут думаю изображение никак не нужно). T. S3 f! ?- e' v2 u3 k( V
# }+ @+ l3 E( y+ K- g' i" q% AnoneWpnVuln. @& a/ B' N( z5 E) `
swordWpnVuln+ I5 v* P ^- S7 o! x/ I0 K, n
bluntWpnVuln) ~1 g. c4 o) j5 p
daggerWpnVuln& r" N0 C C9 T! x" o
bowWpnVuln
& Q" }3 @- A; y0 GcrossbowWpnVuln) y( F6 _" L& D. Z/ K( O3 C0 l% M
poleWpnVuln/ }& y2 u4 W- G
etcWpnVuln9 H& M E: }% ~( J- h! A. Y
fistWpnVuln
/ W' o( T' H+ S3 J1 e+ r" b0 W) _: ?dualWpnVuln
+ | B$ M$ d# E; gdualFistWpnVuln
+ v" i0 l: K" L1 n5 `bigSwordWpnVuln6 O: { e2 W% I4 ]3 {& M
) a" n2 V" H) `# c9 |
Отражение
! |7 s K7 J7 A& l7 }' i& r( M# ~) s
( W5 Y3 x: K$ v! yПроцент отражаемого урона - reflectDam (pay attention! not reflectDmg!! reflectDam)
- Z5 N/ O! w( jПроцент рассеиваемого урона - absorbDam
. E; |% R. t$ e8 U* p, }7 h5 \Процент переносимого урона- transDam
; n+ G Q8 m% I; O2 Z! sОтражение маг. скилов - reflectSkillMagic
! d" P/ y, z* |; w; m& m4 A% zОтражение физ. скилов - reflectSkillPhysic4 `: o6 ^+ g) Q0 S6 S
5 E5 ]- s# }& G8 x& H+ O0 Z9 tДругое (для примера):
% L: ^% z- V4 I; ^# _, @2 z) x7 u' }5 B% y
Атака для гигантов - pAtk-giants$ d' N& \0 _: k, ? f( j3 R* g
Защита для ласкать - pDef-undead& T3 d1 a$ \2 @9 k- r8 z( l
Атака в животных - pAtk-animals
5 A! L- G: {- [. s; c' jЗащита для монстрах - pDef-monsters
+ w( k7 R( e2 A9 m% s2 }- e8 e0 P9 [# @Лимит инвентаря - inventoryLimit% z+ n/ z1 ^- @3 T2 t
Лимит ВХ - whLimit. Z* V, E6 Y9 m" {6 D2 r/ g/ Y0 a, E
Freight лимит - FreightLimit) e# k4 H# l8 B
Лимит продажи. - PrivateSellLimit3 R S6 j5 C- a9 ?' ]4 r1 g
Лимит покупки - PrivateBuyLimit: Y, F* I) p9 f
Лимит гномьего крафта - DwarfRecipeLimit
! E5 A X2 w! {$ ?Лимит common крафта - CommonRecipeLimit' ? r' _5 h* \( r: h" _
Потребление МР физ. скилами - PhysicalMpConsumeRate
* [$ o: k5 t5 q/ eПотребление МР маг. скилами - MagicalMpConsumeRate
! z# ?' D2 ]7 t0 g2 qПотребление МР дансами - DanceMpConsumeRate
9 P# C3 y! R. DПотребление НР - HpConsumeRate
5 ^; D( S. {( l% d: DПотребление МР - MpConsume5 x# o. s" O: F. g2 k
Потребление соулшотов - soulShotCount
& o. T. ~& q2 ZSkill Мastery - skillMastery
, N- r: _# g1 VВремя пребывания около водой - breath
0 n' P2 h0 T( P9 E) y6 o3 c* X
; S) D- n6 C. W2 [ K5 f \1 u2 OВроде все какой угодно скилл начинается почти открывающего тега да заканчивается закрывающим тегом . в течение скилах теснить 3 обязательных тега, лишенный чего которых он отнюдь не довольно заниматься - это target, skilltype также operatetype. Давайте разберемся сколько это такое вообще
/ T% m! \! P. `5 p$ A2 s- T0 n+ Q; ~& O$ V$ V9 E9 M3 O9 _1 d& k
1. target - тег, что показывает для кого довольно обещать таргет, сколько следовательно с названия. Принимает следующие значения:, O6 v8 \ o7 c' x3 O' D+ N
, u$ X) \, |$ i, H/ W4 P% A" jTARGET_SELF - обозначает, который скилл довольно использоватся только для его владельца (селф бафф типа Battle Roar иначе говоря War Cry)
3 [! f: u# _: E! Q: E$ {5 t5 xTARGET_NONE - мишень неопределена
: _. L2 Z& r' o5 JTARGET_ONE - обозначает, который мишень вашего скилла - тот который в течение таргете.3 o' U( C" x% O- |- D8 T `
TARGET_AREA - обозначает, который скилл довольно массовым4 w" h% U9 e# Q" j# t$ R
TARGET_AGGREMENT - обозначает, сколько целью довольно тот, который вас атакует R U ^' R$ s8 g
3 @5 D6 }3 z4 a2. skilltype - тег, указывающий для вид скилла (бафф, дебафф)
) B( Q. b1 J0 s9 l! ]$ L7 f2 @Принимает следующие значения:
2 T" w, ?. T$ A- f" o6 x, M. GBUFF - бафф (оказывает положительное воздействие)
. T0 O) c. u, \DEBUFF - дебафф (оказывает негативное воздействие)% B0 ~ r( S, U, W* Q- T: a
0 `! t2 [1 X5 }1 U3. operatetype - сей тег служит на определения типа скилла (активный либо пассивный)
* {# b7 V" C0 h* T* DOP_ACTIVE - активный скилл, может являться использован игроком7 J/ q+ | L" V% a O7 @% E; _* O
OP_PASSIVE - пассивный скилл, скилл из таким operateType никак не может пребывать использован (действует всегда)
* T8 J+ k! N+ l' r4 f0 a7 C$ x: EЭто были обязательные переменные, используемые на скилах. в настоящее время перейдем для остальным:: e/ w4 y- q. |7 h" Y& T& H4 }# L
-power - значение скилла$ P G( K; Q4 G& t# [
-hitTime - скорость. чтобы баффа это быстрота чтения заклинания, с целью физ. скилла - прыть атаки6 x! [% y1 y* F: w, c) ^- d
-reuseDelay - откат скилла
/ s; S0 b# P- a0 x- G9 @-hpconsume , mpconsume - потребление МР, НР) [6 l( ?0 ^+ m C* e' t3 Q- z& w+ J
-castRange - это дальность использования того иначе иного скилла (дистанция)
- l y* }* z" E" v# M) Z0 u-isMagic, isDebuff, isBuff - это наводящие теги, могут владеть разум "true" также "false". для примеру, isBuff = true (это следовательно сколько скилл является баффом)
$ X- D) ^8 _, G" H! L6 Y8 g" T-effectRange - радиус действия (для массовых скиллов)
; f8 j+ o. d3 W2 [/ I. v-agro - который такое агр, равно сколько такое власть агра думаю растолковать отнюдь не нужно.
) a/ p# i& [; R$ \( BЭто основное сколько вам понадобится. ныне расскажу вам по части значении тега на скиллах. @9 Y+ L. W* b3 _
Тег на скиллах Lineage 2 встречается чрезвычайно часто. Обычно известный тег используется в видах "добавления сложных действий" для скиллу. буде скилл имеет головоломный разновидность реализации то обычно в течение тег добавляют некоторые отдельные значения, которые реализованы в течение ядре ява сервера Lineage. настоящий первенствующий тег к использования здесь - это .) b& Q! x4 ?; ? X$ w6 c" U+ p( W7 D W
Приведем первообраз использования тега равным образом тега :8 @' f4 J0 K: c( R+ `" h
1 p+ a l$ Y9 H9 a) o0 }
2 A0 ^% r+ z% ]" |
" z( ^! g5 b9 H& |4 u& _0 r$ S) P6 t& {Что сие значит:
9 j2 `+ a$ i8 d8 r$ A! b
+ N2 T: r! N* r8 K0 a5 Wname - Это характер эффекта9 R' K5 e% N& d. M
val - важность эффекта. в интересах дебаффов - надежда прохождения, на боевых скилов - сила.1 E6 G9 I2 [- Y- W, d. z! q
time - век действия эффекта- S) r& t' Q" q. L
StackOrder также stackType - это значения уже описаные на данном скиле. order равно образец то есть но значения равным образом переменные из ядра сервера.; ?& u9 s4 x' V/ U+ ]6 w- ^
1 ^6 d6 \, i+ V [9 R% J
Думаю со скиллами я разобрались, нынче перейдем для зонам.
# G4 ~( _" b: W, {' |0 N g P1 z4 {8 `# ]
Часть 4. чтобы начала описания зон используется тег .( A+ @ W6 b6 ^. j
/ U5 l9 {( n p, \8 f# x0 d9 y7 ^) I0 \
<!--Комментарий-->' r) E) O( v$ P$ T$ I
' h$ }$ V8 I+ T9 @) X C# BПройдемся за значениям:4 u/ v/ I. G- r5 v- j/ I
9 t- N/ U* X, d0 d) e+ Did - идентификатор зоны.
; E. S9 U6 c% N( Utype - образец зоны (town, arena, jailzone). Например:
8 T0 f) u- c7 l4 a. ^Town - мирная зона (город)
l$ c# [2 ^- ^1 WArena - боевая зона (PVP) ]; a4 u* |4 {
JailZone - зона. простой зона (извините после аллегорию ). за другому - тюрьма. в течение ней запрещены беседа да телепорт.
- G8 D- |7 T4 z4 T# qshape - это платье разве подобие зоны. Может водиться двух типов :; P1 s% @. F; K# [0 p* B
-nPoly8 q# ^9 |" _3 ~
-Cupoid.7 c; y" U" [: l! P1 N* X* b" b
minZ - это минимально допустимая координата гора (z) на данной зоне .
0 q6 x' ?0 M0 ImaxZ - это максимально допустимая координата гора (z) на зоне.
$ B( x% @, e0 d7 E* U. t+ c% T; _minZ также maxZ используются в угоду кому избежания прохождения сквозь текстуры, провалов перед них равным образом т.д.
: [) H, K8 S) E9 I9 P |