Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Познавательная статья относительно применения XML в Lineage 2 серверах. Изменение статов, скиллов, вещей, зон
# `& w( C- ^& o$ Z
" B" T$ J: I* ~3 OЧасть 1. Введение6 u ]. }4 C2 i# [# v
, m6 m- p: z2 x/ a- m+ d0 I
Начну от того, который но такое XML? Это текстовый формат, предназначенный в пользу кого хранения структурированных данных, ради обмена информацией промеж программами, же и с целью создания для его основе более специализированных языков разметки (например, XHTML), кой-когда называемых словарями.
& N: v* ?3 u- k: @: O; XПервая черта XML-документа называется объявлением XML — это необязательная строка, указывающая версию стандарта XML (обычно это 1.0), да здесь может присутствовать указана кодировка символов да внешние зависимости.. X% w8 ]- {2 N; I8 _# a
" [6 `9 J, o+ E; ^6 K4 n* [, cСпецификация требует, с целью процессоры XML непременно поддерживали Юникод-кодировки UTF-8 да UTF-16. Признаются допустимыми, поддерживаются равно широко используются также другие кодировки.
! C7 n% ?4 k% u8 |# Y) m$ KТак но на XML кушать мочь добавления комментария. объяснение может скрываться размещен на любом месте дерева. XML комментарии размещаются внутри туман тегов <!-- равным образом -->. чета знака дефис (--) никак не могут оставаться применены ни в течение который части внутри комментария. Вот прототип комментария:! a. _+ t' I& ~! U/ i' U" a! V
{7 L! V3 G" N y) N" Y3 n
<!-- Текст -->
( @( ^ h4 {+ r, k [+ L- q
9 P" F: _( _9 FНо я отнюдь не будем углу{цензура}ться в течение весь особенности XML, нас интересует всего на все часть, которая касается Lineage 2 XML в течение сервере Lineage применяется в угоду кому описания статов оружия, брони, скилов да т.д. в интересах оружия это предположим параметры физ. да маг. атаки, ради брони - защиты, в угоду кому скилов - медленность действия, сила, действие равно т.д. только предположим в течение файле "servername.xml" хранятся имена серверов до умолчанию. Эти имена могут содержаться свободно изменены. а кроме изменений в серверной части необходимы да изменения со стороны клиента (со стороны клиента нуждаться изменить файл "servername-e.dat". Изменяться *.dat файлы клиента могут от через специальных программ - L2Dat_EncDec да L2 FileEdit. в течение следующей части мы научу вас переменять статы вещей.
3 t/ P- k4 Y! b9 a7 I8 F4 F) ]
F/ ?, M4 y4 L5 c1 DЧасть 2.Изменение статов вещей.( A4 @7 p: M7 Y6 j H6 x
* a. q/ v* y4 n2 k7 k
Возьмем итем Shirt. Это неприметная НГ шмотка. в ее примере аз поясню что, где также когда. Вот кусок XML кода3 i! S5 P4 Y$ ~ s- [
# E) f) z, f4 A% Q% z0 G( ~$ D' ?
Для измения ее статов тогда нам нужна лишь одна строчка:
( n, ^# M( C" B8 y" J- i5 K$ a; N) S. A t. g3 C8 O! U, X3 b
Что это безвыездно значит:
. L5 c1 F2 x3 y& w F
! \0 \+ A0 S! n O! _Тег означает приращение равным образом является переменной. в его месте могут да а быть, например, , , , . да так. который но означают эти значения?, Y5 c3 b- |. V+ x( N0 K6 {
1. <add /> - приплата статов. То кушать ежели вы оденете вещь, ваши статы увеличатся. важность order довольно 0x10.5 B6 h g$ T/ Q( k4 K% t; m1 A
# Q6 T% i* Y( u ~" K: p6 t. p9 [<add val='100' order="0x10" stat='pDef'/>
( L% H6 v) ?5 r; w
8 V$ P2 s6 D; K* ]0 H0 TДанный код следовательно который присутствие одевании багаж вам прибавится 100 единиц стата (в данном случае P. Def).
5 N+ \0 N% L& v$ ]" \: v; f- L7 x( I
2.<sub /> - вычитание статов. То поглощать буде вы оденете вещь, ваши статы уменьшатся. order да а - 0x10.% x: ]- d) u. q! p0 Q
, x! N$ H. l5 f2 R! LДанный код следовательно который присутствие одевании багаж около вас отнимется 100 единиц стата (в данном случае M. Def).4 U7 R& n$ c- c) }" C$ B' O
# @+ q- j/ ^" T' v8 k* B8 f/ ~5 L! X) l9 _6 Z0 d5 G% ^
3. <set /> - назначает вам строгое важность стата. То теснить ежели вы оденете нечто со значением 20, то тот стат, однако кто это смысл влияет довольно равен 20. Order 0x08.' q# u7 o/ d x6 i# m
2 U7 e8 _% A& s2 B9 A7 B2 J' BДанный код следовательно который быть одевании багаж около вас довольно 100 единиц стата (в данном случае P. Def).
! h, B" ~* H3 o" C
; E2 N7 `/ Z+ d7 A$ v* _3 g6 O3 q' \4. <mul /> - увеличение статов. То лакомиться коль скоро вы оденете вещь, ваши статы умножатся. Order 0x30.
- U6 s7 }2 ]" R6 J$ t. {8 f2 C7 w; o" V6 c
Данный код вероятно сколько быть одевании багаж разум стата умножится для 100 (в данном случае M. Def).
6 g: C, L' N) ~) h8 H! S, ~$ e1 `4 {. k, Y+ ^3 T
5. <enchant /> - показывает, в что увеличится стат около заточке вторично в +1. Order 0x0C.% W/ c! q- L6 |! k
0 G, i. `& u8 @7 y0 n- v8 e
Данный код следовательно который быть заточке багаж опять в 1 ваши статы (в данном случае P. Def) увеличатся для 100.; U( c% d' h. z" s% b$ ?1 \: O9 i
Ниже приведена список значений "order":
4 c/ U+ f# Z7 U- L; J2 @0 L; g' P, H) j, Y7 Q
0x08 - set! P% {9 m7 [! m
0x10 - add/sub (оружие, броня, бижутерия) также (STR, CON, DEX, INT, WIT ,MEN)
1 X; k( [- X* `7 L* C0x20 - отнюдь не нужно
# e: B8 N# }9 e+ g8 b$ Y' T0x30 - mul/div (masteries, buffs, debuffs, SA (специальные возможности оружия), бонусы брони), V b2 b/ S7 }* K8 Q7 f0 h. D
0x40 - add/sub (masteries, buffs, debuffs, SA (специальные возможности оружия))2 M3 q/ U2 q9 W
0x50,0x60 - никак не нужно
. d q: A; ^; _2 _/ u1 l( j0x0C - enchant( D0 Y9 j7 @ J* h1 B- ~
Q+ D& d4 ~% S% `5 C& l: D
Часть 3. перемена скилов
/ T- z# e% A9 E: t2 Y
8 f V$ G5 D* CСамая большая порцион моей статьи Начну со значений, причинность вы должны быть знакомым сколько изменяете.
9 c& i9 U, B4 ^" b) @* v! ]) ~- O3 @2 J: n
Изменение максимального количества HP - maxHp' L! V$ b; z& c: j
Изменение максимального количества CP - maxCp
9 c% k. A+ _4 [$ T3 yИзменение максимального количества MP - maxMp
3 f: `. f; Q3 J' ~. }4 y" mРегенерация НР - regHp
% ?' d1 o8 s& BРегенерация СР - regCp
& D* u b3 g( [ _# k' u1 l* n* ]; GРегенерация МР - regMp" L& z' r- s" \0 m* L
Эффективность хила - gainHp
7 h9 p2 p- J& A2 k6 @% PУмение хила - giveHp1 _$ J; G8 z; a2 ^/ f' M& m1 o$ W
Бонус хила - bonusHp
" O5 k9 G: q4 @% m7 iФизическая опора - pDef1 J- ?7 j! q, Q0 `: W7 v& D
Магическая столп - mDef
: \. D, I5 Q" f- L- d WФизическая набег - pAtk
4 w4 X+ b! X0 | PМагическая набег - mAtk
8 o( Z8 u$ y6 _" r9 P! FСкорость физической атаки - pAtkSpd: g* B. B- l& l7 b
Скорость магической атаки - mAtkSpd0 [1 L+ v7 S' l6 \5 b& k- b
Скорость отката - mReuse. \+ s8 ?( V: ]' q
Защита щитом- sDef7 S! z* S3 G/ k- c/ q5 B% u9 Z4 G {
Угол защиты щитом - shieldDefAngle6 I2 w1 U6 z; }0 a
Критический пощечина - cAtk: F+ _7 c$ H0 z/ y& M( l, L" T
Прибавка для критическому удару - cAtkAdd% A2 H3 t" ~' P$ n- g5 p# e
Физ. урон в течение пвп (например в пользу кого Duel Might) - pvpPhysDmg
. [8 `9 b* n. g# g, YМаг. урон - pvpMagicalDmg1 s, T. x" O$ B* B8 ` n
Урон скилом - pvpPhysSkillsDmg6 f: E' V9 C9 P6 q
Уворот - rEvas) ]6 t& S, a3 L+ x! A7 w4 l
Уворот через скилов- pSkillEvas. ~& V% _' P+ C# ]& u
Шанс блокировки щитом - rShld8 N' W l% f; Z9 x) O
Шанс крита - rCrit q+ ]) m8 u" t) A$ |7 a
Шанс Blow - blowRate5 C0 Y3 ?* J4 j! [+ N1 T' P- w
Шанс Lethal - lethalRate: T, [) D( s k" Z& e) x
Маг. крит. надежда - mCritRate (mCrit doesn't work!!)
) r0 ?! H) [7 ^0 U* N2 jEXP,SP надежда - rExp! b( |" c: S- I! ?$ j' F
Cancel - cancel
0 Z9 d& J H. X+ g0 aТочность - accCombat
; w% b, A+ R1 C$ X2 O$ B) U8 {2 LЗона покрытия физ. атаки - pAtkRange (for fighters)/ H" y5 I- n2 R1 u
Зона покрытия маг. атаки- mAtkRange (for mages)% R6 ^0 v. b6 P% g2 H( ?: E
Угол атаки (только с целью воинов) - pAtkAngle
) M2 I* ^4 E- q( N# YКоличество атакуемых - atkCountMax4 I! f, J: _' c) M2 x& S/ n1 D9 P
Откат физ. скилов - atkReuse
% A$ i/ K* D1 C& ~# d) t: aСкорость бега - runSpd
) j& u) x+ j8 ^Скорость ходьбы - walkSpd5 S3 h$ @( o8 m; D0 c+ n
STR - STR
7 K3 B7 N9 ~7 q; ~/ ~DEX - DEX
1 c5 {( ^5 S. m, bWIT - WIT" h& b0 r" A& p2 `' X
INT - INT
* `1 K/ Z3 }' Y. hMEN - MEN/ w k4 Q% ?- t4 }% N, V8 b$ `0 _9 I
7 y9 k* q& `. J& Y$ f. P) T4 jУязвимости
. T2 K, p5 u! E1 W
# j) D3 j7 v! NАгрессия - aggressionVuln K' N+ D- w3 K( P! \1 [2 x
Кровотечение - bleedVuln
. F# D: w [# Q* b" a% TЯд - poisonVuln
M" |( ]: k" Y- v& f# c9 H o$ N1 `Стан - stunVuln( n" R5 u# I3 f: T
Парализация - paralyzeVuln5 }. E. d* L' l3 N+ m) J' p6 @
Удерживающие заклинания - rootVuln1 h1 w5 D/ w( f! n3 T+ @
Сон - sleepVuln8 x& [- y# S! U
"Перекидывание" таргета -confusionVuln
0 @" s6 i9 L' h! D, bДвижение - movementVuln
p% ?( V. ^1 t1 J2 V" ~4 l! }2 c, Q' }Огонь - fireVuln
/ }7 z# q- r' ~, a+ sВетер - windVuln; {9 G9 d/ {. h+ p: U
Вода - waterVuln
3 d3 h5 R7 W( K! _4 ]8 yЗемля - earthVuln" W( n6 u( e& p6 w3 Q
Святые атаки - holyVuln
2 E8 [$ V5 O9 c l3 KТемные атаки - darkVuln2 l, c9 m% P( I! V
Резист для cancel - cancelVuln
3 O0 v3 H7 r! R# b9 d+ AДебаффы - debuffVuln9 K+ ^6 E$ M/ | y- R% x" y: q& k
Резист для криту - critVuln
- [8 R! Y+ D' f" W0 B% k
; z. Z0 l) z* V" V5 t5 ?7 J# PРезисты простив оружия (тут думаю изображение никак не нужно)" \/ X4 M$ @. s/ r, r0 [) a
! E Y- h- z; Z% S; W
noneWpnVuln
6 t2 m. I3 W6 y3 F; T5 sswordWpnVuln1 r" k, |% f- z5 v, d* t( {
bluntWpnVuln
, D6 k' T, ^2 g+ @7 ~8 cdaggerWpnVuln/ ?$ o. B' p( T- S8 Q+ }, w( w. I
bowWpnVuln
- ^& H" `& k% @+ F6 m) [crossbowWpnVuln
/ T% l, ^$ q! h" S# GpoleWpnVuln6 U" {% r6 @/ x6 y
etcWpnVuln
% H! D- e9 V, TfistWpnVuln, h+ w* ~6 i1 O
dualWpnVuln
7 ~# `$ A5 v3 c7 i% o4 q, x# h- z$ sdualFistWpnVuln
4 }5 z8 Z6 z' C( a8 |bigSwordWpnVuln+ Q2 ?. v9 G, e
% ?4 ]+ o8 `% G v) kОтражение/ U# h( ?5 D: ] D$ y$ c; v3 v
4 O9 p7 g5 p& O3 o/ s; \) r
Процент отражаемого урона - reflectDam (pay attention! not reflectDmg!! reflectDam)) V" T4 f. e: f! y: Y2 w& C; y
Процент рассеиваемого урона - absorbDam
( u/ R" U" p8 l0 _4 t3 ~, _7 n1 GПроцент переносимого урона- transDam
1 M$ Z& R. n0 D* c8 Q7 i$ ]8 h$ OОтражение маг. скилов - reflectSkillMagic0 b5 J2 G1 Y+ V! R
Отражение физ. скилов - reflectSkillPhysic/ u5 E9 p9 T+ u) ]5 j2 f
0 f9 F+ B, B# [* v2 b
Другое (для примера):
1 W! w4 e4 o: Y) n5 Z- x
* Q( n- |( C7 q9 o; GАтака для гигантов - pAtk-giants A3 k0 C6 ]1 ]+ t* F: S' G, h5 |3 H
Защита для ласкать - pDef-undead
6 \* w b& d- j/ R! O1 U5 F. jАтака в животных - pAtk-animals9 i4 V, @0 E4 R
Защита для монстрах - pDef-monsters6 T! ?; d9 t0 A W
Лимит инвентаря - inventoryLimit
" o2 Z# Y7 ^4 {( G& WЛимит ВХ - whLimit
* z: y! \" C, A) `, Z% m/ CFreight лимит - FreightLimit
1 P: z) A$ h' J4 R8 R4 yЛимит продажи. - PrivateSellLimit) c" u- r3 h% U2 Q' F
Лимит покупки - PrivateBuyLimit9 I) Y' v$ w4 ^! d; E& M0 i6 J! h
Лимит гномьего крафта - DwarfRecipeLimit% Q$ ^$ L( a5 V% J- @' Y# \
Лимит common крафта - CommonRecipeLimit
, F2 D% ?2 t& r9 [' \4 O. a( YПотребление МР физ. скилами - PhysicalMpConsumeRate N$ b: ~) ?& f$ K3 D
Потребление МР маг. скилами - MagicalMpConsumeRate$ N6 a0 X. S1 G( g) w
Потребление МР дансами - DanceMpConsumeRate
3 m( m$ l7 \0 q: IПотребление НР - HpConsumeRate
; [ j; l+ H1 {1 _# B: | Y& B0 RПотребление МР - MpConsume
3 {$ C" ~' A, }' W, vПотребление соулшотов - soulShotCount' z' \% k+ p) {9 o3 G' a4 x
Skill Мastery - skillMastery3 v9 F* J, c# R' o; M& n) v% j. L
Время пребывания около водой - breath
5 G9 W5 W) |& g6 R+ a% b7 ^0 e# C5 b2 J
Вроде все какой угодно скилл начинается почти открывающего тега да заканчивается закрывающим тегом . в течение скилах теснить 3 обязательных тега, лишенный чего которых он отнюдь не довольно заниматься - это target, skilltype также operatetype. Давайте разберемся сколько это такое вообще * s( F* ?& E, }3 L3 M1 m3 ^' D
8 R! o: Z' Q6 x2 i
1. target - тег, что показывает для кого довольно обещать таргет, сколько следовательно с названия. Принимает следующие значения:
, g/ }* U J. J) {
[" m& }# f5 |' U1 K4 A. _TARGET_SELF - обозначает, который скилл довольно использоватся только для его владельца (селф бафф типа Battle Roar иначе говоря War Cry)
& w% P6 H# ^/ @+ s% ^4 p3 ?TARGET_NONE - мишень неопределена/ I+ w; x- N, J
TARGET_ONE - обозначает, который мишень вашего скилла - тот который в течение таргете.% u7 `# Y. s" d2 ]2 c2 ?9 x
TARGET_AREA - обозначает, который скилл довольно массовым
! \5 p/ m. ~3 y5 ^0 z, ^% nTARGET_AGGREMENT - обозначает, сколько целью довольно тот, который вас атакует
) w: I, ~2 V' E8 f8 {8 H/ l" u" K! ~3 M6 ?5 |
2. skilltype - тег, указывающий для вид скилла (бафф, дебафф)
; V/ E$ v7 {& q; |Принимает следующие значения:
. I& p. _: o) t% YBUFF - бафф (оказывает положительное воздействие): ~( L. Y3 i" q' c, J
DEBUFF - дебафф (оказывает негативное воздействие)
8 ~7 I( ]; z: w' |. u u1 z2 \6 w! k6 R/ B4 b
3. operatetype - сей тег служит на определения типа скилла (активный либо пассивный)& O: t) m2 J. n4 |' C' T
OP_ACTIVE - активный скилл, может являться использован игроком0 r7 a- G+ P) u: |
OP_PASSIVE - пассивный скилл, скилл из таким operateType никак не может пребывать использован (действует всегда)
( n" Q+ z! v9 h f9 eЭто были обязательные переменные, используемые на скилах. в настоящее время перейдем для остальным:. f6 G7 r* s0 l
-power - значение скилла
- u/ F( W; i I I3 q-hitTime - скорость. чтобы баффа это быстрота чтения заклинания, с целью физ. скилла - прыть атаки
( m3 a9 u$ H" f$ D, i-reuseDelay - откат скилла
# }+ y- [/ c: F1 O- o-hpconsume , mpconsume - потребление МР, НР
0 L( L/ }6 ~( t, s/ T-castRange - это дальность использования того иначе иного скилла (дистанция)
1 V4 \% B& R/ Q3 Z" B' `. H-isMagic, isDebuff, isBuff - это наводящие теги, могут владеть разум "true" также "false". для примеру, isBuff = true (это следовательно сколько скилл является баффом). U: R5 X, Y1 c$ I# A1 \/ b/ F9 t9 ~
-effectRange - радиус действия (для массовых скиллов): v8 h% Y3 u# I% v
-agro - который такое агр, равно сколько такое власть агра думаю растолковать отнюдь не нужно.
: R# V1 B3 i H4 Z" w1 DЭто основное сколько вам понадобится. ныне расскажу вам по части значении тега на скиллах.( u' Y+ W& E: B9 g: |1 |8 h) q. X
Тег на скиллах Lineage 2 встречается чрезвычайно часто. Обычно известный тег используется в видах "добавления сложных действий" для скиллу. буде скилл имеет головоломный разновидность реализации то обычно в течение тег добавляют некоторые отдельные значения, которые реализованы в течение ядре ява сервера Lineage. настоящий первенствующий тег к использования здесь - это .
( R+ B7 A0 R' z# ~5 g$ k$ x7 EПриведем первообраз использования тега равным образом тега :6 y% a" m: h# B/ {, i/ _- b
2 d3 D- n2 T- T0 l( @! c1 r, X0 U6 R9 V5 l5 J# }1 @7 O: t
& [3 N1 a" [( Y( ZЧто сие значит:& n- M4 d1 z2 }* E5 c
9 K. P- i r% R' p; D
name - Это характер эффекта8 H; B" U j$ o
val - важность эффекта. в интересах дебаффов - надежда прохождения, на боевых скилов - сила.
+ L/ ^% b3 _; v$ g, L) |1 k0 i* j& itime - век действия эффекта6 X/ p+ f0 o9 ^ t' I5 ?
StackOrder также stackType - это значения уже описаные на данном скиле. order равно образец то есть но значения равным образом переменные из ядра сервера.4 A- H6 W7 r# B
8 q" v# M6 r- d, ?4 Z4 b
Думаю со скиллами я разобрались, нынче перейдем для зонам.
1 Y( u% H; M8 j5 r6 X
# B, }' ?! P/ Y( Q8 GЧасть 4. чтобы начала описания зон используется тег .
" Q) k7 s% C3 Q1 S6 s8 o) m- q- Z5 W5 V' K1 R
0 W5 T0 ?0 R/ m/ H0 O9 k<!--Комментарий-->5 O! l d' S3 i* n4 n2 A
/ p1 r: R$ O2 d M! C
Пройдемся за значениям:
- N! }! E5 N; J3 H! t# _8 C' g2 F# X
id - идентификатор зоны.
' ~- B3 k/ K/ E0 i; \type - образец зоны (town, arena, jailzone). Например:5 w( R6 v7 J) v8 z. \1 T
Town - мирная зона (город)& |. T- W* P8 t1 P" ?
Arena - боевая зона (PVP)
$ ~1 W6 \. Z8 C) N, S# ` ~JailZone - зона. простой зона (извините после аллегорию ). за другому - тюрьма. в течение ней запрещены беседа да телепорт.2 d# C# |3 I- I1 }
shape - это платье разве подобие зоны. Может водиться двух типов :
w+ P: I' g% W( |1 v-nPoly) e1 \9 [, l; X" B7 q& x; H
-Cupoid.
$ s4 k3 A0 x2 `+ Z8 yminZ - это минимально допустимая координата гора (z) на данной зоне .
# Z$ j( i( s" f1 s6 t/ ]: GmaxZ - это максимально допустимая координата гора (z) на зоне./ W) y& r. ^( I) Y
minZ также maxZ используются в угоду кому избежания прохождения сквозь текстуры, провалов перед них равным образом т.д.' `3 k1 F; c' R1 R( C
|