|
下击空挥 [Next Hit Always Miss]
& A3 P/ E, D2 r6 w+ ^! ?8 c我印象中这好像是一个大约在09年前后提出来的概念,这个BUG的表现形式为:
x6 g1 g4 h3 O. g2 ~9 _6 Z一些直接作用于玩家角色的“可打断攻击类型的动画”,比如击退/眩晕/打击回复/格挡/躲避等等,必然会导致玩家角色的下一次攻击MISS掉攻击目标,这个BUG几乎没有例外,其中包括那些具备跳过HTC流程功能的技能,比如盾击等,也包括各种法术类技能,比如火球等。不过远程法术类的MISS相对特殊一些,体现在释放方向并不会沿着玩家角色的指定方向,而是实际会发生偏转。1 x/ K/ ]: S E/ Z7 b
* s2 Y" V, i. E
2 [" p8 f; \: e$ e* ]* B很明显,这个BUG对于近战的影响相对于远程更加严重一些。对于需要冲进敌群砍杀的角色,被打击回复/格挡造成MISS的影响是很大的,下面是一个假想的100%空手接白刃的循环式场景:0 i% \: \1 h$ i. h6 b4 n3 x$ E' I' A) J4 E
1. 开始砍怪
- F: c8 }( ^5 }; j/ b+ s$ c9 E0 e2. 正在砍怪的过程中,被格挡打断
7 F$ Z9 T: l! X3 B3. 格挡动画完毕,继续开砍,但是这次攻击100%会MISS
1 X* }. I6 H* |4. 砍怪的过程再次被打击回复中断7 \6 `7 c9 A S, e3 g @
5. 打击回复动画完毕,继续开砍,再次发生100%的MISS: [6 Q' F; L2 S6 e
8 q9 j |: ?6 A
! S6 f# o: v1 b这个BUG的产生原因主要是服务端和客户端的异步问题,对于实际游戏的几乎全部攻击方式都会产生影响,只不过对于各种近战Build的影响更大一些,这其中也包括高防御高格挡的PAL。
3 V7 I7 f8 i: x( ]8 c8 D; {* U* I: y9 t
: L. }2 m$ R/ v8 V; x
服务端D2Common functions相关的代码问题引起了很多BUG,包括再生尸BUG,击退(Fend)/热诚(Zeal)/炮轰(Strafe)的BUG,无形投射物或不可见的其他攻击,以及旋风(WW)和跳跃(Leap)的相关BUG等等。
2 z; d. }! g L7 @+ I0 o& K8 v; f
2 W) l& {2 V0 ~3 h3 A6 c
大概原因就是服务端会根据当前模式的Animdata,为触发帧设置对应的事件,而完成这个触发事件后,会在结束帧后再加上一帧,而这一帧是另外一个事件,其功能是清除和结束,至于问题主要就是出现在这里,这里用1/256替代了0,所以当意外情况发生时就无法正常工作了,比如调用D2Common AnimClass时,最终的结果就是导致接下来的事件会停止工作。
; V+ S4 H; k/ N( s2 X8 \ |
|