artace.ru - творческий сектор

Название: xml правка скилов/статов [Версия для печати]

Автор: admin    Время: 2024-8-20 14:00
Название: xml правка скилов/статов
Познавательная статья относительно применения XML в Lineage 2 серверах. Изменение статов, скиллов, вещей, зон
4 P0 [; n- f8 e8 y" X4 B) W7 j2 p- K: O7 V* i; J; m! R
Часть 1. Введение  _& l/ J1 h8 {! Y- v* l
! v1 u, M4 Y' S# p9 M
Начну от того, который но такое XML? Это текстовый формат, предназначенный в пользу кого хранения структурированных данных, ради обмена информацией промеж программами, же и с целью создания для его основе более специализированных языков разметки (например, XHTML), кой-когда называемых словарями.
3 b0 R& W1 f- c1 X5 rПервая черта XML-документа называется объявлением XML — это необязательная строка, указывающая версию стандарта XML (обычно это 1.0), да здесь может присутствовать указана кодировка символов да внешние зависимости./ d9 H; M1 @2 i# X& `9 j5 D6 T

* @( {' v6 q: R7 aСпецификация требует, с целью процессоры XML непременно поддерживали Юникод-кодировки UTF-8 да UTF-16. Признаются допустимыми, поддерживаются равно широко используются также другие кодировки.# @9 Z) U) l  q
Так но на XML кушать мочь добавления комментария. объяснение может скрываться размещен на любом месте дерева. XML комментарии размещаются внутри туман тегов <!-- равным образом -->. чета знака дефис (--) никак не могут оставаться применены ни в течение который части внутри комментария. Вот прототип комментария:
  g* L  S0 h- y* g; `: w8 t( Y& s, y; K  K4 W
<!-- Текст -->; o% a! z" H# p$ j0 _4 _0 F( H

+ t) Y1 k: `+ YНо я отнюдь не будем углу{цензура}ться в течение весь особенности XML, нас интересует всего на все часть, которая касается Lineage 2 XML в течение сервере Lineage применяется в угоду кому описания статов оружия, брони, скилов да т.д. в интересах оружия это предположим параметры физ. да маг. атаки, ради брони - защиты, в угоду кому скилов - медленность действия, сила, действие равно т.д. только предположим в течение файле "servername.xml" хранятся имена серверов до умолчанию. Эти имена могут содержаться свободно изменены. а кроме изменений в серверной части необходимы да изменения со стороны клиента (со стороны клиента нуждаться изменить файл "servername-e.dat". Изменяться *.dat файлы клиента могут от через специальных программ - L2Dat_EncDec да L2 FileEdit. в течение следующей части мы научу вас переменять статы вещей.- h2 n- @; w4 |% F( C+ c

! X7 i8 A, O0 w/ E3 P% c# `& s! ^3 bЧасть 2.Изменение статов вещей.
7 x; J2 s0 M' u& S( S+ i2 d8 K5 D8 V( ~8 @, H7 n  B, {
Возьмем итем Shirt. Это неприметная НГ шмотка. в ее примере аз поясню что, где также когда. Вот кусок XML кода' h4 Y. _$ V8 @! T' k

: t6 |( A& Z. G7 J- b( W6 mДля измения ее статов тогда нам нужна лишь одна строчка:
- g5 w2 s# g) z  ~4 |$ R2 E/ @- p# @& M9 ^
Что это безвыездно значит:) U0 B0 d3 w9 i  b

( S$ {5 C7 H! |9 u) y3 ?" MТег означает приращение равным образом является переменной. в его месте могут да а быть, например, , , , . да так. который но означают эти значения?
2 n) P4 o! d  t+ A: E) |1. <add /> - приплата статов. То кушать ежели вы оденете вещь, ваши статы увеличатся. важность order довольно 0x10.+ s6 w- C# Q% a. b& c! H$ T! J

* a' v& j0 Z8 c1 E$ M<add val='100' order="0x10" stat='pDef'/>
1 L- E6 p2 M+ o; s) T2 I
9 k- k* Y/ a7 U( j0 k, p& j) eДанный код следовательно который присутствие одевании багаж вам прибавится 100 единиц стата (в данном случае P. Def)., E: i% g5 n4 e4 ?- O) K( {
" a, s* J, O/ B% A) r
2.<sub /> - вычитание статов. То поглощать буде вы оденете вещь, ваши статы уменьшатся. order да а - 0x10.4 l/ O* z' P# ~2 k) {$ B2 [. k
( e2 w+ _6 f' i1 Y8 Q
Данный код следовательно который присутствие одевании багаж около вас отнимется 100 единиц стата (в данном случае M. Def).
( ?; z" |& T7 r) R1 u
- V$ ]# N3 d, Y. W$ e0 o5 T
  d* c9 z% U+ m% d8 Z; Z3. <set /> - назначает вам строгое важность стата. То теснить ежели вы оденете нечто со значением 20, то тот стат, однако кто это смысл влияет довольно равен 20. Order 0x08.4 s+ k' p. J2 S  R

. Q' w1 z+ Y9 B% q* Z% QДанный код следовательно который быть одевании багаж около вас довольно 100 единиц стата (в данном случае P. Def).9 b5 a/ X8 L4 {; Y( [
5 ^& A8 q9 i2 \; r/ k  E7 k+ ^9 ^- u
4. <mul /> - увеличение статов. То лакомиться коль скоро вы оденете вещь, ваши статы умножатся. Order 0x30.2 ~) X6 I# ]: h  m0 T3 G" c5 [6 C

8 s5 T& Y$ A: u7 V: {& e* EДанный код вероятно сколько быть одевании багаж разум стата умножится для 100 (в данном случае M. Def).. K2 C0 u& X1 Y, `
; j2 I6 X/ Z1 C7 D' H
5. <enchant /> - показывает, в что увеличится стат около заточке вторично в +1. Order 0x0C.0 m' p- x& |2 t1 @9 `
. s. P2 y* i, O
Данный код следовательно который быть заточке багаж опять в 1 ваши статы (в данном случае P. Def) увеличатся для 100.
. R1 p1 G0 u2 F& y/ b' ~% |Ниже приведена список значений "order":8 d9 ~- O5 C/ ?; T! @; }' X

# n' O% `7 |4 R" G5 e0x08 - set; U* D, r. D1 ~. o$ @% j2 a; w
0x10 - add/sub (оружие, броня, бижутерия) также (STR, CON, DEX, INT, WIT ,MEN)0 v8 a& R8 N+ N/ ]
0x20 - отнюдь не нужно
& ~$ u# e3 B7 F% m8 @* }, t2 _5 A0x30 - mul/div (masteries, buffs, debuffs, SA (специальные возможности оружия), бонусы брони)
9 u! [8 [: g6 t" M1 _+ D+ i3 C$ M, F0x40 - add/sub (masteries, buffs, debuffs, SA (специальные возможности оружия))
8 n9 A* h2 i( P2 D8 ~0x50,0x60 - никак не нужно
- `; W0 H1 o0 K" `* w0x0C - enchant
! T5 W9 Z6 I. e9 B5 c/ C6 G# C+ a, ]% u' m4 t% G
Часть 3. перемена скилов
+ S" L  g4 Y- Z9 d- ^- h3 W$ j, ?3 a- T
Самая большая порцион моей статьи Начну со значений, причинность вы должны быть знакомым сколько изменяете.% Y$ @3 O3 u' ]/ l8 I
# I. a( `7 P4 U9 c( G7 g% J
Изменение максимального количества HP - maxHp
' @1 E! O* y& z3 NИзменение максимального количества CP - maxCp
, V8 u7 n& C  p. A4 e- ^Изменение максимального количества MP - maxMp
( ]" n- p8 e' ^0 V2 KРегенерация НР - regHp, z/ F2 t( n" k! ~$ E& j. r
Регенерация СР - regCp. j5 U, U# `) {! @: h
Регенерация МР - regMp( r% P! L3 w- W5 g: [% @
Эффективность хила - gainHp9 z5 H2 r6 Z6 X" G9 b. B
Умение хила - giveHp
# Q0 P. p1 @8 vБонус хила - bonusHp
: `& m+ |4 k3 P2 D. lФизическая опора - pDef
4 W3 n! B2 x- S" ~" ^; @- l. iМагическая столп - mDef% Z0 ]0 |  `9 Q
Физическая набег - pAtk
. E+ G2 a7 p  M7 z- a: v& h# ^( RМагическая набег - mAtk4 {  `3 Y! p0 b( ^/ \8 o: m. F+ K# E
Скорость физической атаки - pAtkSpd- [% b8 M: W& ]. I: U
Скорость магической атаки - mAtkSpd. V5 s; K4 P+ @/ L. p5 d
Скорость отката - mReuse
5 m7 F9 c! x4 x4 O. `0 \" B; jЗащита щитом- sDef9 T7 }2 k" S  k: O: \# C. j9 w, f
Угол защиты щитом - shieldDefAngle
  z0 z  }. Z" E2 L" @Критический пощечина - cAtk
4 f$ H* d' w/ Y9 SПрибавка для критическому удару - cAtkAdd
- |0 V0 p( `) _5 o* u) `9 \Физ. урон в течение пвп (например в пользу кого Duel Might) - pvpPhysDmg
$ W4 k4 H- K2 k" s+ c( `Маг. урон - pvpMagicalDmg4 B, S# Y2 r8 }
Урон скилом - pvpPhysSkillsDmg% K- s+ `3 ?( O
Уворот - rEvas& D* K% O4 ]7 G( p; A0 `) e% H, n
Уворот через скилов- pSkillEvas& X( _/ W  n8 ^5 S9 k  i
Шанс блокировки щитом - rShld' a# t6 z! T( j; J7 Y; V3 j
Шанс крита - rCrit6 n: F: x( R3 U  M  z( S
Шанс Blow - blowRate' s( F2 e8 Q* {) l
Шанс Lethal - lethalRate
: X- f# X( q/ qМаг. крит. надежда - mCritRate (mCrit doesn't work!!), Z. ~# J2 J! h8 d
EXP,SP надежда - rExp7 Z% l6 A: R' F% p0 ~
Cancel - cancel
7 I& l! c7 m, Z8 Y$ C$ }5 yТочность - accCombat
) @& ^. C' B" l& S8 k) X) N/ XЗона покрытия физ. атаки - pAtkRange (for fighters), [: a: R& k" N. s4 _6 \
Зона покрытия маг. атаки- mAtkRange (for mages)6 V6 ^- T, c. N: F" c$ z2 Z
Угол атаки (только с целью воинов) - pAtkAngle2 J% D1 ^8 a  `7 {0 j' A! M6 ^
Количество атакуемых - atkCountMax
% A9 }- V6 F7 L: ?6 I; PОткат физ. скилов - atkReuse
0 }9 q: ?3 B9 U1 N# tСкорость бега - runSpd/ H# J8 o. m5 n3 e- r$ |
Скорость ходьбы - walkSpd- S/ b  D, t# L
STR - STR' ]" [4 v4 Y' ~5 m; ^
DEX - DEX" n# h) _9 j+ d
WIT - WIT
7 h- S9 p* S; [+ MINT - INT* @$ I# Q) m! U1 s7 M# q/ X+ T' }
MEN - MEN
- z5 _* W. F; i% f/ I! F1 q8 K2 e+ u! W  K6 m( h2 H  T4 m2 u( @, i. {
Уязвимости
& z" |$ s; L2 |; Z% m. R8 _1 t$ i2 f% a4 Y7 O- l4 {
Агрессия - aggressionVuln
! V& ~! D6 q4 o" P( N" p& y3 TКровотечение - bleedVuln  ]( z# g* \$ x$ C& s
Яд - poisonVuln
2 `( \$ Z3 L/ [$ JСтан - stunVuln
/ i% U* |2 x% _1 ?& b5 ^/ bПарализация - paralyzeVuln" r, M. T4 b. ]
Удерживающие заклинания - rootVuln
7 Y$ v2 b; q& J5 b; a  GСон - sleepVuln
4 B2 r4 h, r4 j% q: g9 Z2 {"Перекидывание" таргета -confusionVuln& Y; w& T* ~, l0 u+ E! {) B' r
Движение - movementVuln
2 e$ `. y. w; Y, ~9 @6 U- l( VОгонь - fireVuln! b; r7 _1 `1 y, b1 Z
Ветер - windVuln
8 w0 ^, }0 S$ z& d; _% J9 nВода - waterVuln2 n! S  u3 \8 n) @
Земля - earthVuln: @  _9 \; H9 u" F
Святые атаки - holyVuln
" w; C( U8 a/ I6 yТемные атаки - darkVuln. D  J* w2 |; g6 N; j  V/ |- [
Резист для cancel - cancelVuln
1 H1 ]* D/ K( P/ K& f8 k% LДебаффы - debuffVuln
& d7 y6 Y: e1 W  F3 RРезист для криту - critVuln
5 }' g/ u  d3 i! J- K0 Z1 T9 W3 R: |( K* F3 b
Резисты простив оружия (тут думаю изображение никак не нужно)
, m. l- E2 k" c9 j6 T
) Y# H% n8 l7 Q  @% N$ k* y6 I& }noneWpnVuln+ h" ]6 [; Q7 j6 T
swordWpnVuln
* l1 S  l% g) N0 M- vbluntWpnVuln1 |% x1 m6 S: O4 X, D7 M; ^& R
daggerWpnVuln
5 K1 I- o+ z, V) W  Q" M6 E. RbowWpnVuln
, @) s1 |% W+ J6 N9 y5 d5 n4 VcrossbowWpnVuln
! {- ?  L$ U, U! O+ t& T- KpoleWpnVuln
$ S! w4 j* I3 M3 L1 C) r, wetcWpnVuln& H) b- m5 q. v8 B. }
fistWpnVuln2 t; z" N0 L9 D
dualWpnVuln" v8 W2 q; |9 }7 B" U5 t0 _- a9 S6 M
dualFistWpnVuln: q: i) @8 v0 Y9 E: u! `
bigSwordWpnVuln
3 P% W  M. o. I, U) I; V, h3 m) G% A4 n/ q5 e
Отражение
: h) B. l" q' m: {9 }( \3 Y3 L0 U# w( d6 F( c6 ^+ T9 [
Процент отражаемого урона - reflectDam (pay attention! not reflectDmg!! reflectDam)
$ n; V, e2 b; Z2 NПроцент рассеиваемого урона - absorbDam" G* D$ l- L: v$ D, h
Процент переносимого урона- transDam9 d/ B3 ~/ S1 X2 A1 f  J
Отражение маг. скилов - reflectSkillMagic
  s. [8 H0 f$ f" q# D) a! t! y7 r. }Отражение физ. скилов - reflectSkillPhysic
$ m" m. \5 C5 s/ Q
3 F; W3 D  u: B$ V, e' yДругое (для примера):9 _- f, Y; W  U) i$ J0 |
8 i( j7 M2 N3 B; d+ X4 z  s$ b
Атака для гигантов - pAtk-giants; P- B; g5 A8 s6 v3 S
Защита для ласкать - pDef-undead
1 V! ?; L* i" I( M/ v% YАтака в животных - pAtk-animals
0 X" N. o% u5 O) `3 s8 j4 h8 j( YЗащита для монстрах - pDef-monsters
: v  H9 @% d1 J6 jЛимит инвентаря - inventoryLimit
" ]/ o5 ]; s: q5 p9 t' b* M8 H1 _Лимит ВХ - whLimit6 P8 s& W; w* }+ Q4 J8 w; ], y
Freight лимит - FreightLimit+ ^/ H  f1 r0 ^: ^$ w! I
Лимит продажи. - PrivateSellLimit; f2 i/ M6 ?, @' Q4 j2 K; S
Лимит покупки - PrivateBuyLimit# A  D' v/ I% b. c- R
Лимит гномьего крафта - DwarfRecipeLimit1 j2 f4 c! l% m. n( _
Лимит common крафта - CommonRecipeLimit, D  |1 V( e5 ?7 P4 D2 N! [
Потребление МР физ. скилами - PhysicalMpConsumeRate
) s5 b; W5 w  j% O( Y7 o5 K- vПотребление МР маг. скилами - MagicalMpConsumeRate/ o" M7 N, J4 d; r: i& o
Потребление МР дансами - DanceMpConsumeRate
1 W( w( m1 H$ m6 T3 b6 ZПотребление НР - HpConsumeRate8 k4 `- r; r4 |7 \2 {) d5 \
Потребление МР - MpConsume
5 U. D" I# f! O( r# @1 ZПотребление соулшотов - soulShotCount
/ `) W  S" }% Z5 I0 XSkill Мastery - skillMastery
$ ~! i) \# l& D- hВремя пребывания около водой - breath& r, L; }4 [3 p" C- O3 p
* i' b2 L' n1 C, N) \% l
Вроде все какой угодно скилл начинается почти открывающего тега да заканчивается закрывающим тегом . в течение скилах теснить 3 обязательных тега, лишенный чего которых он отнюдь не довольно заниматься - это target, skilltype также operatetype. Давайте разберемся сколько это такое вообще
5 U  k# F2 x) `, v3 Y  u8 x( h9 F* L+ d. _0 K
1. target - тег, что показывает для кого довольно обещать таргет, сколько следовательно с названия. Принимает следующие значения:0 d; u1 |8 T# B6 {
7 t4 C$ ^# o. j' u0 i
TARGET_SELF - обозначает, который скилл довольно использоватся только для его владельца (селф бафф типа Battle Roar иначе говоря War Cry)
" L6 f+ A& \  Y6 \1 RTARGET_NONE - мишень неопределена
! `! L$ j# m/ q) K5 d, T& ATARGET_ONE - обозначает, который мишень вашего скилла - тот который в течение таргете.
( ?% A3 E. s& ETARGET_AREA - обозначает, который скилл довольно массовым
' n9 J4 K6 Q' v, o% ^" m/ U, l/ @TARGET_AGGREMENT - обозначает, сколько целью довольно тот, который вас атакует
8 I: E; `3 i6 Q6 L! c/ u
* ~6 R7 f& T" P9 [+ e2. skilltype - тег, указывающий для вид скилла (бафф, дебафф)
7 x: Z0 K* K' `8 |5 e% ?! ]Принимает следующие значения:* ?+ f$ `9 |' G7 N
BUFF - бафф (оказывает положительное воздействие)
$ V2 k: a9 h3 V0 s( |DEBUFF - дебафф (оказывает негативное воздействие)
" O+ v: A: H& k1 t1 u1 j' Y6 r7 `+ v  [/ F
3. operatetype - сей тег служит на определения типа скилла (активный либо пассивный)% \0 G1 z  i) U7 @: T; P
OP_ACTIVE - активный скилл, может являться использован игроком# v' L; u; i9 [& ^8 K& b$ N
OP_PASSIVE - пассивный скилл, скилл из таким operateType никак не может пребывать использован (действует всегда)
& l4 Z& q9 U8 Y, GЭто были обязательные переменные, используемые на скилах. в настоящее время перейдем для остальным:
- H% x/ J( v% ~# `) e-power - значение скилла
6 t# i4 T0 O1 p9 M-hitTime - скорость. чтобы баффа это быстрота чтения заклинания, с целью физ. скилла - прыть атаки
; @: Z! V* j; v/ [-reuseDelay - откат скилла- D( r. L# ]8 o: c2 h
-hpconsume , mpconsume - потребление МР, НР
1 k; a; _$ z; V! @) @-castRange - это дальность использования того иначе иного скилла (дистанция)6 M1 n) ~3 p' O  w) I
-isMagic, isDebuff, isBuff - это наводящие теги, могут владеть разум "true" также "false". для примеру, isBuff = true (это следовательно сколько скилл является баффом), l4 K& q" C- [( {
-effectRange - радиус действия (для массовых скиллов); i+ G  F' L; t" I
-agro - который такое агр, равно сколько такое власть агра думаю растолковать отнюдь не нужно.: E4 G6 R1 m3 j* D
Это основное сколько вам понадобится. ныне расскажу вам по части значении тега на скиллах.
, g% T  m) t$ T) l# WТег на скиллах Lineage 2 встречается чрезвычайно часто. Обычно известный тег используется в видах "добавления сложных действий" для скиллу. буде скилл имеет головоломный разновидность реализации то обычно в течение тег добавляют некоторые отдельные значения, которые реализованы в течение ядре ява сервера Lineage. настоящий первенствующий тег к использования здесь - это .- r; S+ T4 K6 R* ?
Приведем первообраз использования тега равным образом тега :
% i% y' a. h3 i: b/ X3 r( k5 b* Q' M4 M8 R8 s/ {% X

! w+ b! a! S; e  V  D
7 F7 p. J4 P1 h% i% y0 x4 ?Что сие значит:$ B2 b! B$ {3 h5 c
& ?! a  X* k1 H- R( X" L* a3 I5 g
name - Это характер эффекта% {) W5 Q) y" W1 ^7 z0 i. C
val - важность эффекта. в интересах дебаффов - надежда прохождения, на боевых скилов - сила.1 b7 w5 V  T/ Z
time - век действия эффекта% D+ h4 r9 n0 ~$ Y
StackOrder также stackType - это значения уже описаные на данном скиле. order равно образец то есть но значения равным образом переменные из ядра сервера.8 g2 Q+ ^  s5 o# j9 \' M% J# K6 w' U
: X+ N6 p/ F! g
Думаю со скиллами я разобрались, нынче перейдем для зонам.2 M4 G9 e5 V' N9 X2 I) X/ l
9 x  A# E! e3 j  L, V: a
Часть 4. чтобы начала описания зон используется тег .
' G; L/ r; F: \
7 S% q0 [8 d3 F3 a! H# M* k% e2 Z8 ]- g2 C/ X- H
<!--Комментарий-->
' {( T, ]" C+ S! ~+ K
9 ~- T6 J. s' N9 \; k0 @Пройдемся за значениям:4 A' ~; C: ]* B' ~, }$ p

0 B0 M# V6 J/ M6 ?6 Lid - идентификатор зоны.$ F* B/ s# w8 n" {& V
type - образец зоны (town, arena, jailzone). Например:1 {" f/ a( P: \# N# u
Town - мирная зона (город)
( Q4 w3 q9 @% N* t& i& c3 I- _Arena - боевая зона (PVP)
# X/ ~' d% b+ j" tJailZone - зона. простой зона (извините после аллегорию ). за другому - тюрьма. в течение ней запрещены беседа да телепорт.
& a: z$ ~' [8 r9 m4 Mshape - это платье разве подобие зоны. Может водиться двух типов :/ k$ y/ g9 m6 K; ^  {. ]: ]9 ?
-nPoly1 B4 V8 ^+ n' F( z% B5 {7 T/ Z( n
-Cupoid.0 k" F1 ?5 ^+ _
minZ - это минимально допустимая координата гора (z) на данной зоне .
3 I% r4 q3 {; k$ _9 BmaxZ - это максимально допустимая координата гора (z) на зоне.
( E3 Z: T8 i% w8 k* ]5 G* hminZ также maxZ используются в угоду кому избежания прохождения сквозь текстуры, провалов перед них равным образом т.д.  l. c$ q- S+ ^3 ]0 h





Добро пожаловать artace.ru - творческий сектор (https://artace.ru/) Powered by Discuz! X3.5