最容易出错的胜率计算
发表于2017-09-05
做主数值很多年,面过无数数值策划,咱不求那些高端大气上档次的数学模型,就来个最基础的战斗数值——平砍模型中的胜率计算——不夸张的说,这就能使无数数值策划尽折腰
有问题吗?
参与过类似测试的小伙伴们,看了本文有没有觉得背后一身汗呢?
属性 | 玩家A | 玩家B |
攻击 | 16 | 27 |
防御 | 5 | 10 |
生命值 | 120 | 100 |
闪避率 | 5% | 2% |
很简单,这是一个攻减防的战斗体系,并且没有先后手,闪避则完全免伤,求A对B的胜率
好吧,表里的数值是随机生成的,每次不一样,但是应该有不少读者遇到过这样的题目吧?
从玩家角度来分析,A除了闪避很高,生命略高外,攻防都和B差一个档次
接下来我们从数学的角度来分析这个问题:(此处感谢@木吉的指正)
A攻击B,要几下把B干掉呢?平均下来是这样的:100/(1 - 2%)/(16-10) = 17
B攻击A,要几下把A干掉呢?平均下来是这样的:120/(1 - 5%)/(27-5) =5.742
OK很明显,B比A要厉害很多啊!
接下来我们来算 胜率,当当当当!这里是大多数人的折腰点(每次看到这里我都会感叹不已啊!)
A对B的胜率,90%的数值策划是这样临场发挥的:17/(17 # 5.742) = 74.76%

来我们转到上文,看看玩家角度和我们的数学角度吧!
为什么比较弱的A会胜率比较高呢?
是不是不合理?
当然,计算公式错了嘛~
正确的公式应该是1-17/(17 # 5.742) = 25.24%
这就对啦!
为什么我会用那么简单而没有B格的问题来测试数值策划?
这完全不是一种侮辱,而是为了突出数值策划的两大职业操守:细心和自检
数值策划的日常工作并不需要在数学方面懂的太多,而是要细心细心再细心,任何不合理的地方都不能放过,而不是让玩家去给你挑错;
从不同的角度来自检是个好办法,一如上文所述,跳出来,从玩家的角度来看看,就会发现结果是错的;

注:#是加号,因为加号被屏蔽了