Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Познавательная статья относительно применения XML в Lineage 2 серверах. Изменение статов, скиллов, вещей, зон$ A* f4 B# v4 j0 a; K7 }
; O! w: K4 ^: h# y0 Q; K" ]Часть 1. Введение
! K) m1 a$ Z/ C4 [+ G1 |& S- y5 _) e) @1 j }( I2 x+ b
Начну от того, который но такое XML? Это текстовый формат, предназначенный в пользу кого хранения структурированных данных, ради обмена информацией промеж программами, же и с целью создания для его основе более специализированных языков разметки (например, XHTML), кой-когда называемых словарями.
( i: b; {% v3 x3 p/ A- n" b' tПервая черта XML-документа называется объявлением XML — это необязательная строка, указывающая версию стандарта XML (обычно это 1.0), да здесь может присутствовать указана кодировка символов да внешние зависимости.
' B8 E/ ]# P+ Y, w: @' @
) C9 r- t- o$ Q5 y4 I% yСпецификация требует, с целью процессоры XML непременно поддерживали Юникод-кодировки UTF-8 да UTF-16. Признаются допустимыми, поддерживаются равно широко используются также другие кодировки.$ i7 [2 E& J) x1 @
Так но на XML кушать мочь добавления комментария. объяснение может скрываться размещен на любом месте дерева. XML комментарии размещаются внутри туман тегов <!-- равным образом -->. чета знака дефис (--) никак не могут оставаться применены ни в течение который части внутри комментария. Вот прототип комментария:1 V9 F1 f; p7 _9 J+ S
% P' H( u. ~1 S/ D' v5 a
<!-- Текст -->
L$ g; a: p# {
( p9 h6 Q" I& aНо я отнюдь не будем углу{цензура}ться в течение весь особенности XML, нас интересует всего на все часть, которая касается Lineage 2 XML в течение сервере Lineage применяется в угоду кому описания статов оружия, брони, скилов да т.д. в интересах оружия это предположим параметры физ. да маг. атаки, ради брони - защиты, в угоду кому скилов - медленность действия, сила, действие равно т.д. только предположим в течение файле "servername.xml" хранятся имена серверов до умолчанию. Эти имена могут содержаться свободно изменены. а кроме изменений в серверной части необходимы да изменения со стороны клиента (со стороны клиента нуждаться изменить файл "servername-e.dat". Изменяться *.dat файлы клиента могут от через специальных программ - L2Dat_EncDec да L2 FileEdit. в течение следующей части мы научу вас переменять статы вещей., @# i3 \% M% ]! h. P
6 r% ^6 S& N: _Часть 2.Изменение статов вещей.& {5 O' T5 \& c6 o" p9 ]) d" o7 l* P
: Q" b+ d8 [5 C! `Возьмем итем Shirt. Это неприметная НГ шмотка. в ее примере аз поясню что, где также когда. Вот кусок XML кода
4 j. f1 l# Z8 c" m, `9 |+ [4 y
Для измения ее статов тогда нам нужна лишь одна строчка:
5 R% i' {/ ? N0 w2 q5 C c6 @2 M N. F# h0 ^! R
Что это безвыездно значит:! R- j5 Q' n: H( b5 `; }
6 G" E4 e$ D% G) V! k; @1 xТег означает приращение равным образом является переменной. в его месте могут да а быть, например, , , , . да так. который но означают эти значения?
5 V: V" { Y, X1. <add /> - приплата статов. То кушать ежели вы оденете вещь, ваши статы увеличатся. важность order довольно 0x10.
7 m0 K+ `+ K$ b a7 [. j' V
' o7 p, Z0 {+ Q, `, m8 H<add val='100' order="0x10" stat='pDef'/>
, t/ W. k$ n) Y- _0 }; S5 f! j' x' T e
Данный код следовательно который присутствие одевании багаж вам прибавится 100 единиц стата (в данном случае P. Def).
. Y" B% d; C2 ~' O; q
. Y5 v' d4 a1 X) J0 ^! ~4 g- Y2.<sub /> - вычитание статов. То поглощать буде вы оденете вещь, ваши статы уменьшатся. order да а - 0x10.% W& V9 X+ K- b' q
2 ^6 p. w }: X7 |& j9 KДанный код следовательно который присутствие одевании багаж около вас отнимется 100 единиц стата (в данном случае M. Def).) [& Q: O" R3 R8 z: t
; p/ r. R i" l6 B3 k! j3 w! @' E: ^' }6 d
% R9 i1 S: G) U) Q' S3. <set /> - назначает вам строгое важность стата. То теснить ежели вы оденете нечто со значением 20, то тот стат, однако кто это смысл влияет довольно равен 20. Order 0x08.# x' B7 Y* J3 U: ]: _( i+ c
; I: ^0 s: \: Q/ F) ?Данный код следовательно который быть одевании багаж около вас довольно 100 единиц стата (в данном случае P. Def).
, V' o" l- g$ F) s/ R1 |' a! N* f: h. ?# d ~* o7 ~7 f5 K+ s
4. <mul /> - увеличение статов. То лакомиться коль скоро вы оденете вещь, ваши статы умножатся. Order 0x30.6 q! m4 O w# z' M& v
! i0 b2 [! D6 ?3 M% I# v/ tДанный код вероятно сколько быть одевании багаж разум стата умножится для 100 (в данном случае M. Def).1 ]- n8 Z6 q. w# n# ]& G
4 m* f+ E- T1 u7 ^5. <enchant /> - показывает, в что увеличится стат около заточке вторично в +1. Order 0x0C.
/ ^- g0 h7 E9 K7 h& I4 L) e. Q) w% |& ?! H- w0 K/ P$ r2 I/ _
Данный код следовательно который быть заточке багаж опять в 1 ваши статы (в данном случае P. Def) увеличатся для 100.* a% x7 m3 z& G* W' s
Ниже приведена список значений "order":! e w2 f3 O% B3 Y0 f
# y" K- l& t3 z3 a+ P
0x08 - set& l% j: ^0 V7 x) D8 W5 {
0x10 - add/sub (оружие, броня, бижутерия) также (STR, CON, DEX, INT, WIT ,MEN)8 |0 `2 ], Z1 {( ~, a) y
0x20 - отнюдь не нужно+ Y% w! s8 R7 x# N1 u
0x30 - mul/div (masteries, buffs, debuffs, SA (специальные возможности оружия), бонусы брони)9 g: S6 k+ F( k, x. x$ |4 _& H
0x40 - add/sub (masteries, buffs, debuffs, SA (специальные возможности оружия)) [- d- i4 j$ A+ x& ~. m: x+ o
0x50,0x60 - никак не нужно
! B3 G2 U/ H8 D" z% D w% Y0x0C - enchant" Y( ?3 q2 @; S8 Y6 X. ~! K) k
V8 }# J W& I4 `- k1 b! A& Z9 U( w0 }Часть 3. перемена скилов# N8 o; |0 I: ]
1 W' @- X* z9 M+ `0 QСамая большая порцион моей статьи Начну со значений, причинность вы должны быть знакомым сколько изменяете.0 p0 h3 `+ N+ T
+ p1 `2 P; v7 u w, j( KИзменение максимального количества HP - maxHp. B6 B; ?3 R& Z m8 V. }1 c) r
Изменение максимального количества CP - maxCp7 w- ~" \* J1 V2 ^8 U9 t
Изменение максимального количества MP - maxMp
: N, x+ B9 {/ Q" {: sРегенерация НР - regHp* M9 { z4 _7 L
Регенерация СР - regCp6 d9 i' F5 q8 g( H! p U' Q6 X+ b4 ]1 b
Регенерация МР - regMp& w- M1 }6 E! T8 n+ U: ?
Эффективность хила - gainHp7 c4 O- r6 _6 X+ Q$ D% b" \
Умение хила - giveHp* c0 [$ e: Y" G8 k# c
Бонус хила - bonusHp
4 a8 U( V- H- @, C! XФизическая опора - pDef
0 i6 C. s0 K" y! I! L9 }Магическая столп - mDef
8 r& s* ~7 C$ Z# o! d( wФизическая набег - pAtk$ i4 | q$ y G% e2 [, m- R; }
Магическая набег - mAtk
* ~9 _5 R8 \4 [9 x- ]/ m6 yСкорость физической атаки - pAtkSpd
7 A$ }, q& m0 \) bСкорость магической атаки - mAtkSpd
6 {3 M \; M. _, CСкорость отката - mReuse
: w6 ~$ N, Z4 o w, M( P) CЗащита щитом- sDef
6 c/ ?/ z5 T+ e+ m5 f& cУгол защиты щитом - shieldDefAngle# @1 t, P, k2 h- ?
Критический пощечина - cAtk
, b& _# x8 E N+ _; [1 r9 j, F& B; l/ F+ eПрибавка для критическому удару - cAtkAdd
& Z0 W& W4 s' v$ `8 gФиз. урон в течение пвп (например в пользу кого Duel Might) - pvpPhysDmg
5 O2 Z7 b K7 j8 u; y; ^Маг. урон - pvpMagicalDmg
& p4 ]# r8 F# I) jУрон скилом - pvpPhysSkillsDmg6 } }/ b5 {. T! P4 I; o" U s+ ?7 ~* `
Уворот - rEvas
1 ?( M9 D" e5 b8 I. q- M. sУворот через скилов- pSkillEvas# c, |; d9 n' S% d6 _7 o" Q
Шанс блокировки щитом - rShld
8 a0 u3 K! C# d( d% W) `/ n2 dШанс крита - rCrit/ P. N% z4 e0 J
Шанс Blow - blowRate
8 J' P* `* N1 _" ~, l; _Шанс Lethal - lethalRate* D9 w6 k {% t5 [7 l r
Маг. крит. надежда - mCritRate (mCrit doesn't work!!)0 @: \# r/ L2 d% N/ O" s5 g7 H
EXP,SP надежда - rExp* [" A L9 [2 i( c! _
Cancel - cancel/ s+ k/ K: _( n1 I0 ~; C7 t
Точность - accCombat/ h8 T0 _" v: b& \5 u7 x
Зона покрытия физ. атаки - pAtkRange (for fighters)- I' W/ E+ S0 ?8 k/ p o, p
Зона покрытия маг. атаки- mAtkRange (for mages) t2 |" I- s% L4 E
Угол атаки (только с целью воинов) - pAtkAngle
1 r% N3 O! h, m% u0 BКоличество атакуемых - atkCountMax0 K C3 x: d, m6 I" q+ f
Откат физ. скилов - atkReuse! k$ K' ~9 @7 k2 _2 e% |; @
Скорость бега - runSpd
7 q2 a4 F/ l( g+ Q8 O, z$ uСкорость ходьбы - walkSpd
9 U) ?. d ~& T. W- ?, USTR - STR
X- T$ [& t8 h3 U% b* dDEX - DEX
: c9 w2 q. j$ \ l% L9 v3 wWIT - WIT! f+ p ^( m- k( ?$ [! C$ {$ E0 c
INT - INT, Z, V+ P# A: @- M$ O' R( E# U( H
MEN - MEN
% B. x% l& ]+ D0 X* B! @# y& _9 Y1 a- @- X3 U
Уязвимости6 Q% F$ [5 i4 p& G( j5 M+ o$ F
, A% X) w" {* ~. T) j2 c4 YАгрессия - aggressionVuln% x9 D* [3 f. C* F) G
Кровотечение - bleedVuln4 C; n% f* o7 |+ W
Яд - poisonVuln7 Y# D( r6 P& E" l6 W
Стан - stunVuln3 k$ K9 V" p; H! Y
Парализация - paralyzeVuln4 \5 J4 n" @7 U4 |1 m/ U* d
Удерживающие заклинания - rootVuln
0 P6 Q8 N7 t7 GСон - sleepVuln0 C# M: t6 m4 r7 [/ G
"Перекидывание" таргета -confusionVuln; D: d9 s5 w: K+ f4 U
Движение - movementVuln
$ P9 V9 Y% ~: R: \# j1 ?Огонь - fireVuln. z1 t$ D0 |; Q2 @0 M9 |
Ветер - windVuln
; W0 C Y1 R6 U- S7 _8 u9 e/ T. o( `Вода - waterVuln- F( X4 r o- S# \
Земля - earthVuln
" w& ]. K" L5 q% kСвятые атаки - holyVuln
# H9 x" R, y5 {! c( oТемные атаки - darkVuln
5 ]. z$ ]9 i7 f: TРезист для cancel - cancelVuln# a9 N" T f$ a* h) P7 x
Дебаффы - debuffVuln$ t/ f4 C; I; c: Z' I6 d( C- r
Резист для криту - critVuln
+ {0 C) A/ R' ?: b! _( V, |- S3 [" D% C/ w9 J) E0 H% q
Резисты простив оружия (тут думаю изображение никак не нужно)
, Q) F9 h- K! x1 Z! c) e4 Y; W2 C9 \5 ~6 b* p5 S( a1 j# ^
noneWpnVuln
0 w( I* n: R9 Y5 s$ m+ j( W" C& DswordWpnVuln; c( T9 j! s( f3 w) Z7 @. ?
bluntWpnVuln) |2 ~5 Q+ V5 f3 Z O! N C2 ?
daggerWpnVuln
9 {5 J+ s* C; Q$ s$ C% ebowWpnVuln
( T6 N: X8 B9 l; kcrossbowWpnVuln
, a% ]+ r! [- Y: QpoleWpnVuln
0 Q! c6 \4 i, k1 U. BetcWpnVuln# x. {$ R- V& r. S+ X- b
fistWpnVuln
) ^6 L9 N, v" hdualWpnVuln
( R9 d6 ~' e6 \$ i6 K/ d. ]dualFistWpnVuln
5 D+ h2 R0 B+ Q! N' }: t/ ZbigSwordWpnVuln2 a% R* t/ Q8 q! M
' q: R( i( X* H: S f1 c _" jОтражение4 N. o) C6 a& f* O; B
' f- h# Z l: ]Процент отражаемого урона - reflectDam (pay attention! not reflectDmg!! reflectDam)
: H' l) v5 b9 ?' YПроцент рассеиваемого урона - absorbDam
e( f" V. G. y# {6 SПроцент переносимого урона- transDam- U( C# F+ E8 l- s, f( t9 _
Отражение маг. скилов - reflectSkillMagic8 n x& b. V5 W- n% d
Отражение физ. скилов - reflectSkillPhysic* u, D! C2 y3 H+ J1 H) F
1 o# E) ~' x. q2 ^6 P! zДругое (для примера):
3 u% j* T! `2 O( O/ }! I, w) I2 k
Атака для гигантов - pAtk-giants1 F2 g: B- V' L! r
Защита для ласкать - pDef-undead+ m6 e4 P" G0 i3 i( g
Атака в животных - pAtk-animals; P: P: W8 L% D; z0 X; x0 P& ~
Защита для монстрах - pDef-monsters
' W) R" L6 K2 a* h: |Лимит инвентаря - inventoryLimit
- B( G$ |, d; W7 u; J7 eЛимит ВХ - whLimit
b, i$ k7 z+ \6 mFreight лимит - FreightLimit
* g! i7 s( c \0 r" MЛимит продажи. - PrivateSellLimit! b) J' L* w7 y+ k% q' g3 E2 G1 T8 t
Лимит покупки - PrivateBuyLimit! e6 h& T1 S" Q7 k" G: Y5 }* g! P
Лимит гномьего крафта - DwarfRecipeLimit) Z1 S7 B1 Z; u4 ]/ R. W4 T
Лимит common крафта - CommonRecipeLimit
( ?' Q1 }9 L: dПотребление МР физ. скилами - PhysicalMpConsumeRate
) @- }2 r: G; M e. nПотребление МР маг. скилами - MagicalMpConsumeRate
$ M$ o& u. \$ Q5 E1 ^- K3 CПотребление МР дансами - DanceMpConsumeRate
1 W+ M- H& r% d) DПотребление НР - HpConsumeRate
: q" i& y+ Z8 T$ MПотребление МР - MpConsume1 B5 I; i2 V" g+ V( G
Потребление соулшотов - soulShotCount j# W" ?1 x2 D# `
Skill Мastery - skillMastery
, K2 Q/ @6 s3 l5 H3 b& J1 e" {Время пребывания около водой - breath% o/ q( B' @$ ~
) V( O1 o0 C" L2 q
Вроде все какой угодно скилл начинается почти открывающего тега да заканчивается закрывающим тегом . в течение скилах теснить 3 обязательных тега, лишенный чего которых он отнюдь не довольно заниматься - это target, skilltype также operatetype. Давайте разберемся сколько это такое вообще
7 x. }+ u' A |$ G
9 X( G6 ^4 O% ^1. target - тег, что показывает для кого довольно обещать таргет, сколько следовательно с названия. Принимает следующие значения:
& ^, c. r8 I7 i! t" C" C6 ^5 [7 J# ~. m: t
TARGET_SELF - обозначает, который скилл довольно использоватся только для его владельца (селф бафф типа Battle Roar иначе говоря War Cry)# t8 ~/ z( B( |& c2 Z G) J% _
TARGET_NONE - мишень неопределена- K" B0 q0 a" @* b. M2 ~
TARGET_ONE - обозначает, который мишень вашего скилла - тот который в течение таргете.3 `0 ~0 K9 U6 o& [
TARGET_AREA - обозначает, который скилл довольно массовым
g$ g3 l% e+ u; jTARGET_AGGREMENT - обозначает, сколько целью довольно тот, который вас атакует' V" u' I/ n& l2 T+ F
3 O" L: F4 H! K3 n! \; T$ `/ t2. skilltype - тег, указывающий для вид скилла (бафф, дебафф)& ^: \# k" \& v5 N( J+ G9 i8 Y1 o
Принимает следующие значения:2 @$ {, _ q$ Z$ ]8 C
BUFF - бафф (оказывает положительное воздействие)
# l& B( `; W' T1 Q/ k' |( wDEBUFF - дебафф (оказывает негативное воздействие)
0 |: @ x+ h0 L$ w0 b/ ?3 U! s. ?0 J5 _
3. operatetype - сей тег служит на определения типа скилла (активный либо пассивный)
5 t4 }5 [) B+ I+ t+ u9 x4 SOP_ACTIVE - активный скилл, может являться использован игроком$ J# w# v* H# w. T6 ]7 Q2 N3 f
OP_PASSIVE - пассивный скилл, скилл из таким operateType никак не может пребывать использован (действует всегда)
& X' G- O6 M5 g8 z; ^Это были обязательные переменные, используемые на скилах. в настоящее время перейдем для остальным:
/ s7 P+ J7 J8 [* d* o-power - значение скилла1 D( i: @. H& m, F" {9 h
-hitTime - скорость. чтобы баффа это быстрота чтения заклинания, с целью физ. скилла - прыть атаки; V# \: i: N, R2 T$ D! U; J, A% y; Q
-reuseDelay - откат скилла
! f/ r q. }$ w-hpconsume , mpconsume - потребление МР, НР0 U5 Q0 c s" T4 L$ B& }( k/ W
-castRange - это дальность использования того иначе иного скилла (дистанция)% l" V7 J% _+ v0 y( f9 ~
-isMagic, isDebuff, isBuff - это наводящие теги, могут владеть разум "true" также "false". для примеру, isBuff = true (это следовательно сколько скилл является баффом)) ]( K* S3 E4 u' Y. @" I0 @/ L' U
-effectRange - радиус действия (для массовых скиллов)
3 m# A% J6 @+ ^; U" s" Y0 j-agro - который такое агр, равно сколько такое власть агра думаю растолковать отнюдь не нужно.
8 x; `$ `# d9 Z) ?Это основное сколько вам понадобится. ныне расскажу вам по части значении тега на скиллах.6 |& R* O7 b+ ~1 ^, k
Тег на скиллах Lineage 2 встречается чрезвычайно часто. Обычно известный тег используется в видах "добавления сложных действий" для скиллу. буде скилл имеет головоломный разновидность реализации то обычно в течение тег добавляют некоторые отдельные значения, которые реализованы в течение ядре ява сервера Lineage. настоящий первенствующий тег к использования здесь - это ." ?: L! Q4 a6 e& c* N1 Q0 r8 |
Приведем первообраз использования тега равным образом тега :' s3 m) a- w/ T/ b* n w: [
/ v' O8 @* Y! g: e0 X' k( z n7 ^: r
# q/ T' s( g, q# v
Что сие значит:
, O" D7 A5 P7 w i
H7 a5 f+ {0 J4 n+ l2 Wname - Это характер эффекта
' [" k) p! s. c4 kval - важность эффекта. в интересах дебаффов - надежда прохождения, на боевых скилов - сила.) e! ~& K9 ~3 x: ~
time - век действия эффекта4 p! b: J* c3 a6 p( i% i8 a" F
StackOrder также stackType - это значения уже описаные на данном скиле. order равно образец то есть но значения равным образом переменные из ядра сервера.7 A. ?; ]. C# H+ H
4 L! k) q; P% T# \Думаю со скиллами я разобрались, нынче перейдем для зонам.
1 E$ A$ w7 j9 d3 P" N
# i7 j6 ~# v$ N ^/ P$ gЧасть 4. чтобы начала описания зон используется тег .
: d5 ]& e9 ^% q2 t {
5 H8 O5 r8 I/ |+ G- N6 w& Y' ~, {+ ~! ^! w+ Y5 E4 h6 H9 a* E4 c
<!--Комментарий-->
* f% H5 h$ k- ]3 v" {! ?
' D9 m) C6 d7 G% k" D5 ^) Y2 [Пройдемся за значениям:
& D9 j' }1 W8 z# J0 |3 d
& Y& `2 |, T6 E; ~id - идентификатор зоны.
; w7 J. a$ p/ `9 V3 l4 Btype - образец зоны (town, arena, jailzone). Например:
! D; y$ { O! c2 G# L; y8 F; \Town - мирная зона (город)8 t* i# b6 t5 B" g: D
Arena - боевая зона (PVP)) M0 y A1 E$ p5 S
JailZone - зона. простой зона (извините после аллегорию ). за другому - тюрьма. в течение ней запрещены беседа да телепорт.! W% R; Z) B* K ?" Y& ^) q% t
shape - это платье разве подобие зоны. Может водиться двух типов :; h; J0 c* W$ m9 Y( z f
-nPoly3 g; C, d7 q- i$ V) I( m- D
-Cupoid.
- }/ J$ ?/ c% y0 i) }2 k! @/ QminZ - это минимально допустимая координата гора (z) на данной зоне .
v: P" c8 X2 T& q1 DmaxZ - это максимально допустимая координата гора (z) на зоне." M3 I0 R3 |0 I0 G+ q5 v
minZ также maxZ используются в угоду кому избежания прохождения сквозь текстуры, провалов перед них равным образом т.д.
- J7 |3 ?; ^/ [) r |