TTK:开第一枪后,子弹全部命中,击杀敌人所需要的时间。TTK越短,枪械理论强度越高。
比如血量是100。
AK伤害是35,射速是0.108秒/发,它的理论TTK就是 (3-1)*0.108=0.216秒。
M4伤害是30,射速是0.095秒/发。它的理论TTK就是 (4-1)*0.095=0.285秒。
AK/M4 TTK对比
但在实际交战中,有很多影响实际TTK的因素,下面就来拆解一下,一颗子弹从发射到命中,中间会经历些什么。
子弹的一生
1.1 基础伤害
首先是常规的步枪,以大家最熟悉的M4A1和AK47来举例,在CF中,M4伤害是30,AK伤害是35,这5点的伤害,会拉开两个枪型的子弹价值cf狙击辅助准星,因为M4是4枪死,AK是3枪死,所以他们的子弹价值就是1/4和1/3的区别。
对步枪来说,每次开火的弹片数是1,但对于某些双持武器和霰弹枪来说,单次消耗的弹片数会大于1。
实际伤害=单发伤害*弹片数。
霰弹枪弹痕
1.2射速
每发子弹之间的开火间隔,间隔越小,射速越快,跟伤害共同组成理论TTK。
通常为了保持整体TTK平衡,射速跟伤害是此消彼长的。
1.3 距离衰减
随双方交战距离变远,伤害会随距离衰减。但在不同游戏中,衰减曲线需要匹配游戏关卡和枪械调性,并结合游戏3C来进行选择。
4种常用衰减曲线
分段衰减,优点是简单灵活,TTK稳定可控,可以精准控制距离区间的伤害,并确保衰减后的伤害是常数。
其余的三种,线性和非线性衰减曲线的选择,主要看设计目的。比如游戏鼓励玩家近距离对枪,那选择图3(非线性衰减-)的曲线,可以让枪械前期伤害衰减迅速,同时搭配游戏中各种加强角色身法的3C机制,如滑铲、翻墙、钩锁、枪托攻击等,最终玩家行为就会比较符合策划的近距离对枪预期。
HALO无限:钩爪近身
距离衰减也是区分枪系的重要参数,用来调控玩家的交战距离,影响玩家打法,比如拐角老六。
CSGO:电击枪
极限伤害距离,某些特殊武器,比如喷火枪,还会用极限伤害距离来控制武器的最远射程,是更直接粗暴的距离衰减。
CF葫芦娃喷火枪
虚线后的距离无法造成伤害
交战双方之间如果有可穿透物体,伤害也会存在衰减。从市面上主流的射击游戏总结起来看,需要考虑下面几个因素:
根据不同枪械确定其可穿透的材质(木头/石头/金属/玻璃/水面/冰块/草堆/人体)。
根据不同的材质,分别给定衰减倍率,同时配套给一个最大穿透层数来收敛。一般来说一个BOX算1层,例如一个木箱和一扇木门都算1层。
在不同材质衰减倍率的基础上,再加上厚度的计算,物体越厚,穿透衰减越大(CSGO引入了这个参数)。
穿透衰减除了用来区分枪系,平衡枪械强度外,还会影响玩家对局内信息的重视程度和续航能力。因为穿透会暴露枪线和枪声,大量消耗子弹。
游戏越鼓励穿透行为,玩家对信息越不重视,对续航的要求越高。所以不同游戏要根据自己游戏的需要,调控玩家的穿透行为。
1.4受击部位
子弹命中不同部位,伤害也会有区别。一般都会起码分为头、躯干、手、腿四个部位:
头部伤害>躯干伤害≈手部伤害≈基础伤害>腿部伤害
头:眉心/面/颈
手:腕/臂
躯干:胸/腹/背
腿:大/小腿
角色3P受击框
冷知识:手游上头部面积太小了,把头部受击框稍微放大点,降低爆头门槛,体验会更好!
命中不同部位会直接影响子弹价值和TTK:
从平衡性角度来说,所有角色的3P受击框应该一致。这里有两个设计方案:
在角色设计之初,就尽量贴合受击框,但是对美术同学会有限制。
参考R6的做法,为了保持命中一致性,在命中非受击框区域时产生一些不一样的视觉/音效。
1.5 护甲衰减
接着受击框,再讲讲防具:防弹衣/头盔。顾名思义,防具就是覆盖在角色受击框上的护甲,一般覆盖躯干和头部。
对于不同游戏来说,防具服务于不同的目的,但基本上都是射击游戏的标配。
子弹命中这些受击框的时候伤害会有对应的伤害衰减,直接影响TTK,以M4为例,是否穿防具直接影响是否能一枪爆头:
上面的图都是T-Pose,但实际局内的持枪动作各不相同。
比如上面两张图,在正面交战的时候,面对步枪玩家的3P更容易命中无甲的手部,而面对手枪玩家的3P则更容易命中有甲的胸腹,所以3P持枪动作在一定程度上也可以作为枪械的“防御属性”,同时进攻方也会采取不同的游戏行为去针对这种防御属性,比如偷侧身。
1.6 子弹飞行轨迹和速度
1.6.1 Hit-Scan
在传统巷战射击游戏,如CSGO和CF中,全都是激光射线,也叫做Hit-Scan。只要开火瞬间,激光射线跟敌人受击框相交,就算命中。可以理解为是一颗没有重力,速度无限大的子弹。
巷战游戏用Hit-Scan是因为地图小、交战距离短、预期TTK短,选用Hit-Scan更适合玩法。
CSGO:Hit-Scan
1.6.2Projectile
但随着现象级PUBG爆火,大地图BR逐渐成为主流,子弹也变成了有重力和飞行速度的Projectile。在大地图中,远距离对枪场景多,Projectile变成了射击体验的一部分。
1.重力下坠:根据双方距离,在目标上方开火。
PUBG:子弹下坠
2.飞行弹速:根据双方距离和目标移动方向,打提前量。
PUBG:飞行弹速
3. 远距离TTK由于飞行弹速的加入而变长,对游戏节奏和玩家行为有影响。
彩蛋1:伤害公式计算
TTK相关的参数有如此多,产生最终伤害之前会有伤害公式的运算。那必然会产生两个问题:
1. 伤害是否取整?
2. 公式运算顺序是否有影响?
首先要确定是否要取整。不取整的优点是会让数值设计的颗粒度更细,与设计预期更相符。但假如游戏中明明白白地告诉了玩家HP=100,并且每次命中还会飘数字,那么建议还是要取整,不然前端显示和后台运算不一致,会让玩家产生疑惑“为什么他打我99我就死了?!”
其次取整的规则,四舍五入、进一、退一,根据自己游戏需要选择。
如果不取整,那无须考虑公式运算顺序的问题。
但如果取整,何时取整就显得很重要,比如下面的表格,取整的时机会直接影响到最终伤害。
所以建议如果要取整,公式中间不要取整,全部用浮点计算,等实实在在算完之后,再最后统一取整(来自一个过来人,血的教训)。
彩蛋2:绝对数值空间
枪械的绝对数值空间其实就是枪械TTK允许减少的程度。这里举一个CF手游的例子。
M4A1-雷神的伤害比普通M4的伤害+1(31/30),那为什么AK47-火麒麟不+1(36/35)?
首先,假设火麒麟伤害是36,我们把各个部位的伤害算出来。
可以看到,M4伤害+1对子弹价值没有任何变化,如果射速一致,对TTK没有任何影响。
反观AK,命中4枪腿和命中2枪手+1枪躯干,都从不致死变成了击杀,对TTK产生巨大影响。
那后面能不能出32伤害的M4呢?显然不行,1枪爆头的M4,出了就凉了……
这部分就是玩家口中的“枪械稳定性”,由后坐力和散发组成。
枪械的理论TTK决定了枪械强度的上限,而弹道轨迹决定了枪械强度的下限,以及枪械实际TTK达到理论TTK的难易程度。
除此之外,弹道轨迹还有下面几个作用:
1. 锚定枪械受众,决定一把枪适合新手还是高手。
2. 枪械手感差异化的重要因素。
3. 在TTK基础上,调控玩家行为和枪械外网K/D数据的手感数值空间。
弹道轨迹一般包括两个核心参数:后坐力、散发。主流的弹道模型有两种:
1. CSGO、Valorant、CF:7形弹道
Valorant弹道
2. COD、PUBG:S形弹道
PUBG弹道
因为我工作内容主要是7形弹道,所以下面主要以7形弹道展开。
2.1 后坐力
首先解释一下压枪的概念:通过鼠标/手柄/划屏/陀螺仪等输入,去对抗后坐力的过程。
CSGO:AK47压枪轨迹
2.1.1垂直后坐力
垂直方向的后坐力,一般固定向上,所以垂直后坐力是经过练习后能够完全掌握压枪的参数。触发垂直后坐力时,Camera会也会向上旋转一定角度来模拟后坐力。垂直后坐力在打出第一发子弹后触发,并通过Camera上抬来影响下一发的着弹点。
仅触发垂直后坐力演示
2.1.2水平后坐力
水平方向的后坐力,概率左右偏转,所以水平后坐力是经过练习后能够部分掌握压枪的参数。跟垂直类似,触发水平后坐力时,Camera会水平旋转一定角度,并影响后续着弹点。水平和垂直后坐力共同组成了枪械的基础弹道骨架。
仅触发水平后坐力演示
2.1.3最大后坐力
7形和S形弹道的区别,主要体现在这里。对于7型弹道来说,必须有最大后坐力来限制弹道骨架;但对于S形弹道来说,则不一定。
(7形弹道) (S形弹道)
对于7形弹道来说,一般前5-8发子弹以纵向后坐力为主。之后达到最大纵向后坐力,然后只触发横向后坐力,并在最大横向后坐力的范围内,概率左右偏转。
而横向后坐力的这个概率,也可以玩出很多花样,也可以玩出很多花样,可以做出正7、倒7、T形等弹道,体现手感差异。
而对于S形弹道来说,可以没有最大后坐力,子弹足够可以达到仰角极限。
PUBG:不压枪扫射
S形弹道还可以引入分段的概念,不同子弹区间内的后坐力,可以设计成不一样,调控枪械的强势时期。
2.1.4后坐力修正
在开火过程中,后坐力不一定是固定的,基础后坐力有一个Base值,后续后坐力在Base的基础上加上一个修正值。这个修正值如果是正数,就会越扫越飘;如果是负数,就会越扫越准。这个主要看枪械定位,和游戏是鼓励点射还是扫射。
1P不同状态下的后坐力修正也不一样,一般1P速度越慢,后坐力修正越小。
像COD这种Locomotion特别强大的游戏,还会有滑铲、趴下、架枪等操作,也会对后坐力修正有影响。
(站立后坐力) (下蹲后坐力)
这里也可以根据不同枪系的定位特点,去设计手感差异,让一些枪适合站撸,一些适合跑打。
2.1.5点射机制
后坐力修正还会受到点射机制的影响,什么是点射机制?
Valorant中的点射机制
如上面的视频所示,点射机制就是:在冷却时间内再次输入开火指令,后坐力修正也会累积。直到在冷却时间后再开火,累积才会重置,表现就是视频中的速点会越点越飘。
累积值可以小于1,这样可以让累积值的颗粒度比后坐力修正值的颗粒度更细。
冷却时间越短,触发后坐力修正要求的手速越快;累积值越小,触发后坐力修正的子弹数越靠后。两种做法都会让枪械的点射手感更舒服,速点时的后坐力表现更稳定。不同的枪械可以有不同的冷却时间和累积值,灵活使用点射机制,可以塑造多样性的点射手感。
2.1.6后坐力恢复
后坐力恢复:在后坐力触发后,延迟于后坐力触发的Camera回弹速度,一般单位是°/秒,纵向和横向的恢复可以区分配置。
后坐力恢复对于点射和小连发非常重要,恢复速度越快,越精准。
(后坐力恢复慢) (后坐力恢复快)
但对于扫射来说,影响不大,因为扫射过程中基本上不会触发到后坐力恢复。甚至如果枪械的最大后坐力太大,准星恢复对下一次开火还会有负体验,压枪之后镜头会往下掉。
后坐力恢复镜头掉
针对这种情况,当玩家压枪时,可以减去对应的Camera角度再进行后坐力恢复,避免对下次瞄准造成影响。比如COD和B4B都做了类似的处理。
(不压枪恢复) (压枪恢复)
但在手游上要注意,如果玩家开启了陀螺仪,最好就不要对压枪做后坐力恢复处理,因为陀螺仪压枪后的手机回正,刚好可以把压枪的操作给抵消。
另外,后坐力恢复不一定会恢复到原点,比如PUBG的弹道,它是恢复到下一发子弹的落点,所以即使是点射也需要压枪。
PUBG后坐力恢复
2.2散发
讲完后坐力,接下来讲散发。
散发:基于后坐力骨架,着弹点一定区域内随机散布。所以随机散发是玩家完全不可控的。
2.2.1基础散发
散发分布是一个投影在场景里的圆,所以交战距离越远,散发对实际TTK影响越大。
散发概念示意图
但因为散发是一个玩家不可控的参数,所以如果散发分布过于随机,尤其是当散发的子弹出现在后坐力的反方向时,射击体验就会很差。所以我们要在混沌中创造秩序,给这个圆一定的角度,根据不同的枪械去收敛散发的随机面积。
不同枪系的散发面积收敛
收敛后的面积应该在后坐力的方向上,因为这样玩家在压枪过程中,同时也在把随机面积拉往Camera中心。经过长时间的练习,玩家能提前让下一发的面积处于Camera中心附近,让玩家觉得枪被他压住了。
这里需要注意,第一枪没有后坐力向量,所以第一发的散发面积是个整圆;同时第一枪如果不准,会降低瞄准和卡点的收益,甚至会让玩家觉得被吞子弹了,所以基础散发的Base值不能太大。(霰弹枪:我呢???)
2.2.2散发修正/点射机制
和后坐力类似,散发也有修正值,可以越打越散,也可以越打越准,任君选择。同时散发修正也可以受到点射机制的影响,速点越点越飘。1P不同状态下的散发修正也不一样,跟后坐力类似。
但跟后坐力有所区别的是:因为散发存在随机,不可控,所以策划想让这把枪跑打不准,你练多久都没用!所以P90,YYDS!全部起P90!这把继续RushB!
另外是否鼓励跑打也跟游戏调性有关系:
1.CSGO、Valorant强调爆破,信息博弈、技能道具施放DNF卡盟,不鼓励玩家大身位干拉,所以移动散发很大,站撸才能打准。
Valorant移动散发
2.COD强调激爽突突突,本身角色运动能力就强,那就钢枪战个痛快,移动散发较小;CF作为大盘向下沉版的CSGO,既保留了钢枪爽快,也保留了爆破的战术博弈,移动散发也较小。
CF移动散发
2.3整体弹道
后坐力和散发都介绍完了,一个完整的弹道就有了。
CSGO:AK47弹道
还是以7形弹道为例,前期的弹道主要压纵向后坐力,考验压枪技巧。
中后期弹道一直在最大横向后座力中间概率偏转,这里除了考验压枪之外,其实还提供了一个容错率,并且随着交战距离越来越远,角色的宽度占横向后坐力宽度的比例会越来越低,子弹覆盖范围会越来越大,但子弹命中的概率会越来越低。
最大横向后坐力形成的容错率区间
最后加上散发,调控枪械命中率。
从长期的练枪收益上看:
1.纵向后坐力:能完全掌握
2.横向后坐力:能部分掌握
3.散发:无法掌握
所以,针对高玩,要提高压枪难度和上手门槛,但可以通过长期练习掌握,并尽量接近理论TTK;
而对新手玩家,要降低门槛,通过无法完全掌握的参数,控制实际TTK分布。
不同受众枪的数值分布
2.4准星
射击游戏必备,永远在Camera中心的视觉提示。
2.4.1准星颜色
准星默认颜色要根据场景的主色调来选择,玩家玩得最多的地图,比如CSGO的Dust_2、CF的沙漠灰、PUBG的绿岛。准星颜色跟场景主色调的辨识要拉开,所以CSGO和CF的准星默认颜色是绿色,PUBG是白色。
(PUBG默认准星颜色) (CF默认准星颜色)
2.4.2准星扩散
在开火后,准星中间的空隙会扩大,主要有两个作用:
1.作为开火手感延续的一部分,模拟武器开火后坐力以及回到待机动作的过程。
2.提示玩家散发随着开火逐渐变化的过程。
所以比较好的手感是:准星扩散速度与开火动作一致、准星缩小速度与开火后摇一致、散发面积与准星空隙吻合。
准星扩散开火后摇
2.4.3准星偏移
准星偏移常见于7形弹道,CF、CSGO、Valorant的弹道都有准星偏移的设计。CF里是通过准星下坠实现,CSGO和Valorant是通过着弹点上移实现。
CF准星偏移:准星下坠
Valorant准星偏移:着弹点上跳
可以看到在扫射到最大纵向后坐力时,下一发子弹会突然与Camera中心脱离,偏移一定的比例,着弹点此时会在准星的上沿。这个现象其实早在CS1.5时代就有,这样设计的目的和好处是什么:
1. 扫射到最大纵向后坐力之后,此时散发已经很大,准星也会扩散到很大,中间空隙过大导致准星已经有点失去了瞄准的作用。但是准星偏移后,着弹点在准星上沿,可以把准星上沿当作一个箭头的作用,指向性更明确,类似于PUBG的三角准星。
三角准星
2. 扫到最大纵向后坐力后,Camera不再上抬,只会左右偏转。因为横向后坐力存在概率,比较难压,所以玩家在扫到这个阶段时,都会去瞄敌人的爆头线,提高命中收益。而准星上沿,跟敌人的头部可以更好地重合,瞄准手感更好。
准星上沿瞄头
3. 准星的突然偏移需要玩家进行额外的突变压枪,难度更高。
对于大盘玩家,会鼓励他们在5-8发子弹时收枪cf狙击辅助准星,别直接跪倒30发,符合爆破信息博弈的游戏调性。
对于高玩,也深挖了压枪体验,不同的枪械可以根据散发有不同的偏移幅度。
所以不管这个准星偏移在CS1.5的时候是不是BUG,现在它已经演变成了射击体验的一环,所以在CSGO和Valorant中都保留了下来。
2.4.4准星自定义
上面的都是废话,因为准星自定义现在基本上是射击游戏的标配。不管你官配设计得有多好,萝卜青菜各有所爱,玩家说:“我自己调的才是最好的”。
CSGO和Valorant的准星自定义系统是最详细最专业的。
但准星自定义里有一个神器:准星不扩散。就是不管怎么开火,准星都不会变。
准星不扩散
不扩散的准星,从视觉感官上给玩家一种散发没有变大的错觉,对手感会有提升。并且如果是极致的不扩散准星,还可以清晰地看到弹痕特效形成的弹道轨迹,帮助玩家压枪。
但准星不扩散也有缺点,就是扫射到最大纵向后坐力之后,由于准星偏移,爆头线和准星之间的距离就不好掌握了。
准星不扩散下的压枪
Valorant给出了两种解决方案:
1. 再提供一个额外的外围准星,外围准星的间隔可以设置为常用枪械准星偏移的距离,偏移后用外围准星去压爆头线。
外围准星
2. 在准星偏移时,上边准星消失。准星消失不仅可以提示玩家准星偏移的时间,还防止准星干扰玩家观察着弹点。
准星偏移淡出