Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Познавательная статья относительно применения XML в Lineage 2 серверах. Изменение статов, скиллов, вещей, зон
+ {! h7 L* Y2 W7 T* r+ h* J/ [+ d+ k# i+ o6 Y
Часть 1. Введение
! {& B6 \) E5 c- N! O" V+ |% u- z; i ]4 l: x$ t
Начну от того, который но такое XML? Это текстовый формат, предназначенный в пользу кого хранения структурированных данных, ради обмена информацией промеж программами, же и с целью создания для его основе более специализированных языков разметки (например, XHTML), кой-когда называемых словарями.
2 a. b2 M% W! ?1 V( `! G( I+ zПервая черта XML-документа называется объявлением XML — это необязательная строка, указывающая версию стандарта XML (обычно это 1.0), да здесь может присутствовать указана кодировка символов да внешние зависимости.$ I( T: Z+ O# Y& o
! q3 Y- V2 t: ]0 f( W, G: s# S2 wСпецификация требует, с целью процессоры XML непременно поддерживали Юникод-кодировки UTF-8 да UTF-16. Признаются допустимыми, поддерживаются равно широко используются также другие кодировки.$ A3 i: r" G) |2 o1 D
Так но на XML кушать мочь добавления комментария. объяснение может скрываться размещен на любом месте дерева. XML комментарии размещаются внутри туман тегов <!-- равным образом -->. чета знака дефис (--) никак не могут оставаться применены ни в течение который части внутри комментария. Вот прототип комментария:7 V3 W8 w2 }0 e& u$ n$ w& e
& |. v/ Q' C4 H" s
<!-- Текст -->
% u+ x0 p! x2 x( B- u. I, _; D( Z: R
Но я отнюдь не будем углу{цензура}ться в течение весь особенности XML, нас интересует всего на все часть, которая касается Lineage 2 XML в течение сервере Lineage применяется в угоду кому описания статов оружия, брони, скилов да т.д. в интересах оружия это предположим параметры физ. да маг. атаки, ради брони - защиты, в угоду кому скилов - медленность действия, сила, действие равно т.д. только предположим в течение файле "servername.xml" хранятся имена серверов до умолчанию. Эти имена могут содержаться свободно изменены. а кроме изменений в серверной части необходимы да изменения со стороны клиента (со стороны клиента нуждаться изменить файл "servername-e.dat". Изменяться *.dat файлы клиента могут от через специальных программ - L2Dat_EncDec да L2 FileEdit. в течение следующей части мы научу вас переменять статы вещей.8 \9 g& w. u- Z! A1 }" b! R
6 x; E4 b0 I# C- \Часть 2.Изменение статов вещей.
2 O; d4 i* |; h2 ? T
" ?+ s$ B, P6 t* e) B8 {& iВозьмем итем Shirt. Это неприметная НГ шмотка. в ее примере аз поясню что, где также когда. Вот кусок XML кода& v$ t) x2 |& s# |5 t
5 z0 a( X5 p- e+ j
Для измения ее статов тогда нам нужна лишь одна строчка:+ o) B0 m# h$ k9 l7 E; U
$ _9 Y7 R% M) S, d, \
Что это безвыездно значит:: U& w+ z4 s- S/ E6 _
: q7 }2 o0 E, T6 K$ R4 O' EТег означает приращение равным образом является переменной. в его месте могут да а быть, например, , , , . да так. который но означают эти значения?
) f+ i6 a0 k0 n7 \1 N+ \8 `+ p1. <add /> - приплата статов. То кушать ежели вы оденете вещь, ваши статы увеличатся. важность order довольно 0x10.1 l: V( x. \8 @% Q
0 z. A P7 _ w7 H! x9 Q, u; a1 S<add val='100' order="0x10" stat='pDef'/>
( L; D: m% Y5 J) e6 B/ M+ U$ [& o4 v# B0 c& P* [8 \- |' ]) w; E
Данный код следовательно который присутствие одевании багаж вам прибавится 100 единиц стата (в данном случае P. Def).
~% Y, M4 W; L1 P
* R% ^/ X& Q1 x0 c2.<sub /> - вычитание статов. То поглощать буде вы оденете вещь, ваши статы уменьшатся. order да а - 0x10.
( N& |: h4 i$ f% P
8 p5 U, h3 v L! O; B, lДанный код следовательно который присутствие одевании багаж около вас отнимется 100 единиц стата (в данном случае M. Def).
4 }6 c. Z( l; Q% K, i
7 I, R t1 ]# k2 l9 @3 T
% e0 N( a; {; m' X2 Q: m3. <set /> - назначает вам строгое важность стата. То теснить ежели вы оденете нечто со значением 20, то тот стат, однако кто это смысл влияет довольно равен 20. Order 0x08.
2 Z& H V: Z" G& P& m) _
$ N6 T# h6 i! Q' QДанный код следовательно который быть одевании багаж около вас довольно 100 единиц стата (в данном случае P. Def).
* V8 T7 D0 }- U+ W0 r- _5 ]
; |4 F6 _4 t6 S4. <mul /> - увеличение статов. То лакомиться коль скоро вы оденете вещь, ваши статы умножатся. Order 0x30.* i8 {8 l* b |" j
" f4 g/ A3 k3 [& Q+ z! B) SДанный код вероятно сколько быть одевании багаж разум стата умножится для 100 (в данном случае M. Def).6 Y1 E4 j( L& Z) u" G
" |: m' B, f: Z# ~$ k. i
5. <enchant /> - показывает, в что увеличится стат около заточке вторично в +1. Order 0x0C.3 F* g9 @+ R& L! w- b S3 O2 U3 t
, g5 e2 m! K" z7 C1 \Данный код следовательно который быть заточке багаж опять в 1 ваши статы (в данном случае P. Def) увеличатся для 100., @6 F, d# s! w- Q9 c0 h
Ниже приведена список значений "order":
' M x, v3 P j
& `0 f2 P9 @; }+ x6 I! m8 R0x08 - set
3 z. `6 `, V+ G0x10 - add/sub (оружие, броня, бижутерия) также (STR, CON, DEX, INT, WIT ,MEN): v/ p6 {4 i, r
0x20 - отнюдь не нужно
/ L( ^" c* O. K2 b/ m& d0x30 - mul/div (masteries, buffs, debuffs, SA (специальные возможности оружия), бонусы брони)
! K2 {* r4 u8 y& G- f' V G, Q0x40 - add/sub (masteries, buffs, debuffs, SA (специальные возможности оружия))
6 q1 v% B3 f6 ?5 }/ Z* u: D0x50,0x60 - никак не нужно7 y9 Y) D* S: J8 E. b0 W s5 B. _6 B
0x0C - enchant$ X4 T; o$ k5 l/ A: e
9 |% m+ r% A( C# aЧасть 3. перемена скилов( F5 a7 T1 G* O4 [
7 e' q% d, E( l; z/ w
Самая большая порцион моей статьи Начну со значений, причинность вы должны быть знакомым сколько изменяете.4 [/ F: V/ a& |3 O4 f x7 M
x$ y; S0 l4 P: C
Изменение максимального количества HP - maxHp
/ d+ f* M8 R$ R1 Z! Q6 yИзменение максимального количества CP - maxCp
+ W# O/ ~& ]# O& v9 bИзменение максимального количества MP - maxMp
6 w+ P$ l9 n% s$ U& ^+ D9 ]Регенерация НР - regHp4 t! O7 T' q' g, d; T6 \2 @
Регенерация СР - regCp k$ M5 u- D c; v
Регенерация МР - regMp5 E, e- K# Q( B/ b3 s+ \7 V% D' M5 {
Эффективность хила - gainHp$ a$ H7 `5 i- i6 R2 x# }2 ]
Умение хила - giveHp
, O, q5 G; @2 j! c( `/ z1 s1 x1 @Бонус хила - bonusHp
% M5 L/ ~. C H, J; eФизическая опора - pDef9 ^* Z! X, S" Y& ~
Магическая столп - mDef
6 i2 `0 F" ^! MФизическая набег - pAtk
+ j- a( b; q! v) z! `Магическая набег - mAtk
v. g, V3 J) ]2 _Скорость физической атаки - pAtkSpd
" v& _2 b7 K7 `# C9 LСкорость магической атаки - mAtkSpd
. I( z/ ~: Q! B# T" VСкорость отката - mReuse. \. j1 @( t- T9 T
Защита щитом- sDef% I% T. d+ |$ R6 q5 I+ X! B
Угол защиты щитом - shieldDefAngle
1 E( Z" b9 i. D8 }5 V# f7 PКритический пощечина - cAtk
9 z n0 M# E$ p: o9 @Прибавка для критическому удару - cAtkAdd+ I" X6 z! L ?) F$ ]
Физ. урон в течение пвп (например в пользу кого Duel Might) - pvpPhysDmg
: ~- y! `# ~ e N8 oМаг. урон - pvpMagicalDmg
V! @* K7 c' b: T3 ^Урон скилом - pvpPhysSkillsDmg# \9 _6 N2 K1 c* w( v
Уворот - rEvas
* `& q2 ?& H) h/ \) @9 MУворот через скилов- pSkillEvas
! B9 [7 W$ Y6 [* D+ OШанс блокировки щитом - rShld
7 ]3 d+ f I+ n8 R5 o4 Q+ ^Шанс крита - rCrit. U$ o" m$ D; G& i; }" H) e, O
Шанс Blow - blowRate/ E+ N$ n- x! E, h0 G
Шанс Lethal - lethalRate: A" K; @% r/ j
Маг. крит. надежда - mCritRate (mCrit doesn't work!!)
D% ~% C" Y/ ]) q8 t& B4 nEXP,SP надежда - rExp
7 Z& R W; U" P! X/ CCancel - cancel. \1 @2 [% j/ |8 R! X
Точность - accCombat
1 H3 e% v3 z4 vЗона покрытия физ. атаки - pAtkRange (for fighters)
( J) b: y( F8 V3 v9 c& BЗона покрытия маг. атаки- mAtkRange (for mages)2 a m) N+ J4 {4 y% U3 D- l% p/ R# O
Угол атаки (только с целью воинов) - pAtkAngle
8 I( o1 l# h. m- Q, D) u5 z+ ^3 ^Количество атакуемых - atkCountMax) \/ d: [. A$ K; Y
Откат физ. скилов - atkReuse1 E$ w. X, j! O
Скорость бега - runSpd
. d1 I. S( }7 y2 L3 G5 YСкорость ходьбы - walkSpd3 p/ t- A: {" s$ c% l
STR - STR
1 l0 h) F. i3 _+ KDEX - DEX4 U4 V6 [5 @1 x4 N0 Z
WIT - WIT
5 `1 y9 s# C9 V1 _3 H6 gINT - INT
5 S) f: a9 H3 qMEN - MEN
2 r4 m) h: \$ z+ S2 ?1 q
( l2 S2 }$ ?9 m: ] }" R9 T5 mУязвимости3 j3 D3 F+ o+ y* w8 N: B# n
( c' L3 d- C; V( r- _
Агрессия - aggressionVuln
& g# } @: n z' X0 s# oКровотечение - bleedVuln
1 X$ h$ Z1 u8 ^1 t. W* PЯд - poisonVuln
: y/ w' V! a5 E, XСтан - stunVuln
- a! G) W- ~& t9 L1 lПарализация - paralyzeVuln
& i- q/ F: R8 b; G5 J; tУдерживающие заклинания - rootVuln
% }9 a2 D: l* lСон - sleepVuln% F" e, ^" f2 R2 j2 b
"Перекидывание" таргета -confusionVuln F; N9 |5 ?8 d+ k. @5 p/ _
Движение - movementVuln
/ K" }; f3 U. LОгонь - fireVuln
( y% w( G2 l* x; g# w' v* D5 C6 V: HВетер - windVuln
8 F. v8 c, a/ P |, _% d8 F$ l7 eВода - waterVuln* b1 V. M& s9 z. j
Земля - earthVuln
+ c9 t* s) r6 oСвятые атаки - holyVuln! P0 ~. @! d# n% I0 m/ K
Темные атаки - darkVuln0 Y5 U" H2 ~6 i
Резист для cancel - cancelVuln" v/ S3 k" L9 m) c. m# p* r0 h
Дебаффы - debuffVuln% Q* T- g' h E2 W' m
Резист для криту - critVuln0 S& y4 P- a+ c
& _1 E. B5 ]/ L3 l) ]2 xРезисты простив оружия (тут думаю изображение никак не нужно) C3 _% W! @# S# B. O& f0 H& `
1 X0 ?/ `* a6 q2 i2 s% ^* N9 v) BnoneWpnVuln
: h) F+ U3 a. C5 M5 L. `swordWpnVuln
/ o% K" _) v7 m; C7 ?, qbluntWpnVuln8 a( @: ]3 {# O+ S) N
daggerWpnVuln2 r9 W$ `4 P/ n8 l
bowWpnVuln. d2 |7 |4 Y$ L t
crossbowWpnVuln
6 D& p- G) y9 C2 HpoleWpnVuln
5 U, l4 v9 ^& M& RetcWpnVuln
. V7 Z8 s7 @1 |) ~fistWpnVuln( C, p& s2 S) G. {- }/ y! @$ W
dualWpnVuln! L3 n1 z/ A3 }
dualFistWpnVuln
. }# v) i) A- H0 t* i* Q+ J7 m5 nbigSwordWpnVuln; q/ x E3 i3 ~, G) X5 l6 V* w4 V
! V. H" Z1 s! o. _* p
Отражение" d8 l0 }+ Z! A% d$ i* q
" H: @* T! q7 ?9 G% j4 m# M% ]9 o' YПроцент отражаемого урона - reflectDam (pay attention! not reflectDmg!! reflectDam)) O7 D$ b/ Q* I- N/ N6 ~3 E5 o6 x
Процент рассеиваемого урона - absorbDam
, \% S$ j# U% e) V! lПроцент переносимого урона- transDam
9 X, q: C$ ?5 o' QОтражение маг. скилов - reflectSkillMagic0 F1 I: y! g3 J a, b$ o
Отражение физ. скилов - reflectSkillPhysic4 S$ `/ N1 s T; ?3 r4 e& B
5 d. b0 N4 X! v* d+ V2 w
Другое (для примера):
5 W" I. y# H k* t& T5 j) D9 C& k9 z3 q! E3 V5 T$ C
Атака для гигантов - pAtk-giants
# R/ A& i3 e: eЗащита для ласкать - pDef-undead
) N( y7 Z5 z& r2 k+ gАтака в животных - pAtk-animals- H. j! g: V/ o h' j
Защита для монстрах - pDef-monsters
7 W5 Q( o" O: U! {5 Y- WЛимит инвентаря - inventoryLimit4 s% @% p0 r+ Y O9 X* B: g. P
Лимит ВХ - whLimit( E1 k/ p- o, D8 Q$ [: q
Freight лимит - FreightLimit
4 y# C8 c: Z) ~/ m3 }2 GЛимит продажи. - PrivateSellLimit
% Q0 J5 [* P% ]7 K( lЛимит покупки - PrivateBuyLimit
* |- h6 R {$ }- o1 n! s$ _Лимит гномьего крафта - DwarfRecipeLimit
- r8 Y6 c9 ?2 E* y: S0 t- VЛимит common крафта - CommonRecipeLimit2 y! L! `8 R7 Q/ ]
Потребление МР физ. скилами - PhysicalMpConsumeRate6 C% ?6 D& U8 d0 C! I
Потребление МР маг. скилами - MagicalMpConsumeRate
. s) K# f. a D5 M& EПотребление МР дансами - DanceMpConsumeRate
' u7 C! d ?& J6 bПотребление НР - HpConsumeRate5 i) [2 l2 Y* O( E+ C4 c4 F) @
Потребление МР - MpConsume
9 ^; _6 h/ d5 v$ {* D4 B" H* @' _% OПотребление соулшотов - soulShotCount
" H4 |/ W8 `) u( z# K- FSkill Мastery - skillMastery
1 b. {4 a7 {" B5 D b4 p* z) Y& }Время пребывания около водой - breath$ ~6 v3 N, y% U2 r, z
# c. i( Y! z2 V6 u* L- ]
Вроде все какой угодно скилл начинается почти открывающего тега да заканчивается закрывающим тегом . в течение скилах теснить 3 обязательных тега, лишенный чего которых он отнюдь не довольно заниматься - это target, skilltype также operatetype. Давайте разберемся сколько это такое вообще ! P0 h" ^; w# B" I4 {: { x
. y0 @4 v' L g
1. target - тег, что показывает для кого довольно обещать таргет, сколько следовательно с названия. Принимает следующие значения:4 n5 V8 T+ {- }
$ L. p7 z* z$ V1 F6 C L
TARGET_SELF - обозначает, который скилл довольно использоватся только для его владельца (селф бафф типа Battle Roar иначе говоря War Cry)
8 ?# ~! w( ~$ a$ j4 t( `& o0 ?3 BTARGET_NONE - мишень неопределена
' f. z$ d2 V m8 j( Y8 j) M6 KTARGET_ONE - обозначает, который мишень вашего скилла - тот который в течение таргете.3 V6 d- s" C2 F. J" S8 b. Q x
TARGET_AREA - обозначает, который скилл довольно массовым+ a/ Z1 S5 Y* D- R
TARGET_AGGREMENT - обозначает, сколько целью довольно тот, который вас атакует6 r$ ^$ P3 h: D8 ?$ g7 f
9 F% l! ]0 D, B( @# j/ V9 t2. skilltype - тег, указывающий для вид скилла (бафф, дебафф)
+ {9 X) {. ^6 M: L1 X% TПринимает следующие значения:2 P7 P, F3 P8 q1 n& M3 ?
BUFF - бафф (оказывает положительное воздействие)$ ~, }) G# W* d2 i, K# k! p
DEBUFF - дебафф (оказывает негативное воздействие)
, q6 h$ g8 y4 Z" i9 _
* z% r* I. F9 p) L3. operatetype - сей тег служит на определения типа скилла (активный либо пассивный): k! m3 X% P( N& o# k5 W
OP_ACTIVE - активный скилл, может являться использован игроком
2 i- g7 u0 t5 |: h& b. F! `OP_PASSIVE - пассивный скилл, скилл из таким operateType никак не может пребывать использован (действует всегда)" B. Y" S2 |" {# f2 }
Это были обязательные переменные, используемые на скилах. в настоящее время перейдем для остальным:" E5 l: U" J; @$ h! k; o
-power - значение скилла3 ^; u5 w' r6 b1 e
-hitTime - скорость. чтобы баффа это быстрота чтения заклинания, с целью физ. скилла - прыть атаки# U4 V) D$ u9 l7 S$ s z
-reuseDelay - откат скилла
8 g N/ k# h% ?2 n/ q* p-hpconsume , mpconsume - потребление МР, НР& l( D p7 V5 m( V1 ~
-castRange - это дальность использования того иначе иного скилла (дистанция)
6 c$ a9 P. l' W4 s- S/ P-isMagic, isDebuff, isBuff - это наводящие теги, могут владеть разум "true" также "false". для примеру, isBuff = true (это следовательно сколько скилл является баффом), o2 a1 E L6 F# L% K" ~/ `0 w; t/ Z# O
-effectRange - радиус действия (для массовых скиллов)
3 G) ~6 k% R' d! I. t+ {-agro - который такое агр, равно сколько такое власть агра думаю растолковать отнюдь не нужно.
' K% `( Y% \8 {+ i5 bЭто основное сколько вам понадобится. ныне расскажу вам по части значении тега на скиллах.5 { T" A$ E+ R
Тег на скиллах Lineage 2 встречается чрезвычайно часто. Обычно известный тег используется в видах "добавления сложных действий" для скиллу. буде скилл имеет головоломный разновидность реализации то обычно в течение тег добавляют некоторые отдельные значения, которые реализованы в течение ядре ява сервера Lineage. настоящий первенствующий тег к использования здесь - это .* q, D9 m# H# F2 D2 z
Приведем первообраз использования тега равным образом тега :: { l( Z% p0 w8 X) D4 r
7 p/ q3 j* |5 d2 y! T
& O" a3 M8 }4 s) Y# N; }7 Q( G
6 ~% I1 k0 t+ G( }/ \) Q5 m) a
Что сие значит:1 m- [' F# z& h
9 r7 x0 J& {; U+ y {" [" [! J0 j% y
name - Это характер эффекта' S" M4 t# Z5 T: m$ z
val - важность эффекта. в интересах дебаффов - надежда прохождения, на боевых скилов - сила.
8 X& Y- ]# C Ltime - век действия эффекта6 G r1 E9 P" R2 |+ A
StackOrder также stackType - это значения уже описаные на данном скиле. order равно образец то есть но значения равным образом переменные из ядра сервера.
& W# l6 p! j+ M) s
5 ^% ?! D p3 r9 i" E' G; M4 Q; QДумаю со скиллами я разобрались, нынче перейдем для зонам.
( N1 Q3 H; T+ p9 V
; \' z' u" \& J1 ]8 WЧасть 4. чтобы начала описания зон используется тег .
& J% H/ b. [6 A; I' ]4 _
, H0 ^/ C3 v. S6 B9 j+ A# \+ q K3 m& T- a/ m1 Z9 P
<!--Комментарий-->
Q' E1 O, n! ~8 G4 ?$ j' Q4 H9 E0 K. A# v9 E
Пройдемся за значениям:
' [9 V4 A' i! q
3 m* R- E3 Z0 f. P6 did - идентификатор зоны.
6 i4 a. z% `$ ^8 _" v. `2 Xtype - образец зоны (town, arena, jailzone). Например:. |6 V5 N9 A4 B3 F- A
Town - мирная зона (город)
7 x6 o& y$ V f3 gArena - боевая зона (PVP)
# x" O- v% z: o. T6 N7 Q7 xJailZone - зона. простой зона (извините после аллегорию ). за другому - тюрьма. в течение ней запрещены беседа да телепорт.: f% t/ P/ `. e0 H* b$ z& z
shape - это платье разве подобие зоны. Может водиться двух типов :2 [8 @, T' z2 b3 x
-nPoly, Y& }7 H' j8 p( u) U- d
-Cupoid.
$ I; x9 N |3 F& Q. [# nminZ - это минимально допустимая координата гора (z) на данной зоне .
# g/ c4 \ r4 w7 L: Z: fmaxZ - это максимально допустимая координата гора (z) на зоне.2 y4 d. i; P6 H F
minZ также maxZ используются в угоду кому избежания прохождения сквозь текстуры, провалов перед них равным образом т.д.9 i; M: }/ `) ?" D0 N
|