找回密码
 开放注册
搜索
查看: 1845|回复: 4

rp2.1中 新伤害计算公式

[复制链接]
发表于 2010-12-26 14:39:17 | 显示全部楼层 |阅读模式
RP2.1的伤害计算由YAAM_readme.RTF说明文件可知,发生了翻天覆地的变化。由公式可知伤害计算更加复杂了,而且原来子弹提供的DR修正值被改为DT修正值,不再可能为负数。

以下为原文:

damage = max[int(total_damage) - int(modified_DR * int(total_damage)), 0]

total_damage = [(raw_damage - max(modified_DT, 0)) * modified_mult] / [dmg_div * 2 * 100]

modified_DR = armor_DR + [10 * min(modified_DT, 0) / 100]

modified_DT = armor_DT - ammo_DT

modified_mult = critical_hit_bonus * dmg_mult * combat_difficulty_modifier

raw_damage = random(damage_range_of_weapon) + 2 * (rank_of_Bonus_Ranged_Damage_perk)

armor_DR = the DR attribute of the victim's armor. Reduce by 80% if a critical hit is deemed to be armor bypassing. Add 30 if player has the Finesse trait.

armor_DT = the DT attribute of the victim's armor. Reduce by 80% if a critical hit is deemed to be armor bypassing, if the weapon has the Weapon Penetrate perk, or an armor piercing Unarmed attack was used.

ammo_DT = the DT mod attribute of the ammunition. This number replaces what was the DR mod of ammunition attribute in the vanilla game.

critical_hit_bonus = 2, 3, 4, 5, 6, or 8. A non-critical hit will always have a value of 2.

combat_difficulty_modifier = 75, 100, or 125. If the player is attacking, or the combat difficulty is set at Normal, this is 100. Otherwise, it is set at 75 if combat difficulty is set at Wimpy, and 125 if combat difficulty is set at Rough.

dmg_mult = the dividend of the Dmg Mod attribute of ammunition.

dmg_div = the divisor of the Dmg Mod attribute of ammunition.

rank_of_Bonus_Ranged_Damage_perk = 0, 1, or 2

damage_range_of_weapon = damage range of the weapon as shown by its attributes in the Inventory screen. For example, the 10mm Pistol has a damage range of 5 to 12 inclusive.
 楼主| 发表于 2010-12-26 15:45:18 | 显示全部楼层
以LSW 射击AD.POWER ARMOR为例,
条件:游戏战斗难度为中,无Bonus Ranged Damage PERK支持,无暴击伤害和特殊效果加成,只计算单发射击效果。


LSW:伤害为20-30

.223FMJ :dmg mod 为1/1,DT MOD 为5

AD.POWER ARMOR:DR为55,DT为15。

根据公式
则:
    rank_of_Bonus_Ranged_Damage_perk = 0; (无Bonus Ranged Damage PERK支持)
    dmg_div = 1;(弹药DMG MOD的分子)
    dmg_mult = 1; (弹药DMG MOD的分母)
    combat_difficulty_modifier = 100; (战斗难度系数加成)
    critical_hit_bonus = 2; (暴击伤害加成:无暴击为2)
    ammo_DT = 5;(弹药DT MOD)
    armor_DT = 15;(目标装甲DT 注:如有无视装甲效果出现,则乘以20%)
    armor_DR = 55;(目标装甲DR 注:如有无视装甲效果出现,则乘以20%)

    raw_damage = 30;(此处取LSW最大伤害,且无Bonus Ranged Damage PERK支持)

    modified_mult = critical_hit_bonus * dmg_mult * combat_difficulty_modifier = 2*1*100= 200;

    modified_DT = armor_DT - ammo_DT = 15 - 5 = 10;

    modified_DR = armor_DR + [10 * min(modified_DT, 0) / 100] = 55 +[10*min(10,0)/100] = 55;(此处的计算比较有趣,只有当弹药DT MOD大于目标装甲DT时,armor_DR才会被减少。由此更好的模拟穿甲效果)

    total_damage = [(raw_damage - max(modified_DT, 0)) * modified_mult] / [dmg_div * 2 * 100]
    =[(30-max(10,0))*200]/(1*2*100) = 20;

    damage = max[int(total_damage) - int(modified_DR * int(total_damage)), 0]
    =max[int(20)-int(55*int(20)),0] = 9;

由此可知LSW在以上条件下的最大伤害为9, 同理可得最小伤害为5

以上为计算详解。

    
   &#160S:私以为最后的计算公式    
    damage = max[int(total_damage) - int(modified_DR * int(total_damage)), 0]
    修改为
    damage = max[int(total_damage- modified_DR * int(total_damage)), 0]似乎更好,因为这样可以使伤害下限低的武器出现更多的变数。
 楼主| 发表于 2010-12-26 15:56:45 | 显示全部楼层
附表:

The following is a list of changed ammo protos:

Ammunition            Dmg Mod        DT Mod
Explosive Rocket            3/2            0
10mm JHP                      3/2            0
10mm AP                         1/1            4
.44 Magnum JHP            3/2            0
Flamethrower Fuel         3/4            0
14mm AP                          1/1            8
.223 FMJ                            1/1            5
5mm JHP                          3/2            0
5mm AP                             1/1            4
Rocket AP                          1/1            20
.44 Magnum FMJ              1/1            5
9mm Ball                           3/2            2
Robo Rocket Ammo        1/1            10
2mm EC                             3/2            9
4.7mm Caseless             3/2            7
9mm                                    1/1            2
HN Needler Cartridge       1/1            2
HN AP Needler Cartridge  2/1            5
7.62mm                                 1/1            2
发表于 2010-12-26 19:24:53 | 显示全部楼层
這只有在你選了要裝YAAM才適用....
沒選這個額外mod項目時還是照舊公式。
 楼主| 发表于 2010-12-27 01:13:38 | 显示全部楼层
其实 这个MOD装了以后,武器平衡性还是要修改的。没有完美的东西啊
您需要登录后才可以回帖 登录 | 开放注册

本版积分规则

Archiver|手机版|小黑屋|13号避难所-旧人类论坛

GMT+8, 2026-6-6 08:02 , Processed in 0.282403 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表