Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Познавательная статья относительно применения XML в Lineage 2 серверах. Изменение статов, скиллов, вещей, зон( M* w0 @2 d' J6 J; K
6 {$ g0 A2 U9 VЧасть 1. Введение# M) z, l- x, e1 `; J9 J' N# k) u
9 n6 N& P! P- }9 y! p1 iНачну от того, который но такое XML? Это текстовый формат, предназначенный в пользу кого хранения структурированных данных, ради обмена информацией промеж программами, же и с целью создания для его основе более специализированных языков разметки (например, XHTML), кой-когда называемых словарями.
' f% }4 C5 _! p; vПервая черта XML-документа называется объявлением XML — это необязательная строка, указывающая версию стандарта XML (обычно это 1.0), да здесь может присутствовать указана кодировка символов да внешние зависимости.5 P7 ?6 x' d1 ]# q& A$ o* V
9 \4 G1 N6 {6 G# i* U
Спецификация требует, с целью процессоры XML непременно поддерживали Юникод-кодировки UTF-8 да UTF-16. Признаются допустимыми, поддерживаются равно широко используются также другие кодировки.
0 y @' g9 p z+ R2 K! f' ^Так но на XML кушать мочь добавления комментария. объяснение может скрываться размещен на любом месте дерева. XML комментарии размещаются внутри туман тегов <!-- равным образом -->. чета знака дефис (--) никак не могут оставаться применены ни в течение который части внутри комментария. Вот прототип комментария:
# j* u1 T2 a8 J& x. V6 a& L6 T+ y' \6 y+ L2 a; N: p
<!-- Текст -->( Q8 @( F. D, ?9 E
8 e( W6 f. K0 @
Но я отнюдь не будем углу{цензура}ться в течение весь особенности XML, нас интересует всего на все часть, которая касается Lineage 2 XML в течение сервере Lineage применяется в угоду кому описания статов оружия, брони, скилов да т.д. в интересах оружия это предположим параметры физ. да маг. атаки, ради брони - защиты, в угоду кому скилов - медленность действия, сила, действие равно т.д. только предположим в течение файле "servername.xml" хранятся имена серверов до умолчанию. Эти имена могут содержаться свободно изменены. а кроме изменений в серверной части необходимы да изменения со стороны клиента (со стороны клиента нуждаться изменить файл "servername-e.dat". Изменяться *.dat файлы клиента могут от через специальных программ - L2Dat_EncDec да L2 FileEdit. в течение следующей части мы научу вас переменять статы вещей.
+ _7 d' D6 C, t+ t* |: b5 r+ e+ r6 ~2 \7 Y' l% g& C: ~
Часть 2.Изменение статов вещей.% ^0 s6 `! G& V
; O7 z: d! i% ?% W) K3 Y7 SВозьмем итем Shirt. Это неприметная НГ шмотка. в ее примере аз поясню что, где также когда. Вот кусок XML кода
; q3 y% s' l# {" f4 R8 t. X* E$ o: ~* E, R% Z: w# D2 @
Для измения ее статов тогда нам нужна лишь одна строчка:6 B4 D; X% _, ?; T1 H; d: e
. ]( U+ g( K4 k: G' JЧто это безвыездно значит:
# A6 O0 A; f0 R% [% }1 _3 P' E/ b. f/ e+ q. P
Тег означает приращение равным образом является переменной. в его месте могут да а быть, например, , , , . да так. который но означают эти значения?, m$ t( ?& ^. E& w
1. <add /> - приплата статов. То кушать ежели вы оденете вещь, ваши статы увеличатся. важность order довольно 0x10.
, @, e# R4 t+ F3 R" w
/ R, C6 a7 e7 k7 z; u" d: L<add val='100' order="0x10" stat='pDef'/>
1 ]: { \0 C; A5 W0 ~; ]/ \4 |4 E3 w+ Z% Z6 H3 R# e6 E
Данный код следовательно который присутствие одевании багаж вам прибавится 100 единиц стата (в данном случае P. Def).
1 X0 d) H) ~' D1 k i+ a. L, K2 y
2.<sub /> - вычитание статов. То поглощать буде вы оденете вещь, ваши статы уменьшатся. order да а - 0x10.
2 d H7 K+ B+ Q1 \5 ?/ } D: ]! Y4 `
Данный код следовательно который присутствие одевании багаж около вас отнимется 100 единиц стата (в данном случае M. Def).
3 d" v0 H. I, I0 e/ z$ U- D$ L: h+ _+ ?; R
2 Z( I5 J- Q5 G* }
3. <set /> - назначает вам строгое важность стата. То теснить ежели вы оденете нечто со значением 20, то тот стат, однако кто это смысл влияет довольно равен 20. Order 0x08.) |% D6 h) T0 D
1 {, C* G- P; W9 B
Данный код следовательно который быть одевании багаж около вас довольно 100 единиц стата (в данном случае P. Def). N) c8 s& a* U- h9 K. \$ Z
( D) l! M( s( b2 K4 r; f; z! M
4. <mul /> - увеличение статов. То лакомиться коль скоро вы оденете вещь, ваши статы умножатся. Order 0x30.
& r: ^+ l# z4 Q1 O" b
- j5 ~! W0 I* o4 \$ V$ S& cДанный код вероятно сколько быть одевании багаж разум стата умножится для 100 (в данном случае M. Def).
9 A$ L" U2 F( L8 W4 ^1 B* v6 m5 W p2 J+ z
5. <enchant /> - показывает, в что увеличится стат около заточке вторично в +1. Order 0x0C.
+ d+ T- L! l3 A$ Y( c+ F+ |
( e+ e8 i" d' w6 y9 @$ w: tДанный код следовательно который быть заточке багаж опять в 1 ваши статы (в данном случае P. Def) увеличатся для 100.7 N' T' V1 m. p# z
Ниже приведена список значений "order":
" w2 ]( K1 C/ @! Y$ t: m3 e5 j$ X
( E. a" a$ a/ G* n! f0x08 - set
2 P# s9 E6 u m1 P. t. R3 k0x10 - add/sub (оружие, броня, бижутерия) также (STR, CON, DEX, INT, WIT ,MEN)
0 [4 g! j* I* ?/ m$ \1 [( G0x20 - отнюдь не нужно% Z# C/ H X# d
0x30 - mul/div (masteries, buffs, debuffs, SA (специальные возможности оружия), бонусы брони)
% @+ C. ^# s2 Q% d0 F- a( d7 y. Y6 F0x40 - add/sub (masteries, buffs, debuffs, SA (специальные возможности оружия))
: W, G, B( i+ _ C3 E3 _0x50,0x60 - никак не нужно) u/ T' w7 o. F, l& d4 o6 f `: `
0x0C - enchant# f1 i: h* j1 a7 z* [/ [
/ d; K% M6 S1 h
Часть 3. перемена скилов) T4 h* m: h/ |
: H0 |& g, l. i. w. X
Самая большая порцион моей статьи Начну со значений, причинность вы должны быть знакомым сколько изменяете.
, n: B( r% f2 U- e1 C. {- j! Q5 ?0 u; }0 A& `- N" R" D& M" ^# e
Изменение максимального количества HP - maxHp; t3 z* ]5 X5 p. n
Изменение максимального количества CP - maxCp
# ~! C( a' G6 RИзменение максимального количества MP - maxMp5 _1 q+ e s# H/ D; V p- L9 C
Регенерация НР - regHp
e8 |) h7 _6 D; N. O# EРегенерация СР - regCp
' H6 S) }& F9 CРегенерация МР - regMp
0 N7 ?( Q! S P8 [Эффективность хила - gainHp t) D3 ]+ Z4 c' A) \
Умение хила - giveHp0 l1 X; E: Y! h) x }
Бонус хила - bonusHp
, q7 k5 F) `: z5 M) H rФизическая опора - pDef2 H* c7 W; ], j% q( T; s2 F1 `
Магическая столп - mDef
; W8 d+ c+ O i6 {- ~9 J! TФизическая набег - pAtk
, I. s2 p+ \2 w/ l9 Q yМагическая набег - mAtk
+ {) j; h- b4 l0 XСкорость физической атаки - pAtkSpd
+ m* k6 Y# M, A" l- oСкорость магической атаки - mAtkSpd
5 T( Y$ R; U- o% l0 IСкорость отката - mReuse
a8 e0 h- k/ a7 _# WЗащита щитом- sDef
) G" I- Q, [/ e9 |* @. eУгол защиты щитом - shieldDefAngle( U" {2 b$ O# V+ p. y) {
Критический пощечина - cAtk
; S9 L. t2 ]. vПрибавка для критическому удару - cAtkAdd
0 _* A' n I" bФиз. урон в течение пвп (например в пользу кого Duel Might) - pvpPhysDmg7 [& C( @0 U( g6 { W. r& \
Маг. урон - pvpMagicalDmg
/ L9 k1 ]- o yУрон скилом - pvpPhysSkillsDmg
- [( ?7 \5 p1 K( I4 [0 `: S! ZУворот - rEvas. B9 i1 W1 C4 ^
Уворот через скилов- pSkillEvas# ^% K3 {6 ~8 R6 U) \' r4 B1 f: J) q
Шанс блокировки щитом - rShld
& C# w0 |/ ]' c9 `2 Q6 cШанс крита - rCrit
! D+ X4 h4 {9 O- YШанс Blow - blowRate) r- g* R% [* u5 q; r6 n8 p
Шанс Lethal - lethalRate* y( j* K* Q/ `4 z4 X4 c3 D! n+ i
Маг. крит. надежда - mCritRate (mCrit doesn't work!!)
7 B* d4 ~( ]) j' N7 ^0 NEXP,SP надежда - rExp. t. p8 C7 ^4 X( Q7 S: f" O! m: \
Cancel - cancel3 D' c. I# y2 v( v
Точность - accCombat
1 `% X9 _( n! p& R2 sЗона покрытия физ. атаки - pAtkRange (for fighters)
( D2 O/ X( A6 \( E1 Q) {0 zЗона покрытия маг. атаки- mAtkRange (for mages)0 F$ s4 j6 b3 W" d! O$ I0 v
Угол атаки (только с целью воинов) - pAtkAngle
7 u2 D: S' b6 eКоличество атакуемых - atkCountMax
+ b8 z8 R7 n( F. eОткат физ. скилов - atkReuse5 H* }7 [2 Z; m( R# A, [
Скорость бега - runSpd. j) ~6 b2 m" R" w
Скорость ходьбы - walkSpd
7 C% g0 R @/ m# ^# Q3 t) d, \STR - STR; D: u0 m1 L: m6 Y. d
DEX - DEX6 \) q8 C( d1 p% }8 a
WIT - WIT; y& a. l; x8 m$ p6 q5 ~2 i
INT - INT. B) {' z7 y6 `' m" Q) x, x5 S
MEN - MEN1 k' b* u0 D& B" Z8 T" x5 z7 `$ c8 S
) l3 r* o! l( a6 o0 v; j* Q
Уязвимости7 `$ d* D8 }! Q. G3 b! [: m2 k& ?
( R$ D5 u, G' @( ^; S7 ?Агрессия - aggressionVuln
8 e5 p$ t$ v& _7 f( {- nКровотечение - bleedVuln. L+ d$ p3 Y6 n% ?+ N' R2 Y2 {
Яд - poisonVuln
* z& q+ c: O" I$ {Стан - stunVuln
" V& Y# @ s. U# j( f0 {$ BПарализация - paralyzeVuln) ?1 z( A* B y6 o1 {/ `- h
Удерживающие заклинания - rootVuln
c0 u& F' A5 G+ g; LСон - sleepVuln" }1 t3 g% w% }
"Перекидывание" таргета -confusionVuln2 P3 ~% W! @) W- E6 l
Движение - movementVuln+ m) A' u* o/ P! {6 d
Огонь - fireVuln
, ~3 u* y% |4 r! \Ветер - windVuln; x3 F2 w8 ]6 Z4 D _# @, R
Вода - waterVuln% c! `: u6 b C4 `0 f
Земля - earthVuln
5 \' E( v* P5 KСвятые атаки - holyVuln* a1 X) \) [( M; d- }$ I
Темные атаки - darkVuln' B* V8 X* U3 J2 s5 G
Резист для cancel - cancelVuln/ Z0 C7 r; J/ x2 m8 {% H
Дебаффы - debuffVuln4 s2 f5 r( r" Z l" d9 Z1 F
Резист для криту - critVuln
& G, u$ _$ V1 d7 a7 m) L9 Z# H b
Резисты простив оружия (тут думаю изображение никак не нужно)
/ _8 c0 W' t$ n7 v% u
" m" V! ]; ]) T$ D# y) N; gnoneWpnVuln E) y8 f9 M& t' k; n
swordWpnVuln4 @! U( G4 a+ Z3 P3 B
bluntWpnVuln
7 V' B, p$ x& i: X7 s$ P, t3 TdaggerWpnVuln! S8 d4 U( l1 Z8 c4 b
bowWpnVuln* x) z$ R* n" Z, e
crossbowWpnVuln
' a8 Y! W. d) i/ x0 R" }poleWpnVuln. p# {: d" Y5 a0 j+ b( }* W8 y& a
etcWpnVuln$ a' ?$ P" I0 c
fistWpnVuln
3 i. V" ^# ?; Q& }dualWpnVuln
$ l1 I, ~% |4 X: \' K* d2 BdualFistWpnVuln
J# y3 P. f0 E0 M; cbigSwordWpnVuln- F5 |: l# m9 K$ K# Q7 V- o$ ]
" \! |* }# T, _( ^; _% C
Отражение
6 q. Y9 V/ @3 N' z* b* @: i9 X3 y1 a# Q
Процент отражаемого урона - reflectDam (pay attention! not reflectDmg!! reflectDam)
: n; c7 ?9 P4 u; G- U! ~! o3 HПроцент рассеиваемого урона - absorbDam
+ ~/ @& `' ~" {7 M. N3 {2 C4 IПроцент переносимого урона- transDam
+ P* n9 G" f& y9 P* V, XОтражение маг. скилов - reflectSkillMagic8 \/ t4 l, F; U
Отражение физ. скилов - reflectSkillPhysic* H& E! U) a& H& o3 h5 |
+ ]3 W% U: `. V9 \( yДругое (для примера):
4 p& ]" Z E9 ~" L: N8 y" [8 z7 z! a$ a
Атака для гигантов - pAtk-giants( U" @; E1 P) v& ~) v3 w, {( L
Защита для ласкать - pDef-undead- x: {. e" J" v. @" m) c3 i
Атака в животных - pAtk-animals
" F1 k9 Z( t' J, C- cЗащита для монстрах - pDef-monsters& F$ V+ m4 r# m" k1 }
Лимит инвентаря - inventoryLimit
1 S% c# v; |7 z! _! GЛимит ВХ - whLimit2 o; ~8 ^5 D F) \. m: y* {, |( x
Freight лимит - FreightLimit2 d* Z" b0 F7 {, {9 x
Лимит продажи. - PrivateSellLimit
3 w) Z5 N6 r' z" P/ \4 k! P% ?% ]1 wЛимит покупки - PrivateBuyLimit
1 `* L. z" O: A0 BЛимит гномьего крафта - DwarfRecipeLimit/ [2 B0 K) r, j7 h
Лимит common крафта - CommonRecipeLimit
8 j& I" u/ _2 K' WПотребление МР физ. скилами - PhysicalMpConsumeRate# O: b- h& X' u ~- o6 _" [2 X
Потребление МР маг. скилами - MagicalMpConsumeRate
. Y7 q) P, [/ \) TПотребление МР дансами - DanceMpConsumeRate; A, C% y2 l9 Y' X
Потребление НР - HpConsumeRate
8 ~" O! n) _6 h' Z' CПотребление МР - MpConsume
+ v& i/ s% W; BПотребление соулшотов - soulShotCount1 B1 O0 S, @( @# n& V, a$ s
Skill Мastery - skillMastery. I+ T; T- @! L! n- r6 g+ p
Время пребывания около водой - breath
9 Y7 ?3 W$ Z6 X3 `$ l% f; `$ e' d L; C
Вроде все какой угодно скилл начинается почти открывающего тега да заканчивается закрывающим тегом . в течение скилах теснить 3 обязательных тега, лишенный чего которых он отнюдь не довольно заниматься - это target, skilltype также operatetype. Давайте разберемся сколько это такое вообще
3 d0 ^. ?$ q, y; |6 S' }# Z- A3 y1 d# B; N1 S, }6 u: ^
1. target - тег, что показывает для кого довольно обещать таргет, сколько следовательно с названия. Принимает следующие значения:/ M$ S4 H) A3 w0 }# X
! y$ i3 ~" `* U' e: V6 W
TARGET_SELF - обозначает, который скилл довольно использоватся только для его владельца (селф бафф типа Battle Roar иначе говоря War Cry)
, S' a* o' E& PTARGET_NONE - мишень неопределена
+ Y/ x$ D3 d5 jTARGET_ONE - обозначает, который мишень вашего скилла - тот который в течение таргете.# R% d! W* t& }
TARGET_AREA - обозначает, который скилл довольно массовым
+ t/ w2 \* i; F+ R$ G; RTARGET_AGGREMENT - обозначает, сколько целью довольно тот, который вас атакует; d2 d) i9 I) h5 Y" v3 S( ~& m
N5 J' H% M) x& c! r
2. skilltype - тег, указывающий для вид скилла (бафф, дебафф)
# M. ~* E6 B1 OПринимает следующие значения:
E4 V+ G# w: Q8 G$ v% p6 yBUFF - бафф (оказывает положительное воздействие)
* _4 _+ b/ M( @, aDEBUFF - дебафф (оказывает негативное воздействие)
\; S5 q" i3 w9 P. [
0 W( x T) C$ P' L( i1 e3. operatetype - сей тег служит на определения типа скилла (активный либо пассивный)
5 C8 |: A# U4 M% zOP_ACTIVE - активный скилл, может являться использован игроком Q" x; l1 Q |6 C* p0 o3 Q
OP_PASSIVE - пассивный скилл, скилл из таким operateType никак не может пребывать использован (действует всегда), S6 r! T# [5 v: Q2 ~" D/ L4 ]
Это были обязательные переменные, используемые на скилах. в настоящее время перейдем для остальным:
- ^9 I& h l( E/ |-power - значение скилла0 k0 V% e- O: h* O" Z
-hitTime - скорость. чтобы баффа это быстрота чтения заклинания, с целью физ. скилла - прыть атаки* ^8 h) O+ L) n, `% }: M6 I
-reuseDelay - откат скилла4 {0 M* a) T, n% ^# C
-hpconsume , mpconsume - потребление МР, НР
4 |# F" w) _8 Y9 a! f' E-castRange - это дальность использования того иначе иного скилла (дистанция)
7 F4 j0 m. d6 u" ~- l+ l. ^-isMagic, isDebuff, isBuff - это наводящие теги, могут владеть разум "true" также "false". для примеру, isBuff = true (это следовательно сколько скилл является баффом)
( S8 V8 t5 e+ v3 G6 q$ z) z-effectRange - радиус действия (для массовых скиллов)) ?. O/ K0 c2 {; X5 C
-agro - который такое агр, равно сколько такое власть агра думаю растолковать отнюдь не нужно.+ y" D+ `- m! C- t9 S( Y- e
Это основное сколько вам понадобится. ныне расскажу вам по части значении тега на скиллах.
: ^1 y1 U0 M6 U, A8 f7 E7 T" X& sТег на скиллах Lineage 2 встречается чрезвычайно часто. Обычно известный тег используется в видах "добавления сложных действий" для скиллу. буде скилл имеет головоломный разновидность реализации то обычно в течение тег добавляют некоторые отдельные значения, которые реализованы в течение ядре ява сервера Lineage. настоящий первенствующий тег к использования здесь - это .
0 c1 e3 E; L9 w! q K( SПриведем первообраз использования тега равным образом тега :! t0 |# o }2 n
+ [; z4 y: X" z) t N6 H
! w3 t4 J0 M9 n8 M; V, j9 o5 q
, u+ \6 Q# x: v: Q8 w/ r8 JЧто сие значит:
4 F4 y" ^0 o0 Y- O' v8 D' t+ _
name - Это характер эффекта Z! l! d; y5 p$ U6 ]1 D; C2 i& p: {; b
val - важность эффекта. в интересах дебаффов - надежда прохождения, на боевых скилов - сила.
. N7 E- W9 G3 O2 h! ~" m# Ltime - век действия эффекта
: N; z: C2 d& b# zStackOrder также stackType - это значения уже описаные на данном скиле. order равно образец то есть но значения равным образом переменные из ядра сервера.
( J `, d3 W2 f% l' n: Q l k( v
u' v* h) C h' AДумаю со скиллами я разобрались, нынче перейдем для зонам.6 H, N( v4 `) ]# k, a/ r; d
' }1 y, ?4 j7 K9 jЧасть 4. чтобы начала описания зон используется тег .1 Q% I) z8 \$ G
# Q& c8 L6 \- y) U0 V( h
( D2 }$ D( Y) {# |8 [<!--Комментарий-->1 S. u9 |2 T( _/ ]$ w
$ r% l" G+ t6 A( r
Пройдемся за значениям:
, a9 Q+ H. \+ q' z; P1 f
+ K E. }& B9 t4 w: _id - идентификатор зоны.( }* X8 i3 [6 }, M
type - образец зоны (town, arena, jailzone). Например:
' D- Y2 W) v2 n3 g# @, L3 NTown - мирная зона (город)) l6 r! Y8 T2 L# q6 Z) K
Arena - боевая зона (PVP)
# R4 H, l9 W" FJailZone - зона. простой зона (извините после аллегорию ). за другому - тюрьма. в течение ней запрещены беседа да телепорт.
5 h) D( {1 p$ A# ?. `( S* vshape - это платье разве подобие зоны. Может водиться двух типов :
* {1 N" x. y0 R/ x9 a }-nPoly- N3 v* \8 A- J6 h( v' ?
-Cupoid.
6 n- h5 M3 b3 o5 @minZ - это минимально допустимая координата гора (z) на данной зоне .9 z: x3 H$ e- Q
maxZ - это максимально допустимая координата гора (z) на зоне.; f" {$ G5 x( o/ u3 h; b) A3 s2 G
minZ также maxZ используются в угоду кому избежания прохождения сквозь текстуры, провалов перед них равным образом т.д.
+ ?" U" ?# z7 v* ~% o( K/ g1 i |