|  | 
 
| 原创作者:悄然花开 & Z) z" R- }% p% |0 f1 |发布日期:2008-08-12 " \/ f4 `4 H" n. C. X1 |
 - f* T7 j; O& h
 9 v* W9 A- A. z8 p: V
 【遭受攻击时HR动作判断的流程】' w, R9 s; ^4 i# ]6 W
 1. 打击恢复动作(以下简称HR动作)只有在攻击动作的resultflag参数=4时才会产生。
 3 c6 Z9 g1 v) E0 s2. 检测受攻击目标是否处于眩晕状态(stun)。如果是,直接进入HR状态。6 z& M' H- T/ J& t8 ]1 x( J
 3. 检测受攻击目标是否处于冻结状态(frozen)。如果是,判断结束,不产生HR动作。
 ) ?7 e) [, v2 x4. 检测本次攻击是否包含毒素伤害。
 , i' H$ E7 I* e+ c% W8 Z4.1 如果是纯毒素伤害,判断结束,不产生HR动作。( E$ U( U: M+ o) R( I
 4.2 同时包含毒伤害和其他类型的伤害。若受攻击目标受到的总伤害小于1,判断结束,不产生HR动作。反之转入步骤5& q5 w3 k7 k0 U  ?# W
 4.3 不包含毒素伤害。检测受攻击目标受到的总伤害是否大于等于1。是则转入步骤5,否则判断结束,不产生HR动作。
 3 k2 c/ Y9 C" b, L; z% h3 Y# z5. HR动作判断开始
 : H- S0 p& {6 b8 x  q1 i5.1 获取受攻击目标最大生命值MaxHP。根据攻击类别(Hit Class)获取参数divisor,具体分类详见下文。
 % m4 V( S! f( i) t7 _" C2 B5.2 若目标受到本次攻击的伤害DAM<MaxHP/divisor,退出判定,不产生HR动作。反之转入步骤5.3。8 g% a5 V9 s8 a5 x
 5.3 若DAM≥MaxHP/(divisor/2),本行判断结束,转到步骤5.4。否则系统将取随机数0和1,若为0则不产生HR动作,退出判定;为1则转到步骤5.4。" `% L8 R! Q* j! x. _  y* \
 5.4 若DAM≥MaxHP/(divisor/4),转入步骤5.5。反之系统取随机数0-3,若为0则不产生HR动作,退出判定;取其他数则转到步骤5.5。# H; I# N; K5 g6 O6 k- k9 v
 5.5 系统检测受攻击目标是否允许产生HR动作。若判断允许,则产生HR动作,反之不产生。判断结束。
 3 a2 F  E& M2 R& U% t) P6 [: ^9 s6 T6 z4 o; r2 u
 【简单来说判断标准如下】
 % N% j" ]1 c, t+ g7 Z7 j纯毒素伤害不会造成HR动作。' n  t. ]9 N4 |7 J- {- d2 i1 {5 I. Y) h
 非纯毒素伤害的情况下,记本次攻击所造成的伤害值为DAM,受攻击目标的最大生命值为MaxHP,相关参数为divisor,则
 . l/ B% |5 S: j0 J1 p' l若DAM<MaxHP/divisor,则不产生HR动作;' A9 c; _. e( z
 若MaxHP/divisor≤DAM<2*MaxHP/divisor,则有3/8的几率产生HR动作;
 3 o8 b) F4 W0 x* s% V若2*MaxHP/divisor≤DAM<4*MaxHP/divisor,则有3/4的几率产生HR动作;
 4 _& Z, e$ B$ q. |& P若4*MaxHP/divisor≤DAM,则100%产生HR动作。
 6 w6 h/ S/ |0 {8 L) k4 @* @
 J: `9 @  O0 `$ a- ?
 + ]) V* P5 _- b" x' C( [8 `6 Tdivisor参数的取值
 2 i4 D% `2 M* E/ p2 b1 u' `Hit Class = 2, 6, 10, 11 : divisor = 86 p8 [& T, P; K! ~+ i
 Hit Class = 5 : divisor = 64
 7 v" Y0 z8 @7 L8 A2 u0 k: z$ w- w6 O! fHit Class = 4 , 8 : divisor = 32
 $ I' Y% f4 @3 O  I& {Hit Class = 其他 : divisor = 16
 ( Y, X1 Z7 L/ f" f) J( G, ]& E' x/ T
 Hit Class取值的判断% M3 o) s, ?9 A. q
 1. 所有怪物(包括雇佣兵)的普通攻击对应的Hit Class均存放于Monstats2.txt,分别为1, 3, 12三个值,对应divisor均为16。8 L! @. [& S0 q7 G' _& L
 2. 角色的普通攻击对应的Hit Class取决于使用的武器,详见2楼。  T. P' F6 |& t, n& t# Y
 3. 技能的Hit Class
 : N0 A2 E) W3 V, H" C3.1 对于Melee技能,Hit Class取决于角色使用的武器,同普通攻击。若该技能已经被赋予其他特殊效果则除外,例如Bar的Bash技能附带击退效果。
 ! B  p. X9 S2 O9 \3.2 对于Missile技能,Hit Class存放于Missiles.txt。! i) p2 t( H) c6 e  t
 3.3 其他技能的Hit Class对应Skills.txt的Hit Class列,无一例外均对应divisor=16- I2 H; k% w/ X" \: |
 & ~2 x7 P5 H/ G! |3 a* l; J: V
 : a7 I8 h0 _9 X# V6 R+ n1 r
 Hit Class 分类相关
 " w/ L% L8 Y+ y1 T================================================0 X5 c7 t+ n% T: D! [8 f2 p
 Hit Class Code Meaning# I# L6 Q5 w: l6 a+ X* C7 c( N
 ────────────────────────% L, l$ O8 D2 W4 v
 0 None
 / x3 g( p) F7 S/ o" D% `9 o# U1 hth Hand To Hand
 / r' g+ j. W& W7 Y; M2 K% K2 1hss One Hand Swing vs. Small2 {" `0 @( [) J$ s. d, M! g
 3 1hsl One Hand Swing vs. Large
 ! [9 R2 y$ r/ H( b/ e' o4 2hss Two Hand Swing vs. Small
 ( i1 V* f( |: ?5 2hsl Two Hand Swing vs. Large" Q9 N' s  e1 B$ Q8 t7 z3 R. W$ ^
 6 1ht One Hand Thrust
 % E7 E& Q9 ~* U& I7 2ht Two Hand Thrust9 d' F; f9 P# }1 z0 \  a2 A9 a. t+ `
 8 club Club
 # }8 f1 t; [: g: |$ K( d+ U/ ]% ]9 staf Staf
 & t1 q7 t9 W2 I10 bow Bow
 % Z3 G4 r/ {4 D5 H. F" v11 xbow Crossbow
 ( K# ^( Q8 p) Z$ E12 claw Claw
 " X! v: |, C5 v3 H5 d1 v. ~+ d4 _13 over Overlay
 - }4 l* k1 A9 U& G3 W================================================* y% Z  ]6 T2 A, a
 解释:2 W* V9 G& x9 G, J7 E: ?
 hth : 空手。另外还包括各种攻击性的投掷药剂。
 # D) ]- M, O# r) U1hss: 包括死灵法师单手杖和法师专用法珠。
 ' B% D% F; u  t5 I# g1 w% l$ H1hsl: 包括单手斧类、狼牙棒以及其对应的扩展/精华级类型、钉锤类、单手锤类、单手剑类、飞斧类。2 Q, R! D, t: B9 S
 2hss: 所有的双手剑类。1 n, [  b: _' {; h# v8 v% [
 2hsl: 包括双手斧类、双手锤类、长柄类。
 2 X8 w2 f! x6 M' e* }1ht : 包括匕首类、飞刀类、标枪类(含亚马逊专用标枪)。9 z- o0 J2 J, p3 Q4 a- ?. g$ R
 2ht : 长矛类(含亚马逊专用长矛类)。
 - i4 m+ s8 [/ _& q+ o6 y( nclub: 包括木棒以及其对应的扩展/精华级类型、圣骑士权杖类、短棍以及其对应的扩展/精华类型。& d0 G6 s; y, I( n6 X2 g
 staf: 除短棍、乔木棒、手杖之外的所有双手法杖类。
 : E2 `: [* g: J! m0 `bow : 所有弓类(含亚马逊专用弓)。
 0 J" ]# s+ D0 l8 D, x' M* G$ Lxbow: 所有十字弓类。' P8 J' L8 u1 P
 claw: 刺客专用爪类。, b& J7 Z& P1 C' ?
 0 @6 m! |! M+ h7 W$ j4 l
 
 : o$ d1 x$ t+ Z7 X' u6 k常见Missile技能的Hit Class(如查询不到则均对应为0)
 ) V6 L) c/ f# p4 l5 L: W, O9 }( ?6 x0 ^& |* I( v" n( V
 Missile HitClass1 t! p$ k9 I7 v3 ~) h' t
 ───────────────────
 1 M( z  C; c: u" garrow 10
 ; ^7 \" O: I0 X) |2 i; pjavelin 6( k5 E/ y2 r- ]: F  V4 n  |
 magicarrow 107 V$ e- L- A( V, ^2 y$ q
 bolt 10
 8 H; F2 m& M, d: Cthrowaxe 2" ~6 @0 Y( u$ ]! j+ I2 Z' C
 throwknife 6
 7 X. n* z$ x/ Z% L- k1 Uglaive 6# |) m1 W8 _/ O9 C5 e
 poisonjav 6/ n: ~! [  w4 _. W9 y' Y( E8 Y$ R! Q
 poisonjavcloud 6- J0 f' ?% e3 r& T4 l
 plaguejavelin 6
 7 z+ b+ q1 G9 u$ Y1 g7 gchargedbolt 64" G$ @2 C$ f1 n5 h* `2 I, U9 L5 g
 infernoflame1 327 a- z% K+ l5 T3 n+ z: D3 e
 infernoflame2 32
 : v3 a1 ]6 T0 ~blaze 32
 $ O8 `7 C' f( T1 |9 \" f* A9 |firewall 32# X5 S/ z" r  j
 immolationarrow 10
 * u6 {5 P  g% |: J3 Y: C4 pguidedarrow 10
 7 e& B, L2 h4 Anova 64
 & \0 Y" I. V7 x7 k5 K5 cchainlightning 64, A6 F! e8 F* k5 r
 lightningbolt 64
 / X$ [  C7 p1 w* E3 @lightninghit 64
 ' B$ m, ]+ f. T4 {! D( ^4 d, _poisonnova 80
 2 W8 |7 S9 Y, w/ d& Xfrostnova 48
 * T4 i8 }) F5 d  g& R/ B& g- u' H7 Urogue1 10
 % s9 g! F  K* |$ |3 V$ \rogue2 100 D5 ?$ ^, Q; ^' l
 rogue3 106 r/ ~3 ~% N6 J8 x! ^
 vampirefirewallmaker 32
 : m: q/ w. s" L/ _9 ?" wvampirefirewall 322 J/ W+ U( X9 Y- O* Z
 raven1 10
 {2 Y) w; p( I: {& P! Zraven2 10" Q- r1 @. r$ a: F
 diabfire 32  B" I! h4 S6 z. J) Q
 bonespear 6
 $ M/ S9 @. |; ?0 z# i. X& vlightningjavelin 64" w; i9 V4 \. o# b* e" \* ^
 lightningfury 64
 1 V% [$ O2 D. d8 z2 ~8 W' Xmultipleshotarrow 10
 " l/ G5 P! \' f1 n" W' B- n# N& D7 H$ Amultipleshotbolt 10) g' Y6 i8 x: W5 u  P) Z; O
 immolationfire 32
 9 {/ f' s4 l1 |3 U1 U; Sfurylightning 64, c: p; O8 f0 X, H; N2 D
 lightningstrike 64: |" i) ]9 {' j' M( {- [
 meteorfire 32' c/ ?6 h' a6 u9 v
 trap spike right 10. S) X9 |- V4 D+ U9 D9 ^9 @
 trap spike left 108 V  b% ~* U8 \+ ]( z
 trap cursed skull right 104 y7 S4 T3 _0 _# B5 v% G4 ~
 trap cursed skull left 104 r4 b4 N" W2 B+ C
 trap poison ball right 106 s0 Q! J; t5 T9 _: l' m& J
 trap poison ball left 10( ~* L2 }+ O2 Y! e9 D1 h  I8 B! J
 pilum 6& j( x, N! i; ]
 firestorm 32
 ) m( u7 |  f" z  A: Aarcticblast1 32
 $ u% m3 [2 ^# L- {% L0 P% v% Rarcticblast2 32
 ( D; [7 v8 }) _- m$ B2 e4 D5 F& htwister 32
 6 }: u" Z- Z9 i( H1 Ytornado 32
 6 D+ C3 \& m0 z1 Svolcano small fire 326 p0 r+ z: \. l4 i7 D! S# ]
 frozenhorror arcticblast1 32
 4 M7 [: F; M6 u, h' Y3 wsentrychargedbolt 64
 9 S, {; |* w7 E4 k2 h, Q! `bladefury1 10  w2 p+ o3 w4 Q# L& Y
 bladefragment1 10: x) M7 ]! G% f( W
 bladefury2 10
 : _2 B, r! x( ?2 Y; ?9 u* rbladefragment2 10, b+ v, P* w6 q* G
 bladefury3 10
 3 B# P5 E' S* f2 f6 N! j1 Dbladefragment3 10& U% t) Y! p! ]* d: N
 shockwave 64& H. u! }' x% Q0 k& T
 phoenixtrail 32" y. a6 u7 d! x# d
 wake of destruction 32: g3 m  h, W$ L
 tigerfurytrail 32
 ! Q! M( P& s- Q1 W% d/ ?  ^5 ninferno sentry 1 32
 4 o6 c: Y* U& \, w  O2 mancient throwing axe 2
 ) f6 d/ [# {$ k" C& asentrylightningbolt 64
 0 a9 N' C5 S' E+ rsentrylightninghit 64
 6 C/ g0 M' C3 z% T& x/ vlightning charge up nova 64
 * P) T& B, o3 R/ ^chainlightningcharge up 644 M6 R3 C7 ]3 `3 y4 q" y
 baal taunt lightning 643 S/ Q; G* o6 f; P1 {0 n
 baal taunt lightning trail 64+ B/ P  G$ q! u8 l5 G. e; k
 fistsoffirefirewall 320 ^& J, z3 k. x5 @# ]4 p. Y
 clawsofthunderbolt 64, f  N6 }4 F4 y# H
 clawsofthundernova 64
 4 b+ a! z; G1 N8 O# vroyalstrikemeteorfire 32( H6 [( f  {1 E! @: C* o
 royalstrikechainlightning 64
 7 s9 \; |. m- d% e5 ^% o# G0 C! earmageddonfire 32+ n" r, P8 m4 a5 x5 B
 lightningtowernova 64
 % ~1 L& T, D7 ?9 D4 hwillowisplightningbolt2 64
 0 Y* P! h( e( lgoospitex 176
 $ ~4 R' X# h5 O/ w1 @2 Ldiablogeddonfire 32
 , y# b+ m+ M/ [: ~; y' I$ L* cmegademoninferno 32+ G0 c' Q) d$ g' w
 trappoisonjavcloud 6# B3 |* S4 x; ]$ r) u% |" u
 trapnova 64& {; C) R3 C; V
 mephfrostnova 48
 6 X" c' R4 |) M: X7 H5 @5 sstrafearrow 10
 % Q$ O/ u) g+ c$ I7 tstrafebolt 10
 % X9 H- Y3 U  ~# H* G2 [6 r6 @0 O0 D
 
 . q. _* m) n( j# S9 y! z  h由于大部分情况下divisor的取值为16,所以FHR判定断点可以简单记为:, p: ~, R1 l+ I. Z, a' l* D6 d# V
 1.当DAM为MaxHP的1/16时,造成FHR的概率为37.5%
 % q) B; @; |* h; |2 z8 Q- `  C2.当DAM为MaxHP的1/8时,造成FHR的概率为75%
 & C! |' M& W# U# r& B$ i. L: e# b3.当DAM为MaxHP的1/4时,造成FHR的概率为100%# @; N" [, `& {! q( k9 _4 r! f+ c* R
 
 | 
 |