13号避难所

 找回密码
 立即注册
搜索
楼主: 异尘客
打印 上一主题 下一主题

《辐射3》中的武器伤害与暴击

[复制链接]
跳转到指定楼层
楼主
发表于 2010-6-2 14:17:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本文部分资料来自The VaultGECK,部分数据查询自游戏源文件。敝人自己也做了一些计算和推测来修正结果。
转载请注明作者出处。
不管是辐射系列的新玩家还是老玩家,一定都对《辐射3》的伤害计算系统感到一头雾水吧:伤害到底怎么计算?玩家数值如何影响伤害?哪把武器杀伤最高?问题诸多,不一而足。有鉴于此,敝人作文为玩家解惑。

远程武器伤害

本文先从最基本的伤害计算谈起,在辐射3中,远程武器伤害的计算公式是:

远程武器伤害=Perk修正×武器基础伤害×伤害倍数×枪械状态惩罚×技能奖励+暴击奖励-敌方护甲吸收伤害

    [li]Perk修正   -   顾名思义,就是Perk对武器伤害的影响,例如Entomologist让武器对昆虫的伤害加50%,那么此时的Perk修正数值就是1.5(值得注意的是,一些药品增加的伤害也照Perk修正来计算,如妖怪肉)。[/li][li]武器基础伤害   -   这个不用解释了吧?具体的伤害要用GECK查。[/li][li]伤害倍数   -   系统计算伤害时所乘的一个常数,默认值为1。[/li][li]枪械状态惩罚   -   武器状态对伤害的影响,这一项的计算方式是:枪械状态影响伤害基数+枪械状态影响伤害倍数×武器状态;其中枪械状态影响伤害基数枪械状态影响伤害倍数在默认情况下是常数,其值分别为0.340.66。(注意:代入公式计算时武器状态要乘1,也就是说60%完好度在公式里要写成0.6。这点与下面的暴击率计算不同。)[/li][li]技能奖励   -   玩家技能(小枪,大枪,能量)对伤害的影响,具体计算方式为:技能影响伤害基数+技能影响伤害倍数×玩家技能÷100;其中技能影响伤害基数技能影响伤害倍数在默认情况下是常数,其值均为0.5。[/li][li]暴击奖励   -   暴击对伤害的加成,没有暴击的话就没有这一项。出现暴击时伤害的具体计算方式是:暴击Perk奖励×武器暴击伤害暴击Perk奖励就是指Better Criticals这样的Perk(貌似只有这一个?)对伤害的加成,武器暴击伤害则是武器本身的固有属性,需要使用GECK查询。另:暴击出现时无视敌方DR。[/li][li]敌方护甲吸收伤害   -   [strike]这一项的计算相当复杂,而GECK wiki上的公式几乎可以肯定是错误的,敝人一开始的修正结果是:(护甲等级基数+护甲等级倍数×护甲等级)×(护甲状态基数+护甲状态倍数×护甲状态),其中护甲等级基数护甲等级倍数护甲状态基数以及护甲状态倍数均为常数,默认值分别为0.2101;护甲等级即游戏中的DR。[/strike](俺用回归方程加实验数据推出的结果似乎不符合上述公式。因此这一部分等俺研究好了再谈。)[/li]

把这个公式的前半部分化简,就得到:

远程武器伤害=Perk修正×武器基础伤害×(0.34+0.66×武器状态)×(0.5+0.5×玩家技能/100)+ 暴击奖励

很容易看出此公式就是多个一次函数的乘积,下面利用这个公式来分析一个具体实例:
拥有Bloody Mess(伤害+5%),小枪100的张三使用90%完好度的胜利步枪(DMG40)攻击敌人,那么张三每次攻击的伤害就是:

1.05×40×(0.34+0.66×0.9)×(0.5+0.5×1)+0=39.23

(顺便一提,游戏中通过控制台得到的数据只能精确到小数点后两位)



最后再提一下身体部分对伤害的影响,现实中,人头部中枪是最致命的,其次是躯干,再次四肢。不过在《辐射3》中,
敌人头部中枪会有一个×2的伤害奖励,而其他部分的伤害是一样的。

有趣的是,
敌人打中玩家的头部并没有那个×2的奖励


另外在真正计算伤害时还要考虑到枪械的弹头数(霰弹枪),特殊效果(燃烧)等诸多因素,由于这只是篇基础文章,恕俺不作更具体的分析了。

近战武器伤害

和枪械伤害的计算不同,近战武器用的是另一个公式(空手也是):

近战武器伤害=Perk修正×武器基础伤害×伤害倍数×近战武器状态惩罚×技能奖励+角色近战伤害基础值+近战手臂状态惩罚)+暴击奖励

    [li]Perk修正武器基础伤害伤害倍数技能奖励   -   和远程武器伤害公式里的基本相同,不再叙述了。[/li][li]近战武器状态惩罚   -   和上面的枪械惩罚略有不同,这一项的计算方式是:近战武器状态影响伤害基数+近战武器状态影响伤害倍数×武器状态;其中近战武器状态影响伤害基数近战武器状态影响伤害倍数在默认情况下是常数,其值均为0.5。[/li][li]角色近战伤害基础值   -   这一项的数值会随玩家属性变化,基础值为:角色近战伤害力量倍数×(角色近战伤害力量补偿+力量值);其中角色近战伤害力量倍数角色近战伤害力量补偿在默认情况下是常数,其值为0.50装备等对近战伤害的影响加成其实是计算在这一项里。[/li][li]近战手臂状态惩罚   -   如果手臂受损或者残废的话,这一项就会对伤害产生影响,其计算方式为:武器基础伤害×(手臂状态伤害基数-1+手臂状态伤害倍数×手臂状态)÷2 其中手臂状态伤害基数手臂状态伤害倍数在默认情况下是常数,其值分别为0.20.8注意:这一项对伤害的影响最大只累积到10%。[/li]

同上,把这个公式的化简,就得到:

近战武器伤害=Perk修正×(武器基础伤害×伤害倍数×(0.5+0.5×武器状态)×(0.5+0.5×玩家技能)+0.5×力量+(武器基础伤害×(0.8×手臂状态-0.8)÷2)+暴击奖励


不过玩家在实际操作的时候没有必要使用这么复杂的公式,除了自动锯和自动斧以外的近战武器一般按照Pipboy上显示的伤害数值计算即可。

暴击率的计算

上文已经提到过,在计算武器对敌人造成的伤害时,有一点要考虑的就是这轮攻击有没有造成暴击,而在《辐射3》中,暴击出现的概率是以如下方法计算:

暴击率 = Perk修正×武器状态惩罚×基础暴击率×武器暴击系数+VATS奖励

    [li]Perk修正   -   还是顾名思义,Perk对暴击判定的影响。[/li][li]武器状态惩罚   -   武器状态对暴击是否成功的影响,此项的计算方式为:武器状态暴击倍数×武器状态。(注意:代入公式计算时武器状态要乘10,也就是说60%完好度在公式里要写成6。这点与上面的伤害计算不同。)[/li][li]基础暴击率   -   人物属性等对暴击率的影响,计算方式为:幸运值影响暴击率基数+幸运值影响暴击率倍数×幸运值,其中幸运值影响暴击率基数幸运值影响暴击率倍数在默认情况下是常数,其值分别为01。[/li][li]武器暴击倍数   -   武器的固有属性,具体的数值也要用GECK查询。注意:自动武器此项数值在计算时要除上射速,如突击步枪的暴击倍数为1,射速为8,那么其暴击率就是0.125。[/li][li]VATS奖励   -   默认状况下,使用VATS进行的攻击会自动增加15%的暴击率。[/li]

了解了这个公式,玩家下回就不会再对怎样提高暴击率感到迷惑了。

潜行暴击

《辐射3》中除了普通的暴击意外,还有一种特殊的潜行暴击,其出现条件非常简单:

潜行状态下的第一次攻击必然造成潜行暴击

而潜行暴击的伤害计算方法则是:

潜行暴击伤害=远程武器伤害×潜行伤害奖励

其中潜行伤害奖励的默认值为2;又由于暴击忽视敌方的DR,所以伤害计算公式的护甲部分被舍掉了。

Pip-Boy 3000中显示的武器伤害

这一部分目前尚未完成,不知2012前有没有机会....
实验数据,与其他内容无关:
名称
DAM
DPS
In-Game (100 skill+100 cond)
IG with SD
AsR
8
64
38
62
ChAsR
11
88
51
74
XuAsR
12
96
64
91
Mini
5
100
75
150


附录

上文公式中提及所有的数据皆可用GECK查询(Gameplay->Settings),为方便玩家,我在这里把各项数值的中文名与其GECK名共同列出:

伤害计算公式使用数据:
中文译名GECK中的名称默认值功能
伤害倍数fDamageWeaponMult1武器影响伤害的系数
枪械状态影响伤害倍数fDamageGunWeapCondMult0.34
计算武器状态对伤害的影响
枪械状态影响伤害基数fDamageGunWeapCondBase0.66
计算武器状态对伤害的影响
近战武器状态影响伤害基数fDamageMeleeWeapCondMult0.5
计算武器状态对伤害的影响
近战武器状态影响伤害倍数fDamageMeleeWeapCondBase0.5
计算武器状态对伤害的影响
角色近战伤害力量倍数fAVDMeleeDamageStrengthMult0.5
计算人物力量对伤害的影响
角色近战伤害力量补偿fAVDMeleeDamageStrengthOffset0
计算人物力量对伤害的影响
手臂状态伤害基数fDamageArmConditionMult0.8
计算手臂状态对伤害的影响
手臂状态伤害倍数fDamageArmConditionBase0.2
计算手臂状态对伤害的影响
技能影响伤害基数fDamageSkillBase0.5计算人物技能对伤害的影响
技能影响伤害倍数fDamageSkillMult0.5计算人物技能对伤害的影响
潜行伤害奖励fCombatDamageBonusSneakingMult2
计算潜行暴击对伤害的影响
护甲等级基数fArmorRatingBase0.2计算DR对伤害的影响
护甲等级倍数fArmorRatingMult 1计算DR对伤害的影响
护甲状态基数fArmorRatingConditionBase0计算护甲状态对伤害的影响
护甲状态倍数fArmorRatingConditionMult1计算护甲状态对伤害的影响

暴击率计算公式使用数据:
中文译名GECK中的名称默认值功能
武器状态暴击倍数fWeaponConditionCriticalChanceMult0.1计算武器状态对暴击率的影响
幸运值影响暴击率基数fAVDCritLuckBase0计算幸运值对暴击率的影响
幸运值影响暴击率倍数fAVDCritLuckMult1计算幸运值对暴击率的影响
VATS暴击率加成fVATSCriticalChanceBonus15在游戏中使用VATS射击将自动增加15%暴击率


此外,上文提过俺还没有研究透DR对伤害的具体影响,下面俺把自己的实验数据贴出来,有兴趣的玩家可以共同探讨:
对敌方进行伤害为9的攻击:
敌方DR
敌方所受伤害
伤害吸收率
12
3.95
0.57
25
3.37
0.63
50
2.25
0.76

对敌方进行伤害为7的攻击:
敌方DR
敌方所受伤害
伤害吸收率
12
2.97
0.58
25
2.53
0.63
50
1.68
0.75

接下来是俺用上表数据推出来的回归方程:

伤害吸收百分比=51.24+0.475×DR



最后总结一句:敝人不是游戏开发者,也不是啥Mod高手,所以上文有错误是正常的,欢迎大家批评指正。
沙发
 楼主| 发表于 2010-6-2 14:18:57 | 只看该作者
自爆沙发求可乐
板凳
发表于 2010-6-2 14:24:18 | 只看该作者
自爆沙发无奖励
地板
 楼主| 发表于 2010-6-2 14:26:33 | 只看该作者
5#
发表于 2010-6-2 14:34:37 | 只看该作者
围观技术流
6#
发表于 2010-6-2 15:12:37 | 只看该作者
第一次看见异尘客在这里发新帖~可乐支援~
7#
发表于 2010-6-2 15:19:37 | 只看该作者
维基体。。。
8#
发表于 2010-6-2 17:29:32 | 只看该作者
最好给个实例,普通武器最高能达到多少,爆击率最高的武器能达到多少。
9#
发表于 2010-6-2 18:15:59 | 只看该作者
围观技术流……
10#
发表于 2010-6-2 23:32:29 | 只看该作者
越看越胡涂............
11#
 楼主| 发表于 2010-6-9 00:13:01 | 只看该作者
更新近战武器伤害计算
12#
发表于 2010-6-28 12:33:58 | 只看该作者
分析的相當的詳細啊~~~
13#
发表于 2010-6-28 12:40:32 | 只看该作者
技术贴是要顶的.

不顶没良心

不顶么几几
14#
发表于 2010-7-8 04:58:03 | 只看该作者
楼主真详细
15#
发表于 2010-7-13 09:19:00 | 只看该作者
16#
发表于 2010-7-13 10:15:51 | 只看该作者
强势围观  话说你时间够有多的
17#
发表于 2010-7-13 23:59:05 | 只看该作者
我一直觉得F3的护甲算的是百分比……
18#
发表于 2010-7-14 19:46:34 | 只看该作者
佩服LZ的态度~
19#
发表于 2010-7-14 20:04:31 | 只看该作者
引用第17楼vagranta于2010-07-14 19:46发表的  :
佩服LZ的态度~
佩服您的刷版...
20#
发表于 2010-7-17 00:46:46 | 只看该作者
异尘客是这个论坛唯一的数据党,也是唯一在这里看贴的理由。
这里真的是异尘余灌
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Archiver|13号避难所

GMT+8, 2024-5-1 07:51 , Processed in 0.077936 second(s), 12 queries .

快速评论 返回顶部 返回列表