Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!
Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться
x
Познавательная статья относительно применения XML в Lineage 2 серверах. Изменение статов, скиллов, вещей, зон
) [6 `2 r5 L$ @9 H9 F$ i; H+ F: o* _, G% {, Y( \
Часть 1. Введение$ i8 P# U E6 X ]! ~
4 K8 ~* [ H4 t1 ^: ?2 RНачну от того, который но такое XML? Это текстовый формат, предназначенный в пользу кого хранения структурированных данных, ради обмена информацией промеж программами, же и с целью создания для его основе более специализированных языков разметки (например, XHTML), кой-когда называемых словарями.
8 j1 y( D8 p. @* ^% U$ I( TПервая черта XML-документа называется объявлением XML — это необязательная строка, указывающая версию стандарта XML (обычно это 1.0), да здесь может присутствовать указана кодировка символов да внешние зависимости.
+ s: x1 G8 r% V8 s# ~) H( q$ K, l$ x( b7 L
Спецификация требует, с целью процессоры XML непременно поддерживали Юникод-кодировки UTF-8 да UTF-16. Признаются допустимыми, поддерживаются равно широко используются также другие кодировки.9 I- W. Z6 b1 S, W& F& T3 X4 O
Так но на XML кушать мочь добавления комментария. объяснение может скрываться размещен на любом месте дерева. XML комментарии размещаются внутри туман тегов <!-- равным образом -->. чета знака дефис (--) никак не могут оставаться применены ни в течение который части внутри комментария. Вот прототип комментария:1 `1 h, Q6 W9 |' T6 _
, Q$ e- V- z9 v7 x<!-- Текст -->
3 ^8 K; e+ M. r2 `$ @7 x0 `/ Z+ ~9 ?5 H' F5 m# ~
Но я отнюдь не будем углу{цензура}ться в течение весь особенности XML, нас интересует всего на все часть, которая касается Lineage 2 XML в течение сервере Lineage применяется в угоду кому описания статов оружия, брони, скилов да т.д. в интересах оружия это предположим параметры физ. да маг. атаки, ради брони - защиты, в угоду кому скилов - медленность действия, сила, действие равно т.д. только предположим в течение файле "servername.xml" хранятся имена серверов до умолчанию. Эти имена могут содержаться свободно изменены. а кроме изменений в серверной части необходимы да изменения со стороны клиента (со стороны клиента нуждаться изменить файл "servername-e.dat". Изменяться *.dat файлы клиента могут от через специальных программ - L2Dat_EncDec да L2 FileEdit. в течение следующей части мы научу вас переменять статы вещей.$ H- X- B( Q+ d! ?$ \" R
( B" ^0 s% S) PЧасть 2.Изменение статов вещей.
+ C9 \( {( J3 J- ~* ~
: G7 m# v1 i+ e2 V5 _8 DВозьмем итем Shirt. Это неприметная НГ шмотка. в ее примере аз поясню что, где также когда. Вот кусок XML кода7 ^' `. k+ G& k7 v: g" s6 ]
+ |; `+ G2 i. M; m7 ?
Для измения ее статов тогда нам нужна лишь одна строчка:/ j; u# c) O+ j3 y' A/ N( M
* o1 L: [' Z% ~) A# d4 o* d3 ?
Что это безвыездно значит:; L$ `) X Q$ u1 z: }8 s6 L! o
( z8 L7 e, }5 @" A W
Тег означает приращение равным образом является переменной. в его месте могут да а быть, например, , , , . да так. который но означают эти значения?+ m @2 C! M* r7 s, O; `
1. <add /> - приплата статов. То кушать ежели вы оденете вещь, ваши статы увеличатся. важность order довольно 0x10.
; M; V( G. C* i5 |3 c9 h" a$ t2 ~* r2 V; r
<add val='100' order="0x10" stat='pDef'/>! h3 Z5 n9 \+ X$ X
3 Y' H1 l/ _: x4 @3 E
Данный код следовательно который присутствие одевании багаж вам прибавится 100 единиц стата (в данном случае P. Def).5 b$ i7 d% h% s# @- Q: l( \" Z
/ I+ U: _$ n+ ^" M H2.<sub /> - вычитание статов. То поглощать буде вы оденете вещь, ваши статы уменьшатся. order да а - 0x10.# w9 v. |, x. J
8 {9 W& }1 o" w
Данный код следовательно который присутствие одевании багаж около вас отнимется 100 единиц стата (в данном случае M. Def).
+ Y. z6 Z3 u: P: z* m7 ~( p/ {+ ?* f, r3 ]
# G/ T2 w9 ~/ `: Q+ d+ l% j
3. <set /> - назначает вам строгое важность стата. То теснить ежели вы оденете нечто со значением 20, то тот стат, однако кто это смысл влияет довольно равен 20. Order 0x08., I; U3 _. g/ i/ c g! [
* |: H/ T" \7 f# x5 }0 A3 K8 AДанный код следовательно который быть одевании багаж около вас довольно 100 единиц стата (в данном случае P. Def)./ K5 ^, _& o# _. o, o. V4 H8 y
E+ d' J) y; {4 W& d
4. <mul /> - увеличение статов. То лакомиться коль скоро вы оденете вещь, ваши статы умножатся. Order 0x30.- f, ?9 O/ P P; M. z8 x
4 J; `, J# z% P& ]1 u/ aДанный код вероятно сколько быть одевании багаж разум стата умножится для 100 (в данном случае M. Def).% D9 ]7 B8 H& o7 M( O
: i, i+ t& M Y# L
5. <enchant /> - показывает, в что увеличится стат около заточке вторично в +1. Order 0x0C.5 E) `. w7 e' g+ E6 A- |
9 x0 h' o8 E* A* _0 I
Данный код следовательно который быть заточке багаж опять в 1 ваши статы (в данном случае P. Def) увеличатся для 100.
2 F6 X& ^! I; b# A" C5 D: h. VНиже приведена список значений "order": }9 N( p2 U! P6 Y% E8 K- N
# a+ W, F; e0 C; {0 V* U
0x08 - set
0 v5 K# {6 E$ K& H$ F0x10 - add/sub (оружие, броня, бижутерия) также (STR, CON, DEX, INT, WIT ,MEN)! p% Q3 d; @5 X) F; D
0x20 - отнюдь не нужно
$ m- F6 v0 ~4 U: `7 [$ D0x30 - mul/div (masteries, buffs, debuffs, SA (специальные возможности оружия), бонусы брони)
" k0 {2 y, C" i; R/ p; F+ ^7 S! b0x40 - add/sub (masteries, buffs, debuffs, SA (специальные возможности оружия))
" A/ y3 x& B& U: S! y0x50,0x60 - никак не нужно) F* I. B5 C6 q4 i
0x0C - enchant* K/ j% I+ P" h x2 F# ^/ x
2 r, C7 h* `: U: w5 v1 k* e8 UЧасть 3. перемена скилов
! }- _6 h6 O/ r# w) t
! @5 G$ \. j% ~! f' IСамая большая порцион моей статьи Начну со значений, причинность вы должны быть знакомым сколько изменяете.
4 }4 p* d* H$ J" l0 B
- _9 x" Q9 R! `9 B+ UИзменение максимального количества HP - maxHp
4 k3 |5 c, z6 wИзменение максимального количества CP - maxCp; p1 g! S1 p4 L* V/ H& r( ?* K
Изменение максимального количества MP - maxMp; N6 S1 p( B* J5 A
Регенерация НР - regHp! x! D" ^, Y4 m4 ~$ ]4 ~
Регенерация СР - regCp
$ w; U! v2 w* c4 `3 z! [' w0 _Регенерация МР - regMp
5 ?0 M0 g/ [! s: D J- z! ~+ rЭффективность хила - gainHp V, U2 x7 ^% p7 Z5 r, _" P8 k
Умение хила - giveHp% j" w1 s9 }) Z8 G: @- t
Бонус хила - bonusHp3 K# j/ o+ z, `4 x x1 `
Физическая опора - pDef
6 l& _* h# ?( l R! AМагическая столп - mDef
- {, j: W4 g! i& _Физическая набег - pAtk
/ c0 Y9 ^" A9 S" v( ?$ PМагическая набег - mAtk
7 a; U( C/ @# ?( fСкорость физической атаки - pAtkSpd% z9 ?1 Z7 ?! l" F4 \; K+ K# p, w" S
Скорость магической атаки - mAtkSpd
0 Y3 ^6 P' u/ ]1 A5 [& xСкорость отката - mReuse' i P6 e; U# q0 {9 \3 O
Защита щитом- sDef3 Q1 Z# |# R2 B. a! a) ]0 m
Угол защиты щитом - shieldDefAngle( W0 H k8 D( @; J
Критический пощечина - cAtk
: [3 S9 A x. TПрибавка для критическому удару - cAtkAdd% Y: i/ C; O' j+ r
Физ. урон в течение пвп (например в пользу кого Duel Might) - pvpPhysDmg% m3 y" z+ \7 K# X& Z
Маг. урон - pvpMagicalDmg
- W) l9 ~% p5 lУрон скилом - pvpPhysSkillsDmg
" O9 C3 i! v& u7 ^Уворот - rEvas' v: S2 V' C; ~3 j/ @4 P0 ^* G
Уворот через скилов- pSkillEvas
. v; H/ z% Z0 k1 d/ z3 yШанс блокировки щитом - rShld
- R$ n d# ~/ TШанс крита - rCrit
( Z, g" s% l0 x& p" ~) FШанс Blow - blowRate
1 G, q% V( g* |Шанс Lethal - lethalRate
/ d) S4 y" H6 R1 g1 m2 `Маг. крит. надежда - mCritRate (mCrit doesn't work!!)
3 f9 M) `" y* z+ y" b- t' YEXP,SP надежда - rExp! D% r6 h8 d' {
Cancel - cancel( I6 I" R6 f- p' n- B' U0 }& `
Точность - accCombat: l+ P; k# `' ]0 I, g' l0 K- ` M
Зона покрытия физ. атаки - pAtkRange (for fighters)
" i( Z7 K0 M- bЗона покрытия маг. атаки- mAtkRange (for mages)
6 l+ H, \: j5 i2 R0 x# G+ EУгол атаки (только с целью воинов) - pAtkAngle
/ f1 |6 y0 Y2 s0 M5 | v" s4 ~Количество атакуемых - atkCountMax3 q* w! `) a' I4 e0 c' R2 }: r7 S
Откат физ. скилов - atkReuse% K' F; O- @2 ]/ y5 L- g6 D
Скорость бега - runSpd/ \7 p7 g/ Q. R
Скорость ходьбы - walkSpd
0 C9 e' ~0 q' F" x: y: qSTR - STR
' X4 n5 Z" q B3 b! pDEX - DEX3 k9 P0 z: A& G) a* @3 n
WIT - WIT
, i% t0 H9 q) M. a; jINT - INT# Q& q7 ]" k4 x) |5 W
MEN - MEN! L) t0 [8 T0 `/ s. E3 x0 u
; N7 Z. [( c( y0 N! @* SУязвимости
* O+ q. h: d% x: p" \8 Y6 s* h7 |
Агрессия - aggressionVuln
3 q( N4 V" s- H8 a% XКровотечение - bleedVuln
- b2 `$ ?4 L7 a+ PЯд - poisonVuln9 Y$ [2 d* ^# w) n9 n( ?1 f
Стан - stunVuln1 m* C5 m3 G) ^( E, ]
Парализация - paralyzeVuln- v# ~( {# _4 K7 e
Удерживающие заклинания - rootVuln
" x. Q, J$ y& l; {% f7 UСон - sleepVuln, ^4 B" d, ^7 a1 [! z7 u
"Перекидывание" таргета -confusionVuln1 a2 c. l2 u- \( m7 Z/ ?1 }
Движение - movementVuln$ M0 x3 i4 l* f
Огонь - fireVuln
( a# d9 d" C% D7 q8 j5 rВетер - windVuln
5 K4 j) }6 M- ?4 p4 b9 |2 Q) ]* { BВода - waterVuln! B p S9 w- u4 h
Земля - earthVuln
+ V, c, C$ J) c) X. SСвятые атаки - holyVuln: a/ B ]2 s9 p3 s+ Q$ W& @
Темные атаки - darkVuln3 V8 T2 n2 {6 l4 V( H$ H
Резист для cancel - cancelVuln5 V/ h. ]1 r, v% `5 f0 d
Дебаффы - debuffVuln
) v9 }) ~3 N8 t0 s4 tРезист для криту - critVuln: e! }5 a1 F' i
0 ]7 n( M5 z* gРезисты простив оружия (тут думаю изображение никак не нужно)
% r$ n# x# t r. q, t9 l3 R U4 a2 a
, S0 T5 _# U# U# @6 LnoneWpnVuln' K+ z8 n6 u& c! O( `1 F3 d, D- Q
swordWpnVuln
$ v8 _- T9 G |9 u- H! g# t- m) i/ b3 QbluntWpnVuln4 ^; _" d4 v! v$ R
daggerWpnVuln) S1 \# s7 w1 C' h) R& V U
bowWpnVuln
, `. D* E: @" t8 ~crossbowWpnVuln0 [, {" Y/ p4 o! O$ e+ r0 v
poleWpnVuln/ R6 }1 R+ ]2 X. \; b2 s; W3 e% S
etcWpnVuln
% `/ _ |% b& M" v# mfistWpnVuln- e7 I, ]4 A ?6 F+ q
dualWpnVuln
/ X# _5 w7 B* I! }dualFistWpnVuln
2 `) T: h8 d8 [/ I8 x7 N/ KbigSwordWpnVuln
- C; r$ M9 E7 m$ u9 K" m. L6 a7 M3 t) }+ R. ~- C" x7 K) Y
Отражение I- q, o: G3 V6 Z; o
# N4 I( g6 I# Q% {0 P
Процент отражаемого урона - reflectDam (pay attention! not reflectDmg!! reflectDam)
8 a2 B+ ]* c% f0 J- y. pПроцент рассеиваемого урона - absorbDam7 m2 Z0 e4 A2 z$ K* o
Процент переносимого урона- transDam. u% S. @# T0 m( r& }2 H2 `/ o
Отражение маг. скилов - reflectSkillMagic# I4 b+ K4 a) ^' v& m# \/ G8 K0 @) `
Отражение физ. скилов - reflectSkillPhysic
3 Z+ z( Q9 G* W1 G3 R3 k/ G4 D' o+ ^0 `# `8 n% o' N
Другое (для примера):
( W B U" `$ ~* {4 y+ ^
3 M [. e, J1 t" Y: eАтака для гигантов - pAtk-giants
: F/ E0 U6 g: O( q$ ]! S* E1 U/ XЗащита для ласкать - pDef-undead
0 a6 i* _- w, L7 v1 {: N# j% sАтака в животных - pAtk-animals7 J+ h7 f% N8 \7 K
Защита для монстрах - pDef-monsters5 F \5 Y. V5 [4 e! g& H
Лимит инвентаря - inventoryLimit) q3 O2 E8 M& s- r$ D" o8 y \, d% f
Лимит ВХ - whLimit- }% W* j: j: T V: o/ g$ X. Y& T
Freight лимит - FreightLimit( N7 V$ r6 C7 h/ a6 M" S3 I
Лимит продажи. - PrivateSellLimit, b" |4 l) D% f9 e- t
Лимит покупки - PrivateBuyLimit! j. Z; z$ P9 s5 a$ v
Лимит гномьего крафта - DwarfRecipeLimit% c+ t& C- ?/ I1 X! _& q$ Q- s5 e
Лимит common крафта - CommonRecipeLimit
% ^! H' s7 d3 l: Y1 OПотребление МР физ. скилами - PhysicalMpConsumeRate/ S1 a1 w5 U+ R
Потребление МР маг. скилами - MagicalMpConsumeRate
+ p( s4 j2 G, U+ HПотребление МР дансами - DanceMpConsumeRate+ L' L6 l+ S9 l
Потребление НР - HpConsumeRate
9 C7 d* [' ^. W4 I. K1 e: lПотребление МР - MpConsume
3 v* d0 o( q6 ]+ N& s6 j3 y$ BПотребление соулшотов - soulShotCount8 q( w% Z1 Y9 n
Skill Мastery - skillMastery
- n$ s: t$ {; E' ^' vВремя пребывания около водой - breath7 o" V6 C& e8 I* d) x
~. c2 i2 E" s' m) I( HВроде все какой угодно скилл начинается почти открывающего тега да заканчивается закрывающим тегом . в течение скилах теснить 3 обязательных тега, лишенный чего которых он отнюдь не довольно заниматься - это target, skilltype также operatetype. Давайте разберемся сколько это такое вообще _( `5 E. e( [
( N L3 u3 e# p6 y, U) i' Y* L5 R1. target - тег, что показывает для кого довольно обещать таргет, сколько следовательно с названия. Принимает следующие значения:
9 f8 K" @! Q; _; `* B4 _* y) R( ?/ N* @0 d* ^, S0 S+ w
TARGET_SELF - обозначает, который скилл довольно использоватся только для его владельца (селф бафф типа Battle Roar иначе говоря War Cry)2 e/ n. y! n2 q
TARGET_NONE - мишень неопределена
" o" B6 f" t3 T7 x# GTARGET_ONE - обозначает, который мишень вашего скилла - тот который в течение таргете.
5 F3 b* c+ }% B- ZTARGET_AREA - обозначает, который скилл довольно массовым4 U2 A/ [. e3 T
TARGET_AGGREMENT - обозначает, сколько целью довольно тот, который вас атакует% g" G2 {9 H0 k- y: a
) M! o7 b7 M% d2 z5 N: s$ v: N$ F* T
2. skilltype - тег, указывающий для вид скилла (бафф, дебафф)$ K/ @. m0 S# Y
Принимает следующие значения:
* I; h8 c9 v( l2 K# oBUFF - бафф (оказывает положительное воздействие)
+ s3 m4 _2 R WDEBUFF - дебафф (оказывает негативное воздействие); C8 O$ h$ N: b* v L- @
$ E% s0 }1 _9 ^4 I& D) O0 M" m/ V8 T6 U3. operatetype - сей тег служит на определения типа скилла (активный либо пассивный): O$ ^2 y6 p2 M3 U0 W1 W
OP_ACTIVE - активный скилл, может являться использован игроком4 H0 O# I& e% H$ n3 S
OP_PASSIVE - пассивный скилл, скилл из таким operateType никак не может пребывать использован (действует всегда) O. {- R: Z: i7 L" h
Это были обязательные переменные, используемые на скилах. в настоящее время перейдем для остальным:; ?0 R* {( I4 {4 P, R
-power - значение скилла0 y/ B( L. c; t1 {) ~
-hitTime - скорость. чтобы баффа это быстрота чтения заклинания, с целью физ. скилла - прыть атаки
# U" ?" t& h% b2 ^7 o-reuseDelay - откат скилла
' R3 @9 L1 k8 N; E# H-hpconsume , mpconsume - потребление МР, НР
- X8 m( b B/ S: \9 _-castRange - это дальность использования того иначе иного скилла (дистанция): o2 n, f9 s! }8 N, F- R; A
-isMagic, isDebuff, isBuff - это наводящие теги, могут владеть разум "true" также "false". для примеру, isBuff = true (это следовательно сколько скилл является баффом)' e, i! I; E! ^' M
-effectRange - радиус действия (для массовых скиллов)
# L" y; A9 Q! m/ \) x8 c-agro - который такое агр, равно сколько такое власть агра думаю растолковать отнюдь не нужно.
$ k; s7 A% O: n @ ]Это основное сколько вам понадобится. ныне расскажу вам по части значении тега на скиллах.) W2 o- e4 j8 x4 }3 O) k7 q
Тег на скиллах Lineage 2 встречается чрезвычайно часто. Обычно известный тег используется в видах "добавления сложных действий" для скиллу. буде скилл имеет головоломный разновидность реализации то обычно в течение тег добавляют некоторые отдельные значения, которые реализованы в течение ядре ява сервера Lineage. настоящий первенствующий тег к использования здесь - это ." {; k1 `2 J/ K0 _5 ]8 \' b
Приведем первообраз использования тега равным образом тега :& ~! J" f9 H% Y! U k5 K, a8 U
1 O- P: M' N- K$ g: F0 d3 d) X6 i! @# E- j2 r. v
* c' p3 k! x, C5 d7 t) x: g
Что сие значит:
* x6 J% ^4 R( p# Y6 V- ?# T3 T% i
0 q3 U6 z5 ]( }/ fname - Это характер эффекта
8 w% Y) H8 g# W. S' j1 cval - важность эффекта. в интересах дебаффов - надежда прохождения, на боевых скилов - сила.
3 d0 M6 R0 k9 {3 X. ]/ stime - век действия эффекта
( B Y& F/ l) DStackOrder также stackType - это значения уже описаные на данном скиле. order равно образец то есть но значения равным образом переменные из ядра сервера.
2 i; f) l# `; O; h; s8 x8 P3 j: s! G l: q0 d) J; f$ B' Q
Думаю со скиллами я разобрались, нынче перейдем для зонам.
- J- g s' H3 K. @2 W3 [% f6 l7 M7 Q
Часть 4. чтобы начала описания зон используется тег .. O* y/ P9 e1 ^* {
$ n0 ?* |7 a- j) Z" o# x( J- u, d: C5 g, D3 }
<!--Комментарий-->" k- W) c, h$ A# p' F
7 h+ `8 i$ h" v, k) ~9 _Пройдемся за значениям:
' [ P$ \" u4 h
. h0 O0 N9 B- k3 P( q& l" |id - идентификатор зоны.
3 \$ q# }5 {5 J- w' k" n/ R Otype - образец зоны (town, arena, jailzone). Например:% b4 W" R. t! G' P: X
Town - мирная зона (город)( P% X* u3 O; F6 L
Arena - боевая зона (PVP)
3 I1 k/ @- L3 U* T- DJailZone - зона. простой зона (извините после аллегорию ). за другому - тюрьма. в течение ней запрещены беседа да телепорт.
* J2 `4 h. f ^$ g5 _: dshape - это платье разве подобие зоны. Может водиться двух типов :5 m' ]6 I3 a2 {( D
-nPoly9 c; V' _2 b% j8 V
-Cupoid.1 `7 Q% L6 k2 K: r
minZ - это минимально допустимая координата гора (z) на данной зоне .
3 R' ^4 C# Q0 F5 C% [. bmaxZ - это максимально допустимая координата гора (z) на зоне.
7 j/ H9 E0 f1 B1 N, R- N5 AminZ также maxZ используются в угоду кому избежания прохождения сквозь текстуры, провалов перед них равным образом т.д.
! [& z0 o: a, z, \ |