Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Познавательная статья относительно применения XML в Lineage 2 серверах. Изменение статов, скиллов, вещей, зон: F0 n" Z0 F; s( ]
2 h* C1 C, |% B6 x8 mЧасть 1. Введение. l7 {9 E* I2 p" O- \" Z, |, P# B: }+ E3 I
8 a# D `9 h% ]& y8 M, S3 s
Начну от того, который но такое XML? Это текстовый формат, предназначенный в пользу кого хранения структурированных данных, ради обмена информацией промеж программами, же и с целью создания для его основе более специализированных языков разметки (например, XHTML), кой-когда называемых словарями.& g8 p: K5 O; I: e8 u7 z
Первая черта XML-документа называется объявлением XML — это необязательная строка, указывающая версию стандарта XML (обычно это 1.0), да здесь может присутствовать указана кодировка символов да внешние зависимости.
0 u4 U+ w% ?, s3 V; U! |# U
6 @+ H u' T# _) \0 ^Спецификация требует, с целью процессоры XML непременно поддерживали Юникод-кодировки UTF-8 да UTF-16. Признаются допустимыми, поддерживаются равно широко используются также другие кодировки.$ C' L. G/ j6 a- w, Y
Так но на XML кушать мочь добавления комментария. объяснение может скрываться размещен на любом месте дерева. XML комментарии размещаются внутри туман тегов <!-- равным образом -->. чета знака дефис (--) никак не могут оставаться применены ни в течение который части внутри комментария. Вот прототип комментария:
* Z9 Q# _1 L0 B$ L8 o' A1 v" p- c
<!-- Текст -->
& ]2 \' Y+ o8 ^2 C8 y+ T* I
4 J; v, A0 R7 P8 jНо я отнюдь не будем углу{цензура}ться в течение весь особенности XML, нас интересует всего на все часть, которая касается Lineage 2 XML в течение сервере Lineage применяется в угоду кому описания статов оружия, брони, скилов да т.д. в интересах оружия это предположим параметры физ. да маг. атаки, ради брони - защиты, в угоду кому скилов - медленность действия, сила, действие равно т.д. только предположим в течение файле "servername.xml" хранятся имена серверов до умолчанию. Эти имена могут содержаться свободно изменены. а кроме изменений в серверной части необходимы да изменения со стороны клиента (со стороны клиента нуждаться изменить файл "servername-e.dat". Изменяться *.dat файлы клиента могут от через специальных программ - L2Dat_EncDec да L2 FileEdit. в течение следующей части мы научу вас переменять статы вещей.
) z' x9 J, ~% @0 G3 X E" c$ w6 z/ A6 M7 t, r/ P/ ~
Часть 2.Изменение статов вещей.
: r: |5 q4 J& F m) x3 u; o
v$ h# \2 _2 G6 j' J" DВозьмем итем Shirt. Это неприметная НГ шмотка. в ее примере аз поясню что, где также когда. Вот кусок XML кода; N- k& ^0 V) T. R/ V" u
& ^" U- R; c0 z3 Y! y* ]; u
Для измения ее статов тогда нам нужна лишь одна строчка:7 }7 l* n; h* s8 H2 K
5 | \4 E% m% H0 ^2 r8 G: A' }3 A' |Что это безвыездно значит:8 z, g2 z, G% J( {- }* T. c
2 U, D5 u3 Y5 p9 m7 a
Тег означает приращение равным образом является переменной. в его месте могут да а быть, например, , , , . да так. который но означают эти значения?
* m5 p+ ^2 q! c* x' I a1. <add /> - приплата статов. То кушать ежели вы оденете вещь, ваши статы увеличатся. важность order довольно 0x10.
& F; n% G% ]2 ]& ^" ?% m
! H( m; R" n, W$ `/ \<add val='100' order="0x10" stat='pDef'/>5 D. U0 x: D" l& c/ e; j8 S8 W
: N# R( t% I1 D1 v: f' ^, ^
Данный код следовательно который присутствие одевании багаж вам прибавится 100 единиц стата (в данном случае P. Def).
5 U/ _3 E' o1 l% m3 A' |' n( { `( M. c9 G7 @( U' B7 n7 W6 f8 c
2.<sub /> - вычитание статов. То поглощать буде вы оденете вещь, ваши статы уменьшатся. order да а - 0x10.
" D; t+ W% n' O. U# M; P5 a
& n3 B! v+ {% g q* Q1 [Данный код следовательно который присутствие одевании багаж около вас отнимется 100 единиц стата (в данном случае M. Def).7 {; P- |/ { l
& R1 q7 P- U& g# V
) m5 P: l( p6 Q* o: v3 Y( p3. <set /> - назначает вам строгое важность стата. То теснить ежели вы оденете нечто со значением 20, то тот стат, однако кто это смысл влияет довольно равен 20. Order 0x08." i* M; h8 S5 R3 e: `
# p! U7 t) S# Y" e. kДанный код следовательно который быть одевании багаж около вас довольно 100 единиц стата (в данном случае P. Def). d v% ?; v, S# D# S& C
8 n) `9 x1 ~" }& I3 E/ a" r4. <mul /> - увеличение статов. То лакомиться коль скоро вы оденете вещь, ваши статы умножатся. Order 0x30.
/ j U7 k. T$ B+ v# F/ [8 ^1 P" c) d$ J4 z7 {- q" d: B' O
Данный код вероятно сколько быть одевании багаж разум стата умножится для 100 (в данном случае M. Def).
1 t" k& Y4 U: o" Y; j! J
2 ^$ C8 v5 }9 [4 y! C( T' T; V$ ^4 H5. <enchant /> - показывает, в что увеличится стат около заточке вторично в +1. Order 0x0C.$ k# G6 V* v+ X' K% L2 ?) a# w; ~
2 c$ S1 B- N/ F' f; r7 jДанный код следовательно который быть заточке багаж опять в 1 ваши статы (в данном случае P. Def) увеличатся для 100.
' k+ L7 A/ c/ ~Ниже приведена список значений "order":8 O/ X+ I1 Q" d9 A6 n5 B" A6 [" V
6 q9 n8 N& N9 Q* n0x08 - set
, C" H; Y9 I* E0 u* W+ j. @0x10 - add/sub (оружие, броня, бижутерия) также (STR, CON, DEX, INT, WIT ,MEN)
! A4 F5 G6 D2 r9 }, a/ k3 q0x20 - отнюдь не нужно4 v7 b1 [) p, b# Y
0x30 - mul/div (masteries, buffs, debuffs, SA (специальные возможности оружия), бонусы брони)
2 n |; m- _" X+ t) x$ B0x40 - add/sub (masteries, buffs, debuffs, SA (специальные возможности оружия))
! x5 b7 Q2 N5 Z( Y w0x50,0x60 - никак не нужно
+ W3 ?, s/ D/ C5 K0 a) f1 J! B0x0C - enchant
# {" I* x ?- t( b2 K, l5 {
! r! P7 Q( S( l" D# AЧасть 3. перемена скилов
' B4 M+ E7 `: D( X Y9 o/ S3 W8 p- M5 U& d
Самая большая порцион моей статьи Начну со значений, причинность вы должны быть знакомым сколько изменяете.
* g j1 t& ^( G5 Z' ?4 ~7 i/ L" \* ?# _( w
Изменение максимального количества HP - maxHp
+ i% O6 _% t+ l2 _' c8 w1 bИзменение максимального количества CP - maxCp
9 a+ _: R F9 C! SИзменение максимального количества MP - maxMp; K T6 X, _: }5 c3 D
Регенерация НР - regHp
8 b1 i6 U. O: B" Y7 { U: DРегенерация СР - regCp8 E: }0 D. ]* y, Y% ]
Регенерация МР - regMp1 B- O8 j6 J5 g5 I! S. A
Эффективность хила - gainHp
" b) b3 W9 ?; ~2 ~Умение хила - giveHp: q9 Z0 h- Y, v5 D4 |. _
Бонус хила - bonusHp- _- I+ c, ?+ r6 c- M- W5 q
Физическая опора - pDef; r' J. M, h# ~. E9 c6 |0 E& K" `
Магическая столп - mDef
! r; m- i' @; a! W4 L( F' VФизическая набег - pAtk
! a8 V. W! ~; Q6 i& ?+ y0 YМагическая набег - mAtk
8 N" N' R G: [Скорость физической атаки - pAtkSpd/ Y4 M( \8 u+ ~$ _
Скорость магической атаки - mAtkSpd
" X' ?: J# W) R* BСкорость отката - mReuse1 J+ z7 p* {( j9 D: s4 l( B
Защита щитом- sDef
e7 V" n- m: `/ g7 @8 y8 q0 G7 ~Угол защиты щитом - shieldDefAngle1 [+ `0 W3 L5 z; ?3 J' w3 }, A
Критический пощечина - cAtk
2 \0 m0 {1 g1 U. B3 ZПрибавка для критическому удару - cAtkAdd
( Z( H$ a. @9 ?# q, z1 mФиз. урон в течение пвп (например в пользу кого Duel Might) - pvpPhysDmg4 l" m6 y ^# B" V% M/ @" ~4 H: R
Маг. урон - pvpMagicalDmg( U, I7 O7 B) r) n5 F
Урон скилом - pvpPhysSkillsDmg
' b! G2 @ @: O! ?- h+ u8 GУворот - rEvas
9 I, s: I! V% A0 `Уворот через скилов- pSkillEvas$ ~, {" N$ v9 a
Шанс блокировки щитом - rShld+ o+ a* r y% I6 V! \
Шанс крита - rCrit: W" ]1 ~2 T4 Y i4 S
Шанс Blow - blowRate
( ]% ?4 K/ V8 A; }Шанс Lethal - lethalRate" G5 u i3 ]; C, y W3 k
Маг. крит. надежда - mCritRate (mCrit doesn't work!!)
* @6 K, s2 q s9 p8 hEXP,SP надежда - rExp( ?, ?6 |/ B& Z
Cancel - cancel% u% O$ k; O+ B( @; L- i! f) L
Точность - accCombat+ g* t e0 R/ v8 C9 @) G" x& m
Зона покрытия физ. атаки - pAtkRange (for fighters). K0 K2 a& x1 }$ A! e
Зона покрытия маг. атаки- mAtkRange (for mages)
" K8 S/ g9 P9 U9 j" h4 {! |Угол атаки (только с целью воинов) - pAtkAngle I. H3 B! M+ u7 j+ r
Количество атакуемых - atkCountMax4 \# ~+ i2 W# M+ t3 M( U* d+ u
Откат физ. скилов - atkReuse
' @& S4 ~1 j6 lСкорость бега - runSpd
/ p. [( ?( y/ v0 U7 I, R% pСкорость ходьбы - walkSpd$ N2 k! d0 _2 D, a$ @% S# K9 d
STR - STR+ y/ Y' T$ }$ O% s. L' u. K& t
DEX - DEX
. C5 D) C) W& _) L9 V/ ~( yWIT - WIT
8 f% X" Q6 b5 _4 q0 u% ^INT - INT
, G5 ~2 I) Z4 q- I; y1 k) vMEN - MEN
, I0 T$ z1 N+ D9 i( z6 q( A" k
+ I6 u# W& Q9 T* ]Уязвимости
) w" S( ?0 H6 O
" A0 c# s6 i" o+ L1 K1 A5 k! CАгрессия - aggressionVuln
7 Q( R+ y* ^2 N3 _- V3 I$ u4 f0 tКровотечение - bleedVuln
5 N9 I$ r& G4 d& @8 E: UЯд - poisonVuln! `4 e4 l7 g# L. J9 @. H0 V
Стан - stunVuln
7 I; Z, o) H& T$ p' N, Y Y) LПарализация - paralyzeVuln
) K( h6 f! p; ^* a# [4 K# X2 M, z$ NУдерживающие заклинания - rootVuln
7 T- a( b) {# QСон - sleepVuln
) B% k+ _# O3 o. |"Перекидывание" таргета -confusionVuln
2 a+ z" }' b" I$ T/ C1 pДвижение - movementVuln
! Z+ a9 u* E9 W3 b$ c; o6 F; qОгонь - fireVuln
$ s U6 V4 P$ `+ B0 K( D, Q0 yВетер - windVuln) S" p+ ^1 t" ^ f
Вода - waterVuln
: ~: F1 S: |7 b6 K4 B7 OЗемля - earthVuln( |2 C* t* h" { S" _5 P/ `
Святые атаки - holyVuln
& f, ~% J1 E, m2 dТемные атаки - darkVuln% Y- ], r! V6 X+ n( T
Резист для cancel - cancelVuln B8 |8 _ c) a1 |* @
Дебаффы - debuffVuln5 k1 ?! L8 {6 b! p' u7 I
Резист для криту - critVuln- l! x2 x9 k O+ w: f
" z# u7 v1 R, p: z& _ dРезисты простив оружия (тут думаю изображение никак не нужно)
7 F2 x. f9 t8 I) B7 b
, ?0 j& k/ J" k, C& R' u; x* ]! p- _noneWpnVuln' M2 E; [! K2 @; h5 y Z
swordWpnVuln* y1 z# q: ~# ?$ o
bluntWpnVuln c5 b2 B% e9 p
daggerWpnVuln
7 |; v( r& k8 _: G H/ Y2 |. tbowWpnVuln
$ j9 k# x$ }" ^. rcrossbowWpnVuln
- ^1 T P8 g& A+ F8 jpoleWpnVuln
" W5 ]* f9 g9 E+ z+ zetcWpnVuln# P$ R: P& H" O x
fistWpnVuln
4 s% l- O/ ^8 s$ @ tdualWpnVuln4 I m1 s8 x0 t2 P4 k/ l
dualFistWpnVuln% c& G i2 e. _1 m
bigSwordWpnVuln& }" }# R- P ]* Q6 _5 i
3 @; o7 R' v9 n/ ]1 f1 jОтражение$ Z7 F3 V+ o! } q+ [$ U
/ @4 [7 u0 U$ r! o" f" |Процент отражаемого урона - reflectDam (pay attention! not reflectDmg!! reflectDam)1 V( E& }$ ]/ W: l; r, \, |5 C) k
Процент рассеиваемого урона - absorbDam
5 B+ V/ y" b' F$ B) n+ M- e3 g3 E+ NПроцент переносимого урона- transDam; R+ c; a0 g% x: l( \# b
Отражение маг. скилов - reflectSkillMagic
& e- L* _# e/ O$ J% x) A+ oОтражение физ. скилов - reflectSkillPhysic
; R9 [& Z8 I6 c* i
2 L/ [1 S" [3 DДругое (для примера):, _) c& X. X* x
; e2 Q4 l2 e! h
Атака для гигантов - pAtk-giants" W3 {8 H+ i9 F( j& x
Защита для ласкать - pDef-undead5 G# ^; Q% K& w: J1 K' v
Атака в животных - pAtk-animals0 q3 G1 O- C. _- A
Защита для монстрах - pDef-monsters2 E* e% F' c8 @' W H. s& I/ p; E
Лимит инвентаря - inventoryLimit a! r) J& @+ r1 K
Лимит ВХ - whLimit
f. ]& o6 {+ Y1 n) I; ]. I3 wFreight лимит - FreightLimit2 C9 J5 R! h7 I1 [1 G- n8 r
Лимит продажи. - PrivateSellLimit
) ^9 ?. T3 K& o7 f% `/ K$ u' S6 OЛимит покупки - PrivateBuyLimit8 o2 c/ { p; v) L& E
Лимит гномьего крафта - DwarfRecipeLimit
5 }4 w5 _3 c* mЛимит common крафта - CommonRecipeLimit) D9 \; ^. ]0 B1 T2 M- J7 |
Потребление МР физ. скилами - PhysicalMpConsumeRate
- O9 z" P4 g- g! b9 VПотребление МР маг. скилами - MagicalMpConsumeRate4 H9 \9 f M' G& q
Потребление МР дансами - DanceMpConsumeRate
/ b% W" L7 D. r: HПотребление НР - HpConsumeRate
% f2 n' q3 z, ^: f0 BПотребление МР - MpConsume
) E% b/ u, E5 v' h9 qПотребление соулшотов - soulShotCount( C7 H; x" f0 l* M1 x
Skill Мastery - skillMastery. e8 M! a# U. u' s; N
Время пребывания около водой - breath
7 P3 z) J# E5 b3 K) r4 h
) [0 O; p% @ \5 y6 r3 gВроде все какой угодно скилл начинается почти открывающего тега да заканчивается закрывающим тегом . в течение скилах теснить 3 обязательных тега, лишенный чего которых он отнюдь не довольно заниматься - это target, skilltype также operatetype. Давайте разберемся сколько это такое вообще ; \3 R' t8 Q; |0 C9 l+ D
: I/ x) ?+ N/ Q( }
1. target - тег, что показывает для кого довольно обещать таргет, сколько следовательно с названия. Принимает следующие значения:% W( @1 |0 k! @# a
. s$ g; W) I2 X- Q0 X5 Z1 x6 h* S
TARGET_SELF - обозначает, который скилл довольно использоватся только для его владельца (селф бафф типа Battle Roar иначе говоря War Cry)
- T. V# \6 N" T" _( u+ h9 [* OTARGET_NONE - мишень неопределена
# F8 G T% R% Z0 B2 j/ _+ \; L! PTARGET_ONE - обозначает, который мишень вашего скилла - тот который в течение таргете.! R+ K+ G/ Z% i+ G
TARGET_AREA - обозначает, который скилл довольно массовым# I( J& S6 I* s+ @
TARGET_AGGREMENT - обозначает, сколько целью довольно тот, который вас атакует( ?& y1 u/ u# \
$ r/ y- D1 x, A
2. skilltype - тег, указывающий для вид скилла (бафф, дебафф)9 a# \- J- B8 \* ?* w4 S
Принимает следующие значения:0 T3 p! X2 E7 k) g* k
BUFF - бафф (оказывает положительное воздействие)
& ~$ Q6 t0 q* \5 sDEBUFF - дебафф (оказывает негативное воздействие)
' \6 c- R2 F& |3 @0 d
5 E2 m, ?1 N/ l( @6 w6 x- a) Q* x8 L! t3. operatetype - сей тег служит на определения типа скилла (активный либо пассивный)
: Y6 Q! u( S7 \6 r0 M5 {OP_ACTIVE - активный скилл, может являться использован игроком
+ _% J' [) X/ C) m+ i% T* R0 ]' fOP_PASSIVE - пассивный скилл, скилл из таким operateType никак не может пребывать использован (действует всегда), I3 e" [7 \ K$ r$ x1 d
Это были обязательные переменные, используемые на скилах. в настоящее время перейдем для остальным:
/ G2 @) z- P8 W- t" h% H" i-power - значение скилла; P) Z( }9 p3 z& v0 W+ j
-hitTime - скорость. чтобы баффа это быстрота чтения заклинания, с целью физ. скилла - прыть атаки
+ z8 w1 `" \& h$ Q$ S/ q-reuseDelay - откат скилла
& Z+ x* X# |- e+ u4 o+ X! k& _-hpconsume , mpconsume - потребление МР, НР. I& @4 E3 k8 ?; Y, u& Q
-castRange - это дальность использования того иначе иного скилла (дистанция)/ I, T8 p+ c; x1 l& s% H7 f
-isMagic, isDebuff, isBuff - это наводящие теги, могут владеть разум "true" также "false". для примеру, isBuff = true (это следовательно сколько скилл является баффом)
p8 h0 Q1 G8 C$ q4 Q0 M-effectRange - радиус действия (для массовых скиллов)% v: O$ {2 b( j9 X, d) K, T
-agro - который такое агр, равно сколько такое власть агра думаю растолковать отнюдь не нужно." b3 x" H( E! p Y) n
Это основное сколько вам понадобится. ныне расскажу вам по части значении тега на скиллах.7 l: B n/ G/ {6 M1 q, I8 A
Тег на скиллах Lineage 2 встречается чрезвычайно часто. Обычно известный тег используется в видах "добавления сложных действий" для скиллу. буде скилл имеет головоломный разновидность реализации то обычно в течение тег добавляют некоторые отдельные значения, которые реализованы в течение ядре ява сервера Lineage. настоящий первенствующий тег к использования здесь - это .- u' Z6 J, W* G$ T
Приведем первообраз использования тега равным образом тега :
; x: _. j: z* L" z: W! j$ _2 v) o' f# X& Y
+ T; g. h4 O% m+ w( P) P$ \4 ? S: I
Что сие значит:5 `' p! M" _" s5 R' w2 c" d
% N+ u% |8 f' ]5 iname - Это характер эффекта
9 |% y4 \) Z- xval - важность эффекта. в интересах дебаффов - надежда прохождения, на боевых скилов - сила.
. \2 X- q+ P' v* P! O$ n% X3 ttime - век действия эффекта' L x6 F, C1 ?! P
StackOrder также stackType - это значения уже описаные на данном скиле. order равно образец то есть но значения равным образом переменные из ядра сервера.
- i( Z1 o# n+ `
; h4 X, J* y0 }3 A$ {Думаю со скиллами я разобрались, нынче перейдем для зонам.; k+ f; X; ^& y( A% t9 J! _& D
9 ^( k. B4 c% P' oЧасть 4. чтобы начала описания зон используется тег .5 ?$ C1 Q6 E6 C% x; K: G
! B; t4 o% ~' U! [; j
1 f# c; _+ E1 c! |<!--Комментарий-->
! E1 Y. \/ ?' r9 `4 q
. o3 k% h g5 m* JПройдемся за значениям:
1 `* _% P3 ]/ _% N( V8 y9 p0 h. L1 E/ h* W
id - идентификатор зоны.. Q# h3 P4 `, T6 d( `
type - образец зоны (town, arena, jailzone). Например:
& V3 ]3 [6 N: l: ^Town - мирная зона (город). c$ R9 `9 c: {5 X4 P2 [1 j
Arena - боевая зона (PVP)
# S' u7 {3 ^9 Q7 f$ H, l8 IJailZone - зона. простой зона (извините после аллегорию ). за другому - тюрьма. в течение ней запрещены беседа да телепорт.
; L5 ~' @6 `+ w$ x; w0 A2 Rshape - это платье разве подобие зоны. Может водиться двух типов :! h& _, @1 I, W
-nPoly
, V% I( F$ T8 k% F! i-Cupoid.
. v$ i3 B* k9 @( sminZ - это минимально допустимая координата гора (z) на данной зоне .& _. z+ E v! e% M
maxZ - это максимально допустимая координата гора (z) на зоне.& i/ m* o* T. J; `
minZ также maxZ используются в угоду кому избежания прохождения сквозь текстуры, провалов перед них равным образом т.д.
1 \+ o' }$ `5 ?* v |