|
2016-8-12 00:06 编辑 <br /><br />转载时务必注明作者为Emeter或者emitter,谢谢合作!
对于一般玩家来说,BUG这些东西,都是不求甚解,知其然不知其所以然。然而对于研究人员来说,这是不行的。
现在就凭我过去的游戏开发经验来解析一下月轮中的几个BUG。
只有文字说明,还请能理解的热心人附上图片,谢谢!
已知:
换版区域的厚度只有8个像素点。高跳初垂直速度是-8/F,普通跳跃/悬浮上升初垂直速度是-6/F,DSS石化状态下速度减半。
人物坐标系的设定:所有动作中都以人物的左下角为基准点。
一个设计错误(或者是有意为之?)——跳跃中,内森上半身不存在判定,而在其它动作中都存在。按判定面积从大到小顺序来排列内森的姿势:站立>跳跃>蹲下。因此,玩家会注意到跳跃向上换版时,内森上半身一定会超过屏幕顶部;以站立姿势向上换版时,内森上半身则不会超过屏幕顶部;而骷髅和小熊的跳跃判定也都正常……
(证明方法:悬浮上升中,以跳跃姿势可以把头部钻进天花板,而以站立姿势则不能。)
又一个设计错误(故意的?)——蹲下时,游戏判定内森位置偏下;起立时,游戏判定内森位置偏上。
一个将错就错——也许是开发人员为了保证跳跃向上换版的连贯性,将纵坐标偏移量减少了,这样一来,当内森跳跃向上换版后,就会正确出现在上房间的下换版区之外。然而,如果用站立姿势换版,那么换版后内森的纵坐标会偏下,如果调整了适当的换版高度,就可以使换版后极短时间内内森的坐标处于换版区内。
两种悬浮飞跃出城方法,机制不同。
1) 飞越地平线——悬浮上升中用蹲下动作的判定漏洞换版到房间外:
原理:直立悬浮上升中,如果高度得当,可以换版到上房间的下换版区内。此时立即蹲下,游戏就会判定内森向下换版;而如果换版后能到达下房间换版区的上方,则成功利用“空间跳跃技术”出城。目前只发现用DSS石化状态悬浮上升才能刚好处在恰当的位置。
2) 真·飞越地平线——悬浮上升中用起立动作的判定漏洞不换版直接飞越换版线:
原理:蹲姿悬浮上升中,如果高度得当,在仅有的一个高度起立,可以正好用起立动作的偏上判定+悬浮速度正好越过换版区的8像素,从而出城。一个降低对高度精度要求的方法是起立后立即高跳,由于高跳初速度达到7/F,出城成功率会高很多。
注:所谓“地平线”,只是为了好听而已……
未完成稿件的一部分,泄漏于yyyy-mm-dd……现在修改并公开……
|
|