伤害骰子使用说明
功能简述
- 伤害骰子系统是一套用于为简易普攻附加随机伤害波动而制作的功能
- 系统由 骰子面数 和 骰子数量 两个属性构成
- 在进行运算时,系统会进行 “骰子数量” 次随机,每次随机的范围为 1 至 骰子面数,随机结果为整数
- 完成全部次数的随机后,系统会将所有随机结果求和,附加到本次简易普攻的伤害中(在所有修正计算之前)
- 伪代码如下:
damage_append = 0
for i in range( 1 , 骰子数量 ):
damage_append = damage_append = rand( 1 , 骰子面数 )
使用场景和案例
使用场景推荐
- 伤害骰子系统适用于普攻时需要有伤害波动的游戏类型
- 一般情况下,在PVP类游戏或策略类游戏中,会需要通过伤害波动,带来随机性,来增加战斗变数,给与弱势方一定的胜利可能性,和增加需要临场变化策略的可能
- 常见的案例如:传奇、征途、war3、暗黑破坏神、剑与远征等
两种使用方法:平均分布和正态分布
- 平均分布
- 平均分布是大部分游戏中常见的随机方式,效果是在上限和下限之间,以平等的概率抽出一个整数
- 该方法的优点是理解简单,缺点是波动过大,很容易随机到上限或下限数值,影响体验
- 该方法的配置方式为:
- 骰子数量设置为:1
- 骰子面数设置为:上限 - 下限 + 1
- 基础伤害设置为:下限 - 1
- 正态分布
- 正态分布是war3中使用的随机方式,通过控制骰子数量,可以控制随机结果更趋向于平均,还是更趋向于集中在中位数附近
- 该方法的优点是可以控制降低上下限的命中概率,保证大部分时候体验稳定,但又不失随机性;缺点是理解上略微复杂
- 该方法的配置方式为:
- 骰子数量设置为:X(根据期望,数量越大,随机结果越容易为中位数附近数值)
- 骰子面数设置为:( 上限 - 下限 + 1 ) / X
- 基础伤害设置为:下限 - 1
不同参数下的伤害分布示意
案例1:骰子数量=1,骰子面数=10
案例2:骰子数量=3,骰子面数=4
案例3:骰子数量=6,骰子面数=3