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

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

Автор: admin    Время: 2024-8-20 14:00
Название: xml правка скилов/статов
Познавательная статья относительно применения XML в Lineage 2 серверах. Изменение статов, скиллов, вещей, зон
( J1 M( R, [. @7 c3 {' `. _1 j8 N9 a& e0 d9 {+ S
Часть 1. Введение* Z4 Q' F, o* M1 w" l1 j) E
6 T1 p) d+ V1 l
Начну от того, который но такое XML? Это текстовый формат, предназначенный в пользу кого хранения структурированных данных, ради обмена информацией промеж программами, же и с целью создания для его основе более специализированных языков разметки (например, XHTML), кой-когда называемых словарями.
) ?- ~' Q$ ?# a& U( @Первая черта XML-документа называется объявлением XML — это необязательная строка, указывающая версию стандарта XML (обычно это 1.0), да здесь может присутствовать указана кодировка символов да внешние зависимости.
5 p4 ~  s& s. V8 p
8 f! ]0 l7 X% g# k' UСпецификация требует, с целью процессоры XML непременно поддерживали Юникод-кодировки UTF-8 да UTF-16. Признаются допустимыми, поддерживаются равно широко используются также другие кодировки.
1 z0 ~( W7 c6 M2 }+ K& a/ c% ^3 bТак но на XML кушать мочь добавления комментария. объяснение может скрываться размещен на любом месте дерева. XML комментарии размещаются внутри туман тегов <!-- равным образом -->. чета знака дефис (--) никак не могут оставаться применены ни в течение который части внутри комментария. Вот прототип комментария:
# F! g- l5 \1 w; g  H
' j2 d' b. Y5 V; B<!-- Текст -->% f  _2 i# @* F8 K) U: N6 I
; I% o" z/ d7 e( g
Но я отнюдь не будем углу{цензура}ться в течение весь особенности XML, нас интересует всего на все часть, которая касается Lineage 2 XML в течение сервере Lineage применяется в угоду кому описания статов оружия, брони, скилов да т.д. в интересах оружия это предположим параметры физ. да маг. атаки, ради брони - защиты, в угоду кому скилов - медленность действия, сила, действие равно т.д. только предположим в течение файле "servername.xml" хранятся имена серверов до умолчанию. Эти имена могут содержаться свободно изменены. а кроме изменений в серверной части необходимы да изменения со стороны клиента (со стороны клиента нуждаться изменить файл "servername-e.dat". Изменяться *.dat файлы клиента могут от через специальных программ - L2Dat_EncDec да L2 FileEdit. в течение следующей части мы научу вас переменять статы вещей.
1 U8 B4 F& D; K3 Z, l' q
3 K+ H. }4 ?: i+ |& I( uЧасть 2.Изменение статов вещей.
$ I. [9 ]9 \" G* V$ B5 a0 d9 x. v8 W9 S( @: n
Возьмем итем Shirt. Это неприметная НГ шмотка. в ее примере аз поясню что, где также когда. Вот кусок XML кода
0 L  l' o$ F# G' D9 ]/ x
( Y! Y& g2 e, O' ~Для измения ее статов тогда нам нужна лишь одна строчка:
3 ]; _  u* t: x; \" y9 V4 I1 v' }2 }7 o- x1 g# P
Что это безвыездно значит:6 o/ ~0 R. R8 N5 F/ l% _& G
1 \2 U. m& i  e) |# M2 Z) @
Тег означает приращение равным образом является переменной. в его месте могут да а быть, например, , , , . да так. который но означают эти значения?
" H& b' J& s! n; l1. <add /> - приплата статов. То кушать ежели вы оденете вещь, ваши статы увеличатся. важность order довольно 0x10.
9 S, _5 g3 H& p! }  j/ m9 e2 d/ o3 a
0 `5 G3 @& D% z; A" o# K<add val='100' order="0x10" stat='pDef'/>2 q8 a. \; ]7 n) T4 W
0 T0 i" d3 ?0 a0 U
Данный код следовательно который присутствие одевании багаж вам прибавится 100 единиц стата (в данном случае P. Def).
  \1 K& Z. T0 E( m6 T
! t' L0 G* Y* s+ W) a, o! c2 \2.<sub /> - вычитание статов. То поглощать буде вы оденете вещь, ваши статы уменьшатся. order да а - 0x10.2 }# G- N+ H7 @$ E2 q
3 v& j4 B- z' r" f# V- M
Данный код следовательно который присутствие одевании багаж около вас отнимется 100 единиц стата (в данном случае M. Def).4 M2 l) V1 R6 l2 D- R

8 l3 t' {3 H7 }) M& o9 }) u: u
; e6 w3 S5 D- ^; X3 M1 C3. <set /> - назначает вам строгое важность стата. То теснить ежели вы оденете нечто со значением 20, то тот стат, однако кто это смысл влияет довольно равен 20. Order 0x08.2 m6 C; ]4 ]; q4 A( _
, A; ~4 U+ j; c# e( n
Данный код следовательно который быть одевании багаж около вас довольно 100 единиц стата (в данном случае P. Def).
( {+ w& m1 l" k$ U, [* n% g% L5 q& P( f
4. <mul /> - увеличение статов. То лакомиться коль скоро вы оденете вещь, ваши статы умножатся. Order 0x30." l* T. s- ~" @% E
0 b( k: z1 F* c+ h! r7 f
Данный код вероятно сколько быть одевании багаж разум стата умножится для 100 (в данном случае M. Def).
8 W! O, O0 j# ^. S, b  g7 `3 U+ Z. B7 H
5. <enchant /> - показывает, в что увеличится стат около заточке вторично в +1. Order 0x0C.* t; w4 u7 D- |! H; _- f/ F

# y9 z8 t) a5 ]' [" @+ Y* u, ZДанный код следовательно который быть заточке багаж опять в 1 ваши статы (в данном случае P. Def) увеличатся для 100.2 R$ y. S/ X: d
Ниже приведена список значений "order":
6 H7 l2 W; C1 f' h% F$ b1 d+ F
7 A3 J( J4 v+ z. e0x08 - set
( c' ]7 m) S4 m% t: Z0x10 - add/sub (оружие, броня, бижутерия) также (STR, CON, DEX, INT, WIT ,MEN)
$ q: y% K1 m% l: P; x+ L0x20 - отнюдь не нужно4 S/ T7 M2 Q3 o0 @# n4 G9 S8 i3 }
0x30 - mul/div (masteries, buffs, debuffs, SA (специальные возможности оружия), бонусы брони)
* y+ }1 ~' g3 M3 k3 e! E' ^1 O% Y0x40 - add/sub (masteries, buffs, debuffs, SA (специальные возможности оружия))
; k  E# y" ^3 I( v5 l0x50,0x60 - никак не нужно
* k: T/ c! E' Z& [- w) \3 F4 Y8 [0x0C - enchant& Y- u0 l! ~( b$ k! N5 v

# @+ w7 \( J, [( d* hЧасть 3. перемена скилов% |) j2 a) a4 ]/ m; ]2 W

7 t2 j$ z, s+ i1 D- z$ }Самая большая порцион моей статьи Начну со значений, причинность вы должны быть знакомым сколько изменяете.
) v3 j3 W6 m) ~9 ^6 B6 n6 z6 ^5 f. X& ]8 l& R1 {
Изменение максимального количества HP - maxHp
5 p8 y/ B& @  P; G7 t6 XИзменение максимального количества CP - maxCp* l8 m" `  k- L0 @* h( l/ J
Изменение максимального количества MP - maxMp; V5 ~( t% R% z
Регенерация НР - regHp
' Z, r$ d9 a6 V' R/ \Регенерация СР - regCp3 j7 m0 x& x2 T5 `( r  D7 k
Регенерация МР - regMp
  N8 \# B, [0 H$ ~& _8 f5 T" PЭффективность хила - gainHp  y0 I% V1 B5 K, p9 y3 b
Умение хила - giveHp
* }+ |5 ?; w" m0 D6 R: a( DБонус хила - bonusHp- w  V% o. o! s9 Z. [
Физическая опора - pDef$ |- j- J& x( X0 h
Магическая столп - mDef
2 P( Q) l$ w, y1 }0 [- wФизическая набег - pAtk
# Z, y% \2 E! X' d+ O  TМагическая набег - mAtk  i! }2 `& i. I' b
Скорость физической атаки - pAtkSpd# o7 ?! |+ H0 z/ Y6 i+ W
Скорость магической атаки - mAtkSpd
' ^* ?) b6 r3 k- Y5 m; b2 bСкорость отката - mReuse8 Y; E" X/ k8 w/ p
Защита щитом- sDef  V- x* k( |* H5 _
Угол защиты щитом - shieldDefAngle: {9 y2 _! v2 g/ Q' m
Критический пощечина - cAtk
. d/ N# C. ]# [( o6 g1 X; SПрибавка для критическому удару - cAtkAdd& [9 ?7 v/ j8 x
Физ. урон в течение пвп (например в пользу кого Duel Might) - pvpPhysDmg
* L( C0 |; j2 M+ L$ e/ O7 c$ Y9 MМаг. урон - pvpMagicalDmg
5 P0 R0 M, \9 g7 f# O( QУрон скилом - pvpPhysSkillsDmg
* _7 s: t0 ]2 yУворот - rEvas. Y/ J* I+ P& v- C9 _& Y
Уворот через скилов- pSkillEvas
: {9 j5 _; I# X3 qШанс блокировки щитом - rShld. l' l2 g+ }2 M# a+ S3 _: Q4 [
Шанс крита - rCrit- J1 x% I7 S; J- D1 {" F
Шанс Blow - blowRate
) n) m) _- V% B5 i% W4 RШанс Lethal - lethalRate4 c" L! X8 K4 {0 P5 _
Маг. крит. надежда - mCritRate (mCrit doesn't work!!)
3 ^- K3 p; E% l0 L* C$ REXP,SP надежда - rExp( \  P3 Q% C+ x& x* e7 o. w5 ~
Cancel - cancel1 t# a# C; Z: B4 a+ {/ e9 X" `  Q
Точность - accCombat
: L8 l% q: ^  mЗона покрытия физ. атаки - pAtkRange (for fighters)
2 O/ @3 f( O1 L4 E- V4 j/ rЗона покрытия маг. атаки- mAtkRange (for mages)
" b) Z. [2 y9 P+ gУгол атаки (только с целью воинов) - pAtkAngle. D* X* u3 w, V5 z& D  L
Количество атакуемых - atkCountMax. [( L' w) F* B) ^: q4 P
Откат физ. скилов - atkReuse$ ]- x4 t) B8 I& B& \4 ]" [
Скорость бега - runSpd
  Q% Q/ j& I: C/ t) m8 R: u# `2 QСкорость ходьбы - walkSpd
- D; X1 ^" C* L$ N9 ]. @0 pSTR - STR
) O9 B" A- }5 rDEX - DEX' ?4 q2 O( A9 h) m$ u8 F, p8 ]
WIT - WIT) C. Y- b1 ]5 ~% J+ Q0 O! ?/ S; E- u
INT - INT  @3 E$ q% `) C7 q1 a9 X; p/ }
MEN - MEN
3 V5 h. }6 m& M" |* k
6 A& X/ C+ C9 `8 P; vУязвимости5 M( @& d0 s# Z4 k" E; ?5 q" O7 ~

! F. T+ i, G# Q. Q6 g- Q! D$ S( E  pАгрессия - aggressionVuln
9 I* Z4 ~" k; f* [" xКровотечение - bleedVuln
9 \' P/ \2 ]0 c5 {Яд - poisonVuln4 L, ?- Y% V# C: h. B7 ]) s* U
Стан - stunVuln5 I6 S6 v5 k( g6 R, c# F1 s- S
Парализация - paralyzeVuln
% g! w& `! Y- uУдерживающие заклинания - rootVuln
" r* N/ q; l& |8 AСон - sleepVuln
; \$ v- r& I/ l+ i, R- n' j"Перекидывание" таргета -confusionVuln& J4 l0 V% d* K& _# X
Движение - movementVuln9 ]5 |- p' w' U5 r# I% ], ?; S
Огонь - fireVuln
/ K1 I1 U# r+ M' s9 C* ~6 Q! uВетер - windVuln
/ u7 r1 `( K' W. Q4 |5 s3 C: hВода - waterVuln
1 R% N4 a# W7 t& z1 FЗемля - earthVuln: X7 x0 F- ~% n+ A; K1 e$ m  Q
Святые атаки - holyVuln" h% a+ D4 M! n2 l3 A) c
Темные атаки - darkVuln
& t7 L; `% `5 q9 ^6 |5 |Резист для cancel - cancelVuln
3 n9 i; `* K+ p. tДебаффы - debuffVuln  z8 {: b. f$ e! c8 X# z8 Z1 }0 k
Резист для криту - critVuln
6 ]# L: [4 l: `; E, v! C
/ j  s, z, F! t5 B( CРезисты простив оружия (тут думаю изображение никак не нужно)
! l2 ^, A2 W2 [' o8 x: C/ Y' |+ Z$ i) ]$ j5 T) L" n1 O
noneWpnVuln1 H# V# [9 n4 X0 R" k0 ~# X; y3 t
swordWpnVuln
3 t4 A% v3 u% ~8 ?/ ^bluntWpnVuln/ L, b) \; t" L5 w. N9 v
daggerWpnVuln
9 o9 }5 T# M- cbowWpnVuln' E4 [, s# z8 K
crossbowWpnVuln/ h. H) ^& {4 C8 e! b
poleWpnVuln( h  J, M) x4 l
etcWpnVuln
, ~6 N2 t, y- |+ X/ _4 m, `fistWpnVuln
. a8 K0 O4 b$ _* ~dualWpnVuln
  h9 ?; m, w' q) v* RdualFistWpnVuln
5 y) c+ e6 s: [6 m; E1 _bigSwordWpnVuln8 x' L5 C6 F5 E2 o
5 z5 F% @' R$ O  A4 T
Отражение
! Y7 J! T6 x- \; P1 v8 J; n+ Q" y( V6 @) k/ Z3 S
Процент отражаемого урона - reflectDam (pay attention! not reflectDmg!! reflectDam)
, s2 \1 E5 p- R, ~- R6 u6 fПроцент рассеиваемого урона - absorbDam$ }) w. `6 B6 e) i4 v. h& D
Процент переносимого урона- transDam
( }! R6 ]9 ?8 k4 k2 q. VОтражение маг. скилов - reflectSkillMagic! S) Y* g+ k$ d+ _4 q& X
Отражение физ. скилов - reflectSkillPhysic
7 z4 a! d+ k( p9 z
, A! }  _, ]6 h, R; e9 F; OДругое (для примера):
1 w0 a0 X" F2 x0 R+ d: [% D) X1 }
2 I- y( m5 f+ ^$ s2 c7 \3 {5 GАтака для гигантов - pAtk-giants
. T, L, b7 D" A7 i. GЗащита для ласкать - pDef-undead; k1 @" C, F8 H1 G% e. @  ]. B  d, ^
Атака в животных - pAtk-animals& j- Q" }" x, F2 J6 B9 M
Защита для монстрах - pDef-monsters# S# V5 h5 ?# m! P. _
Лимит инвентаря - inventoryLimit% ]% Z6 b. e, Y' K
Лимит ВХ - whLimit
. Z/ @8 G) p- ?1 Q' UFreight лимит - FreightLimit
; z" q2 n4 K7 s: x, NЛимит продажи. - PrivateSellLimit
  R1 F9 Y4 ]/ U' qЛимит покупки - PrivateBuyLimit
# |& c! f" g6 J! g0 K' ?$ i1 l, o4 oЛимит гномьего крафта - DwarfRecipeLimit( A0 x! U1 h7 p
Лимит common крафта - CommonRecipeLimit/ H3 X7 s9 J+ b- x
Потребление МР физ. скилами - PhysicalMpConsumeRate5 l  R: W/ z2 ~5 N4 w8 K
Потребление МР маг. скилами - MagicalMpConsumeRate
+ i. Y& }0 ^* @" [' D* J8 L4 ~Потребление МР дансами - DanceMpConsumeRate5 {1 m( _. c/ J# o' K
Потребление НР - HpConsumeRate
' Z+ i* h, X) Z1 ~/ T: i, Y$ \% G0 ~Потребление МР - MpConsume. F6 H; R+ D' [2 m1 `8 L3 U
Потребление соулшотов - soulShotCount' r/ E; R7 H$ w0 g# p
Skill Мastery - skillMastery
7 z# `! z: L7 O# m5 H8 i7 c) W, {Время пребывания около водой - breath
- a' Q; y3 `) `7 Z0 R
! y4 l* q7 m, @3 \9 oВроде все какой угодно скилл начинается почти открывающего тега да заканчивается закрывающим тегом . в течение скилах теснить 3 обязательных тега, лишенный чего которых он отнюдь не довольно заниматься - это target, skilltype также operatetype. Давайте разберемся сколько это такое вообще2 m: j1 \  M$ [4 I) G% |

' o2 F' J7 ?- B0 m/ ?* l1. target - тег, что показывает для кого довольно обещать таргет, сколько следовательно с названия. Принимает следующие значения:
" e  g! l2 ~3 x/ M, o# \* U6 S0 |* j
TARGET_SELF - обозначает, который скилл довольно использоватся только для его владельца (селф бафф типа Battle Roar иначе говоря War Cry)
% V/ y; `4 H& W1 z& k) o5 j5 D9 UTARGET_NONE - мишень неопределена( t3 u( w2 `& f& l
TARGET_ONE - обозначает, который мишень вашего скилла - тот который в течение таргете.
7 r1 L6 W8 b! x% X; NTARGET_AREA - обозначает, который скилл довольно массовым( d% k& n7 W* Q3 D% S& p
TARGET_AGGREMENT - обозначает, сколько целью довольно тот, который вас атакует' ?& k# P% _* W& C6 {: {- \
0 Q1 `7 h5 y2 u7 v9 p( w
2. skilltype - тег, указывающий для вид скилла (бафф, дебафф)+ A/ ?. E. z$ a  ~
Принимает следующие значения:! T5 Q5 q* R* j9 n* `% C
BUFF - бафф (оказывает положительное воздействие)
7 k; X* R" t9 M% ]0 mDEBUFF - дебафф (оказывает негативное воздействие)
+ C3 w2 m9 b; X" k( c3 j: k
, m: K" M/ }6 ]1 m3. operatetype - сей тег служит на определения типа скилла (активный либо пассивный)) S$ L& y7 H/ N: l8 l* O- s4 Q
OP_ACTIVE - активный скилл, может являться использован игроком9 C/ C2 h  W, P/ H) \- g
OP_PASSIVE - пассивный скилл, скилл из таким operateType никак не может пребывать использован (действует всегда)
2 m, [& c' x/ K" lЭто были обязательные переменные, используемые на скилах. в настоящее время перейдем для остальным:, n3 ~8 _2 J) C
-power - значение скилла% \) Z4 x3 l9 Q) x
-hitTime - скорость. чтобы баффа это быстрота чтения заклинания, с целью физ. скилла - прыть атаки
9 s. B% j1 \2 h/ V" J2 X-reuseDelay - откат скилла
% h; s7 ?5 \7 m* g* c2 J9 c-hpconsume , mpconsume - потребление МР, НР+ P( w: l5 P1 v9 F5 `
-castRange - это дальность использования того иначе иного скилла (дистанция)
& y( e- m% Y( Z: [-isMagic, isDebuff, isBuff - это наводящие теги, могут владеть разум "true" также "false". для примеру, isBuff = true (это следовательно сколько скилл является баффом)
4 E4 |- `3 o: u" I" ?5 |1 ]-effectRange - радиус действия (для массовых скиллов)7 r. [$ Q% y9 z2 V) M, j2 u4 E% ?, t
-agro - который такое агр, равно сколько такое власть агра думаю растолковать отнюдь не нужно.2 Y* r" F, Y- E9 Q- f: y2 }2 Q
Это основное сколько вам понадобится. ныне расскажу вам по части значении тега на скиллах.6 u8 A% D7 K0 ~( X, D
Тег на скиллах Lineage 2 встречается чрезвычайно часто. Обычно известный тег используется в видах "добавления сложных действий" для скиллу. буде скилл имеет головоломный разновидность реализации то обычно в течение тег добавляют некоторые отдельные значения, которые реализованы в течение ядре ява сервера Lineage. настоящий первенствующий тег к использования здесь - это .
* X0 g4 F* b1 M8 rПриведем первообраз использования тега равным образом тега :
/ Q* D) J* a/ F2 E
$ ]- G$ S8 u' J6 F3 e1 m; z5 T8 D% O: R8 l! J
5 O; _5 Y9 y9 l0 t* ?+ T3 {% f
Что сие значит:
) ?! P# s$ X5 f* _. i
4 r0 V# i8 o! w0 u, xname - Это характер эффекта
. P* q" }6 e- q3 t  v" Vval - важность эффекта. в интересах дебаффов - надежда прохождения, на боевых скилов - сила.
" O6 q4 H' w9 g# d4 s: t5 mtime - век действия эффекта
7 v' |  ]# N8 |- B% i0 M* QStackOrder также stackType - это значения уже описаные на данном скиле. order равно образец то есть но значения равным образом переменные из ядра сервера.
4 L: I0 B4 i5 t  G- t) ~
; K2 P- b2 h% B* ]3 u) s) HДумаю со скиллами я разобрались, нынче перейдем для зонам.
2 S; g- h) L2 @/ h- `9 Z; b' l  g6 D1 a
Часть 4. чтобы начала описания зон используется тег .
  _- G7 C" D2 G$ ?! l
& P, S# C5 g6 h8 s6 x- t6 o. G9 ~% t" A$ Y
<!--Комментарий-->
" S# d% ~0 P) G. o/ E( w* J8 O
Пройдемся за значениям:$ Q8 A' V9 p6 n- G# n) F6 h5 o( e
  H1 A3 N: n5 g0 j: e) ~
id - идентификатор зоны.# C, {/ ?9 `' M" e% d% V4 y
type - образец зоны (town, arena, jailzone). Например:
, \  V0 w4 `. r. M- bTown - мирная зона (город)) f6 b! n& f! v- H% G& @; q
Arena - боевая зона (PVP)9 |2 l9 |2 s) g- _8 g
JailZone - зона. простой зона (извините после аллегорию ). за другому - тюрьма. в течение ней запрещены беседа да телепорт.
/ m" m4 p; O8 v7 Q; D0 W4 |6 \: Mshape - это платье разве подобие зоны. Может водиться двух типов :
$ l5 ~& R; I  i. F: a, n-nPoly
/ j9 T" d" b" Y- f-Cupoid.: M7 c, \' L  q! i( x, l0 k
minZ - это минимально допустимая координата гора (z) на данной зоне .6 q2 C. G* Y, a5 f& Y; s
maxZ - это максимально допустимая координата гора (z) на зоне.
8 W+ m2 T& r" L! K* H' jminZ также maxZ используются в угоду кому избежания прохождения сквозь текстуры, провалов перед них равным образом т.д.' ]- F. Z* E3 D$ H5 [$ ~$ [2 A; @* m





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