Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Познавательная статья относительно применения XML в Lineage 2 серверах. Изменение статов, скиллов, вещей, зон
. g1 _* f3 o+ T4 S+ j
+ z3 p; O$ o" i# x& B% sЧасть 1. Введение
5 v7 M9 ]2 W. w! k6 q& P6 q, }3 M9 T$ i
Начну от того, который но такое XML? Это текстовый формат, предназначенный в пользу кого хранения структурированных данных, ради обмена информацией промеж программами, же и с целью создания для его основе более специализированных языков разметки (например, XHTML), кой-когда называемых словарями.3 V! S& ?' ?6 Y. v! N5 @
Первая черта XML-документа называется объявлением XML — это необязательная строка, указывающая версию стандарта XML (обычно это 1.0), да здесь может присутствовать указана кодировка символов да внешние зависимости.# r1 a3 {% v% @1 @( X: m8 j: O
3 ?% b* t2 C. D( M& Y7 jСпецификация требует, с целью процессоры XML непременно поддерживали Юникод-кодировки UTF-8 да UTF-16. Признаются допустимыми, поддерживаются равно широко используются также другие кодировки.
: B6 U% n: l$ M1 vТак но на XML кушать мочь добавления комментария. объяснение может скрываться размещен на любом месте дерева. XML комментарии размещаются внутри туман тегов <!-- равным образом -->. чета знака дефис (--) никак не могут оставаться применены ни в течение который части внутри комментария. Вот прототип комментария:# H d% c3 C" a4 D
" ~: s' x0 h: o) k, j X" r3 w/ ~
<!-- Текст -->" o: A2 t4 K) e9 `
F! c+ g) o# ~2 xНо я отнюдь не будем углу{цензура}ться в течение весь особенности XML, нас интересует всего на все часть, которая касается Lineage 2 XML в течение сервере Lineage применяется в угоду кому описания статов оружия, брони, скилов да т.д. в интересах оружия это предположим параметры физ. да маг. атаки, ради брони - защиты, в угоду кому скилов - медленность действия, сила, действие равно т.д. только предположим в течение файле "servername.xml" хранятся имена серверов до умолчанию. Эти имена могут содержаться свободно изменены. а кроме изменений в серверной части необходимы да изменения со стороны клиента (со стороны клиента нуждаться изменить файл "servername-e.dat". Изменяться *.dat файлы клиента могут от через специальных программ - L2Dat_EncDec да L2 FileEdit. в течение следующей части мы научу вас переменять статы вещей.
" o# k$ o9 w, X0 R% c" D2 p
) ?# o, g& u2 Y. ]) O; TЧасть 2.Изменение статов вещей.# N) q2 O; Z5 U M1 }. j
3 B% L2 s, a8 J4 e+ \3 ^Возьмем итем Shirt. Это неприметная НГ шмотка. в ее примере аз поясню что, где также когда. Вот кусок XML кода
1 G4 Z. x* {6 r6 T& Y
' l7 g3 h2 c R2 `+ F& mДля измения ее статов тогда нам нужна лишь одна строчка:8 ]8 z/ F0 A$ t: H0 z
1 S+ G4 D$ {+ I$ h0 e
Что это безвыездно значит:5 \6 K0 B) K2 G- ] i
5 L6 g* N) c; rТег означает приращение равным образом является переменной. в его месте могут да а быть, например, , , , . да так. который но означают эти значения?5 L# F7 H7 N' ^% \* f. `' P; U- z8 A
1. <add /> - приплата статов. То кушать ежели вы оденете вещь, ваши статы увеличатся. важность order довольно 0x10.$ I/ s0 y" U" S! d
) S! ] @: f5 d" i' g9 N
<add val='100' order="0x10" stat='pDef'/>
! v/ P/ s- z; {7 J- `5 v! p8 `8 j4 y n
Данный код следовательно который присутствие одевании багаж вам прибавится 100 единиц стата (в данном случае P. Def).
! V2 ^1 `, F$ ~. I- b
/ ^- f. u% c; z2.<sub /> - вычитание статов. То поглощать буде вы оденете вещь, ваши статы уменьшатся. order да а - 0x10.1 }1 r" a: n9 G* M# \) d+ ^* _
4 n& i3 c# W, E0 y' C% w+ h5 d
Данный код следовательно который присутствие одевании багаж около вас отнимется 100 единиц стата (в данном случае M. Def).+ q. F) f) Y: W9 d; Q7 {
0 K( R/ H$ H9 A0 P* d" Q `
( Y. l# D, u/ B1 T1 q9 i
3. <set /> - назначает вам строгое важность стата. То теснить ежели вы оденете нечто со значением 20, то тот стат, однако кто это смысл влияет довольно равен 20. Order 0x08.+ `) T. y) h/ Q# i }3 g
: s+ ^$ ]8 [- }2 R( Y
Данный код следовательно который быть одевании багаж около вас довольно 100 единиц стата (в данном случае P. Def).0 x- j: B" ], B) s G. b2 p2 P/ K
7 U% v4 t: F; m3 {
4. <mul /> - увеличение статов. То лакомиться коль скоро вы оденете вещь, ваши статы умножатся. Order 0x30.
6 }3 o5 ^8 {9 G8 H( L/ x3 Z3 u+ Z" A. J
Данный код вероятно сколько быть одевании багаж разум стата умножится для 100 (в данном случае M. Def).
3 h4 `9 v1 @# G+ y- K' ?
3 b- |; {2 B( K& X5. <enchant /> - показывает, в что увеличится стат около заточке вторично в +1. Order 0x0C.
2 q9 W" c+ ^2 N$ [1 a1 E/ @' |7 H3 l* X3 Q
Данный код следовательно который быть заточке багаж опять в 1 ваши статы (в данном случае P. Def) увеличатся для 100.7 X1 O1 ^& r: _
Ниже приведена список значений "order":
! J4 A, L' X, x! b% A7 Q: t7 @' \9 [& d! ^2 N6 d5 K
0x08 - set
5 K7 K3 G! _' n+ u$ b0x10 - add/sub (оружие, броня, бижутерия) также (STR, CON, DEX, INT, WIT ,MEN)" B. e# q8 |) [3 b
0x20 - отнюдь не нужно
: x. l- @# n& M+ U) M0x30 - mul/div (masteries, buffs, debuffs, SA (специальные возможности оружия), бонусы брони)) ~. S4 N: H" T, ?) O
0x40 - add/sub (masteries, buffs, debuffs, SA (специальные возможности оружия))
: z& m; u7 q8 m: _' S) z0x50,0x60 - никак не нужно
; B6 @) f" e, W" _' ]9 H0x0C - enchant8 d5 f X- U n, Y8 h
( N* ?0 X: v& P$ f! ?( I, {9 p
Часть 3. перемена скилов: ]& D7 i6 g& N' Z$ d
* m( T) ~6 n* [) Y
Самая большая порцион моей статьи Начну со значений, причинность вы должны быть знакомым сколько изменяете.8 f& W+ f2 `- x9 o; i
6 q+ u0 s9 l0 @# \2 `0 [, z+ NИзменение максимального количества HP - maxHp
& |4 t' u8 u0 K" ~0 p4 F% g8 {Изменение максимального количества CP - maxCp6 e; H+ s, r) b
Изменение максимального количества MP - maxMp% z* u& P7 C) C0 S4 F" ?
Регенерация НР - regHp9 I' Q9 p" A, L* }6 \8 k" C
Регенерация СР - regCp
- l" f! i7 o6 C$ C& a; v) O% CРегенерация МР - regMp
( u; V n7 Z6 e- @( q% M4 IЭффективность хила - gainHp' C+ `9 P+ {3 r9 Q: Y0 ^) @; A
Умение хила - giveHp: E+ G6 F Q3 _, Z, u, R
Бонус хила - bonusHp9 [- r, e# P& J' O
Физическая опора - pDef- z+ I' w: w* t% [1 \3 L2 x+ S' N
Магическая столп - mDef
9 v4 ~' C# b# PФизическая набег - pAtk
; V( V$ ^8 x; E9 TМагическая набег - mAtk
0 _) ?( B0 u9 ?Скорость физической атаки - pAtkSpd
/ e8 j/ \! w1 _* \Скорость магической атаки - mAtkSpd4 ^8 T, q. H: I) H7 ]: Q; E
Скорость отката - mReuse- s- {+ v% h# r) O) k g, o3 o+ T
Защита щитом- sDef
; d, ]% [5 m& G5 y& A% TУгол защиты щитом - shieldDefAngle' } w5 R0 i+ \/ t+ D# I
Критический пощечина - cAtk
1 p l$ r0 ?0 V) ~* c6 P, RПрибавка для критическому удару - cAtkAdd" Y, z( e6 [; t! S$ v/ N2 ]
Физ. урон в течение пвп (например в пользу кого Duel Might) - pvpPhysDmg
# ~) y1 x( Z* o& O3 ^4 IМаг. урон - pvpMagicalDmg3 m0 O5 V& U9 W/ E0 T# u
Урон скилом - pvpPhysSkillsDmg6 H6 V; x2 G# o( K. I
Уворот - rEvas
/ Y. ~- M V$ ?6 H; e) a; ~2 HУворот через скилов- pSkillEvas, g( X! [! S2 k
Шанс блокировки щитом - rShld
3 `9 F5 A; J" z" l5 o6 UШанс крита - rCrit, z/ g; Q8 Q2 k! @2 T6 U
Шанс Blow - blowRate1 D/ X: O" c/ y' A
Шанс Lethal - lethalRate
8 D" L A7 Z5 |5 n! [& W8 Y6 _Маг. крит. надежда - mCritRate (mCrit doesn't work!!)# b8 \- |# x3 z9 b0 i5 K
EXP,SP надежда - rExp, x8 t3 O# n6 Z0 |5 T# L- |" X
Cancel - cancel
' O3 _" q$ m1 g1 E+ QТочность - accCombat( @0 t' X' O% H
Зона покрытия физ. атаки - pAtkRange (for fighters)8 x+ b5 `; P( [2 N) M% v
Зона покрытия маг. атаки- mAtkRange (for mages)' s2 i& u! r$ [8 K
Угол атаки (только с целью воинов) - pAtkAngle
( }7 [6 w& O6 W; a: ^7 i, {Количество атакуемых - atkCountMax
3 O s9 Y2 n& T0 N }Откат физ. скилов - atkReuse# s' V* h) A; Z5 V# ]2 v3 z
Скорость бега - runSpd; O" b) d5 _/ p! {( g4 r# Z) H
Скорость ходьбы - walkSpd0 y, @; V% R0 c( c; g* c! v
STR - STR
# r2 x' Y0 v+ J1 x4 f6 W A( R8 u- |+ dDEX - DEX" _9 ^ Y7 K) M$ r7 w
WIT - WIT/ S; E% l6 m. e6 ?6 N3 P
INT - INT l* G3 g3 N- [. \+ @$ [2 W- n+ j
MEN - MEN
! t( w) p8 U8 e/ C) I X. _* f
! R/ B+ ?) }- g) O2 ]0 X; wУязвимости
/ ]2 o4 j: M/ h; Y! L
) x) P& Y+ I1 L4 CАгрессия - aggressionVuln
4 R0 r. ~3 ~# q5 t9 WКровотечение - bleedVuln! I6 `8 l/ _0 S3 @/ j# z u
Яд - poisonVuln
* V8 L0 u% U5 {; t2 ^% U6 s9 qСтан - stunVuln, b& \9 b; J, d6 n
Парализация - paralyzeVuln
1 L# V Q: l- B! d+ g/ WУдерживающие заклинания - rootVuln
+ R1 }# S: Y [6 v* v8 }Сон - sleepVuln
) F9 l; t, I% q; D3 a* S7 Y"Перекидывание" таргета -confusionVuln/ b9 S3 S& h% G4 Q( T1 N3 a8 E
Движение - movementVuln
6 {% o' q, s4 e( C. Y jОгонь - fireVuln+ j7 l/ F7 p# Q0 `$ v: R1 h8 ]
Ветер - windVuln
2 i' s. _' S+ l% H$ UВода - waterVuln
6 j1 ?5 {" z3 b; J6 v. h+ w0 G7 nЗемля - earthVuln
+ n j9 c% F6 k2 SСвятые атаки - holyVuln
% h7 x& W5 H0 X+ A0 bТемные атаки - darkVuln+ [% ]& Q# @" ]* {! b8 t# w7 o! h; A
Резист для cancel - cancelVuln
H6 D8 M) a* g7 Q- d# @% u- rДебаффы - debuffVuln/ ~9 K( b5 J2 B, W
Резист для криту - critVuln
: [# p9 b4 ^7 D2 s- d( m% [( w- f2 o: I
Резисты простив оружия (тут думаю изображение никак не нужно)2 p& {; P6 }; H+ O
- L; ]5 E% O3 O) MnoneWpnVuln5 e, @9 w0 A2 ], N
swordWpnVuln
; f8 W6 g6 H' Y( sbluntWpnVuln
F) a' P9 _( r& i+ b3 l* YdaggerWpnVuln& e1 M8 C4 f& ^# `# K% _+ ?
bowWpnVuln
' W0 n' h+ K$ DcrossbowWpnVuln0 ]2 w! [" ~* g% b5 m
poleWpnVuln: k t0 p F2 R. [
etcWpnVuln. [. V) J2 i" t6 p; K2 M/ x
fistWpnVuln
5 J8 }9 n3 T2 y- R j' `/ edualWpnVuln
- O0 T5 F' Z# H& Z3 S+ ~dualFistWpnVuln
8 b- N5 i( A/ Q' d& f- vbigSwordWpnVuln7 P! B7 f% D2 e9 P# o" g
# E0 [' Z" `" {9 P1 LОтражение) v. f4 ~4 l& K: l
2 K) A2 V* I/ l. ]
Процент отражаемого урона - reflectDam (pay attention! not reflectDmg!! reflectDam)
& ~+ U0 E/ s, R3 N0 lПроцент рассеиваемого урона - absorbDam% l P$ j. ~3 v& r
Процент переносимого урона- transDam8 h; i& U5 V- Z7 }' @% k
Отражение маг. скилов - reflectSkillMagic- I8 s! h2 D- a
Отражение физ. скилов - reflectSkillPhysic6 T7 M) s: Q! {; s% _" E# R c
1 o9 k, ]: F) L' @, |8 g
Другое (для примера):( K3 f0 {6 g* v& v$ n+ \3 X1 I9 b
/ Z* i& k: L, Q' v# [ \" O8 u
Атака для гигантов - pAtk-giants
$ \3 n6 x2 I* B9 i4 ^Защита для ласкать - pDef-undead
, r( I8 e. P5 }5 F! M( u) jАтака в животных - pAtk-animals8 Z7 x' ~: j5 M) r+ F: L
Защита для монстрах - pDef-monsters4 i: S9 x* S1 D6 ? N: H
Лимит инвентаря - inventoryLimit
) U( [1 T/ a) }' P% l: d" t, \Лимит ВХ - whLimit4 M. [" _/ N; o; h
Freight лимит - FreightLimit1 S" |+ y3 x) ^2 K
Лимит продажи. - PrivateSellLimit
9 t7 q1 M$ G" ?: N# ZЛимит покупки - PrivateBuyLimit
% F# P& S3 R J: zЛимит гномьего крафта - DwarfRecipeLimit
- h/ x0 L0 b. ]. LЛимит common крафта - CommonRecipeLimit
. b. k9 v9 t6 D3 i; X/ WПотребление МР физ. скилами - PhysicalMpConsumeRate* {% m4 H }3 t4 d v
Потребление МР маг. скилами - MagicalMpConsumeRate, r- b* C+ Y1 ?) H N3 ?
Потребление МР дансами - DanceMpConsumeRate
! Y( v/ Q9 `; f) h4 R7 M4 mПотребление НР - HpConsumeRate0 z8 ^' K1 ~$ i/ N% ?
Потребление МР - MpConsume2 f3 o6 X+ a s& v. R2 u
Потребление соулшотов - soulShotCount
$ q* T1 `2 J& RSkill Мastery - skillMastery! Z2 S! Q8 a4 ~0 V+ X
Время пребывания около водой - breath
- ~& X/ c! x+ R ?0 l7 b H b9 F9 S, H0 c( `3 G, a
Вроде все какой угодно скилл начинается почти открывающего тега да заканчивается закрывающим тегом . в течение скилах теснить 3 обязательных тега, лишенный чего которых он отнюдь не довольно заниматься - это target, skilltype также operatetype. Давайте разберемся сколько это такое вообще+ s n' _; r% Q/ d+ X1 M
1 v9 J3 ^, w! Z- R4 t3 Q1. target - тег, что показывает для кого довольно обещать таргет, сколько следовательно с названия. Принимает следующие значения:
5 x4 X; Y7 B( p
/ c) N+ N- j7 J9 H/ q( ~TARGET_SELF - обозначает, который скилл довольно использоватся только для его владельца (селф бафф типа Battle Roar иначе говоря War Cry)" W( d* x# e' n( p; V) E( k( D# d
TARGET_NONE - мишень неопределена
1 \3 M+ N: ^; k) H& ZTARGET_ONE - обозначает, который мишень вашего скилла - тот который в течение таргете.
4 I) e s8 Q8 xTARGET_AREA - обозначает, который скилл довольно массовым; k3 k: q+ H8 h- U" _+ G( P
TARGET_AGGREMENT - обозначает, сколько целью довольно тот, который вас атакует6 Z6 s& W7 V* @' h- t; M: p2 s
- m( J/ b4 W' q; G
2. skilltype - тег, указывающий для вид скилла (бафф, дебафф)0 r/ r- a+ U- w$ T$ j" ^
Принимает следующие значения:( ]* c4 [8 e5 Q& w
BUFF - бафф (оказывает положительное воздействие): Y( h& q$ O' ^5 M" y# M
DEBUFF - дебафф (оказывает негативное воздействие)
7 w" G {4 U% P4 b; W( Q# o4 N0 t6 W& ?9 x, Q5 x7 Y/ _
3. operatetype - сей тег служит на определения типа скилла (активный либо пассивный)
8 m5 A( t/ n! q9 {+ |9 I; ^OP_ACTIVE - активный скилл, может являться использован игроком
7 _; @4 s' R$ \6 w) U5 C( A. _0 XOP_PASSIVE - пассивный скилл, скилл из таким operateType никак не может пребывать использован (действует всегда)
) O$ W9 [$ J' M S: TЭто были обязательные переменные, используемые на скилах. в настоящее время перейдем для остальным:
( s6 c3 c* v7 C- b( X! K H$ e- U, ?7 F8 u-power - значение скилла' j* [9 d0 Y& X5 s S( D6 l
-hitTime - скорость. чтобы баффа это быстрота чтения заклинания, с целью физ. скилла - прыть атаки1 G3 S8 [' g9 m9 H: A! T, m2 \
-reuseDelay - откат скилла
_ U0 @, g }6 S; K5 `" ]/ \-hpconsume , mpconsume - потребление МР, НР; i: ~3 B7 ~; E
-castRange - это дальность использования того иначе иного скилла (дистанция)6 ]$ y5 J- v) q' q4 y! G v
-isMagic, isDebuff, isBuff - это наводящие теги, могут владеть разум "true" также "false". для примеру, isBuff = true (это следовательно сколько скилл является баффом)' ]/ i+ W. u. U" c! Q
-effectRange - радиус действия (для массовых скиллов)
& O) H0 s1 X: H-agro - который такое агр, равно сколько такое власть агра думаю растолковать отнюдь не нужно.& r3 o+ c( z! u( v1 G" r3 V z
Это основное сколько вам понадобится. ныне расскажу вам по части значении тега на скиллах.- Q4 k! y5 s0 f( p7 i
Тег на скиллах Lineage 2 встречается чрезвычайно часто. Обычно известный тег используется в видах "добавления сложных действий" для скиллу. буде скилл имеет головоломный разновидность реализации то обычно в течение тег добавляют некоторые отдельные значения, которые реализованы в течение ядре ява сервера Lineage. настоящий первенствующий тег к использования здесь - это .
9 x3 P4 o( u. V$ x* jПриведем первообраз использования тега равным образом тега :
/ E4 M' \6 S' c$ G" ~ M% z% |5 |% H* H2 y" o0 Z
" M+ U+ N) d; \8 q _* T2 O( e9 x. S7 U1 I" U
Что сие значит:: B& y- \( p# T) J' ]8 r
. k2 ~9 ^3 a" r& n2 ?6 Z7 S
name - Это характер эффекта
7 {$ A, }6 r: Q+ X6 Xval - важность эффекта. в интересах дебаффов - надежда прохождения, на боевых скилов - сила.1 ^$ j7 {3 f" C9 r% H9 ?
time - век действия эффекта& T5 K* \! Q" h) B; B
StackOrder также stackType - это значения уже описаные на данном скиле. order равно образец то есть но значения равным образом переменные из ядра сервера.5 G+ p# q7 D& I" T# g! _) B
% P3 T. t" Y% I/ m% V! \1 }# B- cДумаю со скиллами я разобрались, нынче перейдем для зонам.: p5 M- {* @+ g) H- g
( l" A' ~4 Q5 V
Часть 4. чтобы начала описания зон используется тег .
8 }, H1 S5 n$ i# L) V' i7 z3 w$ F
1 A1 v" F' r0 N
# L h Y/ z* M# e9 S<!--Комментарий-->6 g g) i# d8 Y+ m8 I
; q* v# G( b5 v: E9 D; a+ |Пройдемся за значениям:
$ ?: Z0 w" H' h; m# n! T5 \; V1 U. ^) \8 m0 T9 U
id - идентификатор зоны.
9 q* I- R' J2 j+ \( o7 Ztype - образец зоны (town, arena, jailzone). Например:. J- ], ], D7 _, G: r
Town - мирная зона (город)
6 H) P' ]5 q7 Y) wArena - боевая зона (PVP)6 A% s" k4 m: C# D4 ~& f, I( \$ A
JailZone - зона. простой зона (извините после аллегорию ). за другому - тюрьма. в течение ней запрещены беседа да телепорт./ L3 {% c+ d; I* n7 `5 p! U; z: j, c" R
shape - это платье разве подобие зоны. Может водиться двух типов :3 [( _0 Q: j% o% z9 {, ?, M
-nPoly o7 A; w0 p; O7 d, r" ?
-Cupoid.
" H$ T8 i8 A3 h: l* h3 I* q8 zminZ - это минимально допустимая координата гора (z) на данной зоне ./ N& O8 ^# v) k) v$ ]& O& u) z' n
maxZ - это максимально допустимая координата гора (z) на зоне.
! W9 {- b5 e9 L) B$ cminZ также maxZ используются в угоду кому избежания прохождения сквозь текстуры, провалов перед них равным образом т.д.
; g" M+ n5 ^* k/ ~4 ~ G |