Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Познавательная статья относительно применения XML в Lineage 2 серверах. Изменение статов, скиллов, вещей, зон
+ S) q$ h" a' \. m% z1 u$ v
; a- }( g1 G( }/ j# p1 D' Z+ R4 g2 ZЧасть 1. Введение
, U5 d' P3 s# s2 F( B9 c- Y7 x5 v: V$ c2 v4 {
Начну от того, который но такое XML? Это текстовый формат, предназначенный в пользу кого хранения структурированных данных, ради обмена информацией промеж программами, же и с целью создания для его основе более специализированных языков разметки (например, XHTML), кой-когда называемых словарями.
% _) v0 L( r& w6 |Первая черта XML-документа называется объявлением XML — это необязательная строка, указывающая версию стандарта XML (обычно это 1.0), да здесь может присутствовать указана кодировка символов да внешние зависимости.6 M9 G, ]& [: ~* W% O
2 s6 b' M T5 w0 X3 \Спецификация требует, с целью процессоры XML непременно поддерживали Юникод-кодировки UTF-8 да UTF-16. Признаются допустимыми, поддерживаются равно широко используются также другие кодировки.
6 V; a2 i1 f* D5 v# sТак но на XML кушать мочь добавления комментария. объяснение может скрываться размещен на любом месте дерева. XML комментарии размещаются внутри туман тегов <!-- равным образом -->. чета знака дефис (--) никак не могут оставаться применены ни в течение который части внутри комментария. Вот прототип комментария:5 ]8 h" f0 G/ C7 E5 P" t
4 k. c- e8 \ d4 K! Q! V1 \1 m
<!-- Текст -->5 v5 l8 A# F% @; b
: p0 f/ i3 _( Y8 j0 ^
Но я отнюдь не будем углу{цензура}ться в течение весь особенности XML, нас интересует всего на все часть, которая касается Lineage 2 XML в течение сервере Lineage применяется в угоду кому описания статов оружия, брони, скилов да т.д. в интересах оружия это предположим параметры физ. да маг. атаки, ради брони - защиты, в угоду кому скилов - медленность действия, сила, действие равно т.д. только предположим в течение файле "servername.xml" хранятся имена серверов до умолчанию. Эти имена могут содержаться свободно изменены. а кроме изменений в серверной части необходимы да изменения со стороны клиента (со стороны клиента нуждаться изменить файл "servername-e.dat". Изменяться *.dat файлы клиента могут от через специальных программ - L2Dat_EncDec да L2 FileEdit. в течение следующей части мы научу вас переменять статы вещей.
# q1 B9 x* e9 N) f, L- t( ]/ g) M! o+ l) o6 q9 n' t2 \( h2 I
Часть 2.Изменение статов вещей.
) d/ B) k; f% u: H
1 A0 Y) l+ S) o9 JВозьмем итем Shirt. Это неприметная НГ шмотка. в ее примере аз поясню что, где также когда. Вот кусок XML кода
0 H$ K) `. ~# R4 t* T8 i+ b
# ^$ N" {7 h5 TДля измения ее статов тогда нам нужна лишь одна строчка:
& q" h8 b6 @6 z+ V9 [, h0 {
2 {5 Y+ m3 T1 A* zЧто это безвыездно значит:
3 B. l9 e4 e$ u8 G7 {. f% I0 J+ J2 m* M, P0 s
Тег означает приращение равным образом является переменной. в его месте могут да а быть, например, , , , . да так. который но означают эти значения?" Y$ S6 o5 H6 E( s! H5 ^
1. <add /> - приплата статов. То кушать ежели вы оденете вещь, ваши статы увеличатся. важность order довольно 0x10.
6 `+ Z9 J, W9 a
. R* ]; H: j! i. q L<add val='100' order="0x10" stat='pDef'/>' U" ]9 o% L* B& z& }8 \
3 H, e _/ y( K" i2 N8 _# g8 b
Данный код следовательно который присутствие одевании багаж вам прибавится 100 единиц стата (в данном случае P. Def).
7 `- J! z& Y: N/ B
/ T- i5 B2 g# f F: u( A# F: |2 ?2.<sub /> - вычитание статов. То поглощать буде вы оденете вещь, ваши статы уменьшатся. order да а - 0x10." f( f# x7 f- M, ^3 B/ P7 f8 ^1 u
' W% Y' s0 V# o: X7 C5 x
Данный код следовательно который присутствие одевании багаж около вас отнимется 100 единиц стата (в данном случае M. Def).3 _* ?3 e# \7 O
5 D% v( @8 r- x# V. C. ?- ~$ C
F" W8 l4 Y* |8 r# L3. <set /> - назначает вам строгое важность стата. То теснить ежели вы оденете нечто со значением 20, то тот стат, однако кто это смысл влияет довольно равен 20. Order 0x08.& z+ O" ~7 s" g& r
: ?. C1 n& k- v6 |( ?
Данный код следовательно который быть одевании багаж около вас довольно 100 единиц стата (в данном случае P. Def).
$ R' J' h! s$ m* L0 o7 f O7 Y, ^6 J
4. <mul /> - увеличение статов. То лакомиться коль скоро вы оденете вещь, ваши статы умножатся. Order 0x30.8 {' e2 \ h: N! G3 N+ M3 z/ T
& R# v( w$ j# p) F( U0 Z4 x* rДанный код вероятно сколько быть одевании багаж разум стата умножится для 100 (в данном случае M. Def).& F3 t. M& W1 y9 P9 s1 o# e
6 w0 e$ l$ C) @, W
5. <enchant /> - показывает, в что увеличится стат около заточке вторично в +1. Order 0x0C.
1 ]( l3 J0 `, R
; l! T0 t( v% E! rДанный код следовательно который быть заточке багаж опять в 1 ваши статы (в данном случае P. Def) увеличатся для 100.3 C7 z, G1 x# x2 N# w' H4 ~0 r
Ниже приведена список значений "order":
# ?0 i5 N m6 b& E! e% m ?- [* h* b+ J$ W: r
0x08 - set: D ^0 a" J6 [2 p& o" r
0x10 - add/sub (оружие, броня, бижутерия) также (STR, CON, DEX, INT, WIT ,MEN); @4 n+ B8 f" [4 q: y4 G7 t
0x20 - отнюдь не нужно& ^& m) z) H) y" N' B. ^
0x30 - mul/div (masteries, buffs, debuffs, SA (специальные возможности оружия), бонусы брони)
* ]# k8 c5 P: A# j) X0x40 - add/sub (masteries, buffs, debuffs, SA (специальные возможности оружия))! r( S2 Q7 z% h) e/ S b1 M
0x50,0x60 - никак не нужно7 P6 G3 C1 N6 }; Q5 v# I6 z
0x0C - enchant/ A0 e. G/ b5 H! ~ I7 c
8 D* E; Q4 }: B, Y9 O/ u! u: x, w- dЧасть 3. перемена скилов
' {" ?! X9 M8 d) t: x$ Q: l) d$ X+ R4 D3 ~
Самая большая порцион моей статьи Начну со значений, причинность вы должны быть знакомым сколько изменяете.: L6 Z, i- J2 |# \; ~
5 K" Q6 \' _/ d! m) z- g& X: E1 Y
Изменение максимального количества HP - maxHp# m9 Q1 x9 Y- S: E5 x
Изменение максимального количества CP - maxCp
! _ T' X7 k/ e% M R, TИзменение максимального количества MP - maxMp9 _' E& i3 F) U" s* i( N# q
Регенерация НР - regHp
9 U! _" E. `+ R/ H$ ]Регенерация СР - regCp
0 p2 |* k h) g( h v$ J9 c: FРегенерация МР - regMp
$ g4 a# n/ A5 d2 r5 I* P ~6 ~Эффективность хила - gainHp+ y; @) c; ?& Y: o0 l4 K
Умение хила - giveHp2 d0 ]+ }' T4 d* j' Y) \' B+ E' x
Бонус хила - bonusHp
! k1 r, s! P* N0 w; V" d2 b( [Физическая опора - pDef1 L) ]7 f1 r& h/ h
Магическая столп - mDef
2 _, ^! C- i1 eФизическая набег - pAtk
) t4 u. K9 X: d i! e% e3 sМагическая набег - mAtk0 q: n R4 j/ v6 |' ?
Скорость физической атаки - pAtkSpd5 }, q8 x5 V3 U Z& f
Скорость магической атаки - mAtkSpd u* J9 o! c9 Q* z# M! x
Скорость отката - mReuse2 r) D: x8 z! ^
Защита щитом- sDef
0 [; }/ O$ \' \/ t, ~' tУгол защиты щитом - shieldDefAngle
/ ~" Y4 R( X/ g- K+ E6 ^& F) W! ~, q, pКритический пощечина - cAtk
& c; P, [, L% a' O& @, E8 NПрибавка для критическому удару - cAtkAdd; ~. ~0 a. a# P+ V. X+ ], T! {
Физ. урон в течение пвп (например в пользу кого Duel Might) - pvpPhysDmg* |8 G* s- v- j: P* }
Маг. урон - pvpMagicalDmg
( A2 L+ X: M( ]8 Q; [7 X! o; K1 X$ uУрон скилом - pvpPhysSkillsDmg. U) J9 L0 k p
Уворот - rEvas" L0 T1 [0 q6 U, L
Уворот через скилов- pSkillEvas
' f# Q* f6 m) _% w8 qШанс блокировки щитом - rShld
9 b O Z$ |) r% RШанс крита - rCrit
! y4 b6 @& g' h4 l t$ tШанс Blow - blowRate
; c" W& w3 @3 e) R: oШанс Lethal - lethalRate4 o7 C( s% Z# P
Маг. крит. надежда - mCritRate (mCrit doesn't work!!)8 a( ]4 g( E q
EXP,SP надежда - rExp# c* F3 n8 s/ B ~" q6 z- a$ g
Cancel - cancel
. I6 i# k6 |* T6 hТочность - accCombat
# C0 s# [$ X- b3 e/ b8 x r0 u+ a+ MЗона покрытия физ. атаки - pAtkRange (for fighters)
9 ~2 F* [+ f0 X. ~' K; e* nЗона покрытия маг. атаки- mAtkRange (for mages)
2 B* J2 a- u7 hУгол атаки (только с целью воинов) - pAtkAngle
: |* _( ?8 r! LКоличество атакуемых - atkCountMax7 I0 x$ E, R/ G& s5 C: e
Откат физ. скилов - atkReuse
/ t& C9 S6 v6 f1 GСкорость бега - runSpd7 w* ?% Q; `. E4 P3 V
Скорость ходьбы - walkSpd
& T$ h, G. Y$ e* q/ hSTR - STR( [ s- q- N( L0 q7 z
DEX - DEX$ c; h0 j0 f& Z; Z1 E
WIT - WIT$ H7 W; Q! g. n; i
INT - INT8 h5 D7 _" x1 k* H. s
MEN - MEN# J6 i4 F' `& u
. W! Q' T9 U8 N( H9 B: U
Уязвимости9 _" G1 u% w8 Z% T. Z* t. x$ @$ A
; l6 Y2 c" z# l7 o
Агрессия - aggressionVuln
2 `( ]" B# L: j$ A) ?/ \, iКровотечение - bleedVuln
, `1 s5 H% X0 }. k3 YЯд - poisonVuln% z4 H+ W1 ^/ _: ~& j/ y% I
Стан - stunVuln0 e' b& L7 a9 I% f: g+ |
Парализация - paralyzeVuln
! Z* z* P& b+ [+ X4 fУдерживающие заклинания - rootVuln% y l& S/ D h3 l' ]& p9 e- O
Сон - sleepVuln9 q( |) m3 E4 c% R) k# b3 f ^1 X
"Перекидывание" таргета -confusionVuln
; s# `& x7 `7 k, T4 }( JДвижение - movementVuln+ a ]- A. X* {1 X. T" q1 H
Огонь - fireVuln
! H7 d% t( M! J& N% J$ [* _' _% lВетер - windVuln7 B5 ~# y8 t$ K4 Q, r/ M! Q
Вода - waterVuln" P' A }, k% B
Земля - earthVuln
* v' g- t8 D2 MСвятые атаки - holyVuln% m! q! K# H- O1 ]- |" _
Темные атаки - darkVuln
3 u3 l7 a5 n7 |Резист для cancel - cancelVuln) w2 R; w# s3 i6 V+ v5 H8 V
Дебаффы - debuffVuln
8 S9 w' F1 D% [. p3 S _Резист для криту - critVuln
, l% A9 \% Y3 l& Z; E
: V1 I; _. _$ I2 d" w% b U. EРезисты простив оружия (тут думаю изображение никак не нужно)9 o+ _. y1 t7 _0 U
! u3 s# i. R F$ xnoneWpnVuln Q; Z- a( }! s, r) ?- D# i
swordWpnVuln
: @* B( h4 H9 Q; R/ BbluntWpnVuln2 G% N( p! ~+ r( P
daggerWpnVuln
/ c0 f% Z: }/ L P, m. s* YbowWpnVuln# s L1 @" p8 g5 }* R9 V$ K
crossbowWpnVuln
2 Q' V# x7 m1 TpoleWpnVuln
7 {! l2 |6 P/ {$ NetcWpnVuln+ e# C5 E5 s8 c$ ^) `2 r
fistWpnVuln
9 b' L$ S+ S6 i; B' S# l2 t' n$ }dualWpnVuln" {3 X5 ?! ?1 K4 H
dualFistWpnVuln
* i5 h4 |, S) S/ W/ o! WbigSwordWpnVuln
" ^# m9 [) R! s% @
4 C( t b* W; T; g5 qОтражение9 L8 g( k* W2 G
, Z, j+ r5 M8 G! ] f! s- l# qПроцент отражаемого урона - reflectDam (pay attention! not reflectDmg!! reflectDam)" [& e# q6 D8 W' h0 n
Процент рассеиваемого урона - absorbDam
% w; _+ y9 G2 I' G: h1 DПроцент переносимого урона- transDam, ?2 m8 Z: `" i" b2 N4 w" Y$ Q! u
Отражение маг. скилов - reflectSkillMagic
8 f4 i% I. B& _, T/ f1 }Отражение физ. скилов - reflectSkillPhysic
( n6 i& d9 ~6 X+ G- `! w
, H8 z) Y! y# n/ p* e( K8 FДругое (для примера):
- O) b3 w k0 x& V
+ `6 ]- F% S" y, V) M" U* fАтака для гигантов - pAtk-giants
8 X4 g9 o( x# L( t( EЗащита для ласкать - pDef-undead
) \$ T$ m- _9 k+ `3 R! NАтака в животных - pAtk-animals
6 C$ v; ^7 M- s' T# U- C+ u- nЗащита для монстрах - pDef-monsters4 C$ a( p/ p( J9 c
Лимит инвентаря - inventoryLimit
1 X9 I) N1 j9 H. D. h* O: YЛимит ВХ - whLimit% k5 f& y7 G" K O
Freight лимит - FreightLimit1 C5 p6 X$ [ Q9 q% w6 I) b+ U+ j$ s
Лимит продажи. - PrivateSellLimit1 A" {# T7 l+ ?9 y" ]! e0 e
Лимит покупки - PrivateBuyLimit6 h: U/ e- Z8 W9 H3 }& z% d
Лимит гномьего крафта - DwarfRecipeLimit
7 e1 s1 [. W0 U4 XЛимит common крафта - CommonRecipeLimit; ]/ g) H' Q% X) y( Q7 H% p( g
Потребление МР физ. скилами - PhysicalMpConsumeRate9 r& I" T) J" [1 b' ~& ]" S: ? \
Потребление МР маг. скилами - MagicalMpConsumeRate
6 h+ _$ E6 d. f& G2 D# OПотребление МР дансами - DanceMpConsumeRate
R& q8 l8 q) k, G; B( e* bПотребление НР - HpConsumeRate
* Q1 `. e3 u: Z2 U$ ?Потребление МР - MpConsume! S/ ?+ w/ H) h }) l) k7 y4 y
Потребление соулшотов - soulShotCount" c0 S2 v8 {7 V$ V) J C
Skill Мastery - skillMastery
9 s) O \/ |( o. B+ YВремя пребывания около водой - breath. S+ }( G3 B9 V8 d; q. k* B5 d
" F& i0 L- f" M9 @$ xВроде все какой угодно скилл начинается почти открывающего тега да заканчивается закрывающим тегом . в течение скилах теснить 3 обязательных тега, лишенный чего которых он отнюдь не довольно заниматься - это target, skilltype также operatetype. Давайте разберемся сколько это такое вообще
0 i) o2 n/ }* |0 q
3 y/ q8 e2 u/ A& ^2 r1. target - тег, что показывает для кого довольно обещать таргет, сколько следовательно с названия. Принимает следующие значения:
: \3 P/ y0 ^0 W7 B, i
) v. v5 z6 W7 T ~* U9 b1 c+ C9 H: dTARGET_SELF - обозначает, который скилл довольно использоватся только для его владельца (селф бафф типа Battle Roar иначе говоря War Cry), w4 F2 B+ X7 ]& B w( A! y) @
TARGET_NONE - мишень неопределена
5 _- p/ ~) z/ PTARGET_ONE - обозначает, который мишень вашего скилла - тот который в течение таргете.* h: \+ l& M4 ^, s' x' w. W
TARGET_AREA - обозначает, который скилл довольно массовым: s! s% C6 ]" p" g$ a
TARGET_AGGREMENT - обозначает, сколько целью довольно тот, который вас атакует
5 U9 k6 W# M: I" }1 ]! ?+ b0 A& \0 G" N! _3 y7 f' N
2. skilltype - тег, указывающий для вид скилла (бафф, дебафф)! @. v% ]- w j8 ]$ Y
Принимает следующие значения:' E* n7 a, L1 n
BUFF - бафф (оказывает положительное воздействие)
h) p9 A% Q0 p. Z! |0 M/ W2 K, o) ]DEBUFF - дебафф (оказывает негативное воздействие)
5 L' V s, ]3 Y. e5 M2 }; T- d1 r6 {" \
3. operatetype - сей тег служит на определения типа скилла (активный либо пассивный)
2 }$ T9 H! ?& V2 jOP_ACTIVE - активный скилл, может являться использован игроком
0 t5 m3 W4 i" j \" y R, k* HOP_PASSIVE - пассивный скилл, скилл из таким operateType никак не может пребывать использован (действует всегда)
* @3 ?, j+ k) VЭто были обязательные переменные, используемые на скилах. в настоящее время перейдем для остальным:
8 k' q7 N8 \/ ~. H2 t-power - значение скилла
( g9 K, F1 S% u" l% {-hitTime - скорость. чтобы баффа это быстрота чтения заклинания, с целью физ. скилла - прыть атаки# a& W- ^! C- x; b
-reuseDelay - откат скилла
5 l4 O8 ~- E+ y$ l# O-hpconsume , mpconsume - потребление МР, НР( g$ b; I) x& s s" L7 [
-castRange - это дальность использования того иначе иного скилла (дистанция)0 o4 O3 [* O) ^! q( r2 ^# A
-isMagic, isDebuff, isBuff - это наводящие теги, могут владеть разум "true" также "false". для примеру, isBuff = true (это следовательно сколько скилл является баффом)
& U6 I3 x+ w+ b3 o-effectRange - радиус действия (для массовых скиллов)
( `, u: K' y5 B; A-agro - который такое агр, равно сколько такое власть агра думаю растолковать отнюдь не нужно.
4 M; ^" D7 a: Q |- C" ?Это основное сколько вам понадобится. ныне расскажу вам по части значении тега на скиллах.' ]: j/ l F4 Z
Тег на скиллах Lineage 2 встречается чрезвычайно часто. Обычно известный тег используется в видах "добавления сложных действий" для скиллу. буде скилл имеет головоломный разновидность реализации то обычно в течение тег добавляют некоторые отдельные значения, которые реализованы в течение ядре ява сервера Lineage. настоящий первенствующий тег к использования здесь - это .
5 `2 ]: C( h' R: W4 ]Приведем первообраз использования тега равным образом тега :
8 @/ N$ }/ h# t1 ^% s' R0 L' `
1 R, S+ [, y% t. e# W: W% y$ i7 U7 r
: W1 S* c! Q# t4 D0 w; Z, {1 F
Что сие значит:/ I% f5 s4 O4 b3 c" P, d
3 J/ z0 I$ M) k6 ?5 zname - Это характер эффекта
# L- l% [+ z2 d9 Nval - важность эффекта. в интересах дебаффов - надежда прохождения, на боевых скилов - сила.
5 h- p5 n8 Z) d) ntime - век действия эффекта0 R b5 b% C7 e# K! y( t
StackOrder также stackType - это значения уже описаные на данном скиле. order равно образец то есть но значения равным образом переменные из ядра сервера.
; F' _8 u. i4 r4 d: |
0 D( U. g, W" @" c6 t+ CДумаю со скиллами я разобрались, нынче перейдем для зонам.
3 V! T7 x; a2 p2 L( u" S
8 K s, K; N, Z: rЧасть 4. чтобы начала описания зон используется тег .* u( Q2 \2 ?5 C0 ~# ` @: y
: ^6 J8 q$ v3 [" }4 Y: ]' q6 X
[4 i& R+ f, N" m7 r% B! Z
<!--Комментарий-->
, k0 O4 m1 i" N; f/ s) U$ m3 k h2 z7 W. t6 L1 }
Пройдемся за значениям:7 [4 {" o1 _& k0 N9 E
: e) s0 W: Z. j8 f8 R+ }" d$ bid - идентификатор зоны.
' u: }8 d$ ?/ ?( p7 [3 P+ Rtype - образец зоны (town, arena, jailzone). Например:; [$ j( ?/ ]! o* W2 F; n; c$ m1 u
Town - мирная зона (город)
% F3 _) z: @5 v2 t; y1 M4 U! NArena - боевая зона (PVP)( F' I' n w# e7 i/ [% }
JailZone - зона. простой зона (извините после аллегорию ). за другому - тюрьма. в течение ней запрещены беседа да телепорт.9 f6 Q. Q7 a1 ]
shape - это платье разве подобие зоны. Может водиться двух типов :- Q6 |. Z. D* B1 F/ B# q3 w
-nPoly
) ~- a4 u- a5 o6 n3 a! y* B-Cupoid.
+ D/ P# f+ G: v6 \/ ]minZ - это минимально допустимая координата гора (z) на данной зоне .8 x% r G. h' n% J: N- H, T
maxZ - это максимально допустимая координата гора (z) на зоне.3 b. U7 E O6 p- Z' w
minZ также maxZ используются в угоду кому избежания прохождения сквозь текстуры, провалов перед них равным образом т.д.
+ o+ O" i9 ^& C& A |