竞技游戏通常是拒绝随机性的,因为他干扰了实际水平的考量。但是,应对突发情况也是能力的一种表现。因此,在DotA 2中,有很多随机事件,这些随机事件降低了游戏的可预测性,增加了变数。为了限制这种随机性的影响,伪随机分布应运而生,取代了真随机分布。
定义
均匀或真随机分布描述的是那些不会根据之前的结果而有所调整的随机事件的可能性。这意味着每一次"随机"都是独立的。
伪随机分布(简称PRD)在DotA中用来表示关于一些有一定几率的装备和技能的统计机制。在这种实现中,事件的几率会在每一次没有发生时增加,但作为补偿,第一次的几率较低。这使得效果的触发结果更加一致。
效果发生的几率(简称proc)在第N次成功触发的几率为P(N) = C × N,对于每一个没有成功触发的实例来说,PRD系统会通过一个常数C来增加下一次效果触发的几率,这个常数会作为初始几率,比效果说明中的几率要低,并且是不可见的,一旦效果触发,这个计数器就会重置。
技术上,如果以X_i表示第i次事件发生,~X_i表示事件不发生,伪随机分布使用P(X_N | ~X_i for all i < N) = C × N。同样地,当C × N ≥1时,如果事件一直没有发生,那么第N次(N ≥ 1/C)事件必然发生。因此概率分布为P(X_k) = (1-C)(1-2C)...(1-(k-1)C)KC = k!C Π_{i=1}^{k-1} (1/i - C)。
比如
- 近战英雄上, 碎颅锤
的重击有25%几率对目标造成眩晕,那么第一次攻击,他实际上只有大约8.5%几率触发重击,随后每一次失败的触发会增加大约8.5%触发几率,于是到了第二次攻击,几率就变成大约17%,第三次大约25.5%,以此类推,在一次重击触发后,下一次攻击的触发几率又会重置到大约8.5%,那么经过一段时间之后,这些深海重击几率的平均值就会接近25%。
基于PRD的效果需要多次触发或多次不触发是非常罕见的,这使得游戏的运气成分大大降低,在Dota 2中一个有那么多带几率的技能的世界中增加了一致性,在游戏中,PRD很难被利用。在早期的游戏社区中,曾经有过通过在大战前攻击小兵但不触发暴击,从而提升在对英雄攻击时第一击产生暴击的概率,用于在对抗中取得先手优势,这种思路被俗称为“暖手”,但实际上由于暴击不可控,暖手成功率较低,因此实际这种战术意义有限,也并未流行。要注意一点的是,如果这个实例根本就不可能触发效果,那么触发几率不会增加,也就是说,一个英雄攻击建筑不会增加他下一次攻击触发的致命一击几率,因为致命一击对建筑无效。触发几率也不会在技能进入冷却时(比如重击)重置/增加。
在以下表格中,P(T)表示不会被使用的理论几率,P(A)表示平均几率,C是PRD常数,最大N值是根据C × N会超过1的性质得到的最大N值(也就是一定会触发的次数),平均N值是N的期望值,也就是N和概率的乘积之和,SD是N的标准差,一个用来衡量数据的离散程度,使用的是大家熟知的公式,标准差越低,几率就越一致,为了作对比,SDt表示真随机分布中N的标准差,使用N从1到264的简单公式,显然,他们都比PRD要高,因此他们的一致性就没那么高了。
百分比
P(T) | P(A) | C | 最大N值 | 可能性最高的N值 | 平均N值 | SD | SDt |
---|---|---|---|---|---|---|---|
5% | 5.0% | 0.00380 | 264 | 16 | 20 | 10.30 | 19.53 |
10% | 10.0% | 0.01475 | 68 | 8 | 10 | 5.06 | 9.50 |
15% | 15.0% | 0.03221 | 32 | 6 | 6.67 | 3.31 | 6.16 |
20% | 20.0% | 0.05570 | 18 | 4 | 5 | 2.43 | 4.48 |
25% | 24.9% | 0.08475 | 12 | 3 | 4.02 | 1.90 | 3.49 |
30% | 29.9% | 0.11895 | 9 | 3 | 3.34 | 1.54 | 2.81 |
35% | 33.6% | 0.14628 | 7 | 3 | 2.98 | 1.35 | 2.43 |
40% | 37.7% | 0.18128 | 6 | 2 | 2.65 | 1.17 | 2.10 |
45% | 41.8% | 0.21867 | 5 | 2 | 2.39 | 1.03 | 1.83 |
50% | 45.7% | 0.25701 | 4 | 2 | 2.19 | 0.91 | 1.62 |
55% | 49.3% | 0.29509 | 4 | 2 | 2.03 | 0.83 | 1.45 |
60% | 53.0% | 0.33324 | 4 | 2 | 1.89 | 0.74 | 1.30 |
65% | 56.6% | 0.38109 | 3 | 2 | 1.77 | 0.69 | 1.17 |
70% | 60.1% | 0.42448 | 3 | 2 | 1.66 | 0.63 | 1.05 |
75% | 63.2% | 0.46134 | 3 | 2 | 1.58 | 0.57 | 0.96 |
80% | 66.7% | 0.50276 | 2 | 1 | 1.50 | 0.50 | 0.87 |
真随机事件
平均分布
一些机制会在0到1之间产生一个随机值并在最小值 / 最大值的梯度中平衡,包括
离散分布
几个随机事件都具有类似的概率离散状态。
- 阵型中施法者和幻象的位置是随机的
- 攻击范围:300
间隔:0.25秒 - 弹射数量:3/4/5/6
弹射距离:475
尽管会优先选择英雄而不是单位,选择受伤的友军而不是没受伤的,但如果多个单位优先级相同,则会在他们之间随机选择 - 搜索距离:700
恶灵会随机选择他们的目标,一旦选择,他们就会跟着目标直到他们无法再攻击,恶灵优先选择施法者攻击的单位 - 目标数量:2
搜索范围:400 - 影响范围:250/350/450/550
攻击间隔:0.2秒
施法时已经决定了目标。但是攻击顺序是随机的。 - 每秒火箭:10
搜索范围:400
间隔:0.1
持续时间:3 - 弹射数量:4
弹射距离:500
间隔:0.25秒 - 攻击间隔因子:1.7
搜索范围:425
根据主宰的攻击速度斩击敌人 - 阵型中施法者和幻象的位置是随机的
- 变体精灵 - [[变体精灵#|]]64px|text-top|link=变体精灵#
- 变体精灵 - [[变体精灵#|]]64px|text-top|link=变体精灵#
- 阵型中施法者和幻象的位置是随机的
- 多重施法数量:1/2/3
多重施法距离:1400
间隔:0.4秒 - 多重施法数量:1/2/3
搜索范围:700 - 剃刀 - [[剃刀#|]]64px|text-top|link=剃刀#搜索范围:500
存在多个生命值相同的敌人,或在被Lua错误 在Module:Ability_ID的第61行:无法找到"静电连接"的Cargo数据连接了多个敌人时,会在他们之间随机选择
其他
伪随机事件
除了列出的技能之外,25%上下坡落空几率,和中立物品的掉落几率也是用伪随机分布。
英雄和单位技能
- 致命一击几率:20%
- 螺旋几率:17%/18%/19%/20%
- 致命一击几率:80%
闪避几率:50%/60%/70%/80% - 落空几率:30%/40%/50%/60%
- 重击几率:12%/16%/20%/24%
- 触发几率:20%
- 致命一击几率:20%/25%/30%/35%
- 落空几率:70%
- 残废几率:20%
- 触发几率:17%
- 触发几率(英雄):40%/45%/50%
触发几率(幻象):8% - 致命一击几率:30%
- 落空几率:25%/35%/45%/55%
- 重击几率:15%
- 减速几率:40%
- 触发几率:20%
- 缠绕几率:14%/16%/18%/20%
- 落空几率:60%
- 致命一击几率:9%/11%/13%/15%
物品技能
- 重击几率(近战/远程):25%/10%
- 格挡几率:50%
- 闪避几率:35%
- 格挡几率:50%
- 致命一击几率:30%
- 致命一击几率:30%
- 闪避几率:25%
- 穿刺几率:25%
- 闪电几率:25%
- 闪电几率:25%
- 闪电几率:20%
- 穿刺几率:75%
- 落空几率:17%
- 重击几率(近战/远程):25%/10%
- 闪避几率:15%
- 格挡几率:50%
版本历史
引用
|