lie5860 / pseudo-random-distribution

伪随机分布算法

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

伪随机分布算法 (PRD)

算法来源

War3 概率性机能的触发算法

原理

为了不出现真随机时的过于不稳定,降低了起始触发概率,每次发动技能后,触发概率会有所上升,在一个长期的过程中,总体技能触发概率近似于期望值。
例如:剑圣的致命一击(15%几率对目标造成2/3/4倍普通伤害),经计算15%的 C 值大概是:3.2%(C 是个常量)。 那么剑圣第一次攻击有3.2%几率触发致命一击,如果没触发,概率就上涨3.2%,也就变成了6.4%,如果再没命中就再加3.2%,直到触发为止,触发后概率又回到3.2%,重新开始触发计算。

公式

P = C * N
P: 当次检测时的概率
C: 概率常量,通常低于期望概率
N: 检测的次数

使用

执行 npm run get-c -e=0.25 来获取期望概率下的 C 值
-e参数是期望概率,输入期望概率运行该命令后会返回一个 C 值
再执行hit-checker的命中检测算法就能进行命中检测了。

About

伪随机分布算法


Languages

Language:JavaScript 100.0%