「明日方舟」攻击范围、碰撞体积与阻挡

「明日方舟」攻击范围、碰撞体积与阻挡

首页体育竞技汽车碰撞攻击更新时间:2024-08-03

文丨藤原白绮@bigfun社区

注,本文具有时效性


早露出来的时候啊,总有人问我,诶呀,早露的攻击范围包不包括她自身那格啊

经过我的一番调查,结果非常的amazing啊,早露是全游戏第一个攻击范围不包括自身的角色

你们看到的攻击范围是这样子的

实际攻击范围是这样子的

通过查阅2112行,高达26.8KB的代码,还有小学二年级我们就学过的row和col的横行竖列的规律,我们可以总结出以下的范围

感兴趣的同学可以去这个网站看看#链接地址

最中间的叉叉表示实体自身,而早露是唯一一个范围没有包含自身的实体

(图大慎点)

那有的小伙伴会问,你这3-7,明明就是真银斩啊,你这y-4,明明就是反重力啊,为什么写暂无呢?

因为干员模板里并没有直接写技能的范围,技能的范围在技能相关的模板里(废话),不过不知道为什么,原始冰晶和干扰装置还有原始流发生装置等等均和干员写在一起

那还有的小伙伴会问,你这怎么3-4和3-15一毛一样啊,这不是瞎搞呢么?

那是因为,我也不知道为什么,YJ就是这样写的,一毛一样,而且没有3-15的调用,不信的同学自己去上面链接看看

好的今天的课程就到这里,我们下期再见


那有的同学比较喜欢思考,抓住我问,诶呀,白绮,你这太麻烦了,直接摆在地上背面朝敌,看对面过来自己打不打不就完事了

可是远程干员在地上阻挡别人时,是不会攻击的

赫墨:你俩在干什么啊,快打啊,都打死四个了,身后这两还不打嘛

但是近战角色却会打后面

这种事情要怎么解释呢?

有的人说啊,近战干员的范围是闭区间,而远程干员的范围是开区间

这里盗用近卫局长_blast鱿鱼的视频截图

“开区间”学说没法解释这种龙黑同时输出的情况

那还有的人会说,这是因为近战位(melee)和远程位(ranged)不一样啊,干员范围肯定是闭区间,这样才能龙黑一起打,近战位之所以会攻击背后的,是因为他阻挡了敌人

这就有点摸到正确答案了

再接下来,我要介绍一个概念,碰撞箱(Collider)

在unity中啊,你所看到的干员小人都是刚体 (Rigidbody),倘若两个刚体碰撞,那么这两个刚体会互相穿过,视觉上看上去就会穿模

希望地板没事

为了不想让他碰在一起,就得加碰撞箱。minecraft玩家可能比较清楚,F3 B能看到的到碰撞箱

而在明日方舟中,干员也是有碰撞箱的,半径未知,其中伊芙利特最为特殊,比其他人小一圈,原因不明,但是很快(指开服13月后)被修复了

而敌人的攻击方式是从自己脚底下的正中心,向外扩出范围,只要你的碰撞箱进入了范围,就会被打

比如右边的大圆代表敌方术士攻击范围,那么除了最外面的打不到以外,其余两个都会被打到,而中间的同心圆中的小圆代表伊芙利特,由于判定范围较小,不会被打到

而自己干员攻击逻辑是敌方的正中心,敌进入了范围才会开始攻击

比如图上只有最左边的敌人才会被打到

至于强行挤开,则是沿着连线方向推开

敌人会在碰到干员前,就在干员前一个格子停下,被阻挡,而不会进入那个格子

倘若用的是强行挤开的话,结果又会怎样呢?

一通实验猛如虎啊,结果非常的amazing,敌人的位置判定就会进入一个薛定谔状态同时具有两格的判定

比如下图,通过让赫墨强行挤源氏虫,使得克洛斯能够攻击到虫子

不光如此,判定还会兼具两格

你可以用这个手法来试试投降先锋强挤反隐兵的操作

打开3-3,卡位置下极境,开技能,进洞

通过以上几个案例,我们可以总结出如下几点

1,干员都有碰撞箱,半径未知

2,敌我攻击逻辑不一样,我方一进入敌方范围就会被攻击,敌方的正中心需要进入我方范围才会被攻击

3,敌方被阻挡的时候会在前一格停下

4,通过强行挤开,我们能够让敌人进入薛定谔状态,能够让敌人位置同占两格

4.1,第四点不包括斜向等特殊情况,特殊情况有待实验


那有的同学又会说,白绮你讲了这么多,这都是远程干员,那近按战干员呢?照这个说法,我丢个塞雷亚,照你的第三种说法,虫子在被阻挡停下,按照第二种说法,虫子的中心在前一格,这不是打不到嘛。那为啥塞雷亚可以攻击?

这就不得不提小学二年级学过的目标选择器(Selector)

众所周知啊,干员都是先打离蓝门进的,无论敌人转圈圈转的多鬼畜(旋 转 木 马)

但是我们也知道,有些干员索敌逻辑不一样,比如对空狙,只要脸上有个肉的一批的寒霜,哪怕底下有个丝血原石虫他都不会管。

干员每次攻击,都会寻找攻击范围内权重最高的单位攻击,例如守林人找最脆的,史都华德找防御高的等等,为了不引起争议,这类权重往往拉的很大,和其他的尽量岔开一两个数量级

而近战位,干员都比远程位多了个被阻挡(Blocked)

目标选择器也只是把攻击范围里的目标一个个拿出来,判断哪个优先打。而这个玩意,即使敌人不在你的攻击范围里,近战干员也还是能打,而且优先级是最高的,因此也就是表现为近战位会攻击面前的敌人,而群卫也只是很简单的攻击数=阻挡数(limitedMaxTargerNumToBlockedCnt=True),描述却被YJ写的很复杂(同时攻击阻挡的所有敌人)……


引用文献

〔1〕Kengxxiao.明日方舟游戏数据〔DB/OL〕.2020-06-09

〔2〕近卫局长_blast鱿鱼.【干员评测 莫斯提马】〔Z/OL〕.2020-06-13

〔3〕StoneH_〔Z/OL〕.挤 你 实 在 是 台 没 Version 2.0.2019-11-08

〔4〕【明日方舟】运营组.[明日方舟]06月02日10:00版本更新停机维护公告〔EB/OL〕.2020-06-01

〔5〕Unity Technologies.《Unity5.x从入门到精通》 [M].中国铁道出版社.2015-11

查看全文
大家还看了
也许喜欢
更多游戏

Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved