概率论在游戏中的应用
摘要:游戏作为生活乐趣的一部分,在设计时必须同时考虑娱乐性与平衡性。
许多游戏依靠巧妙的概率设计来解决这一问题。
本文通过对射击游戏,抽卡游戏,和策略类桌游三种游戏中简易概率模型的分析,体现了概率论在游戏中的应用。
关键词:概率模型卡坦岛射击游戏抽卡模型
随着人们对生活乐趣的追求,游戏行业也得到了迅速的发展。
手游,桌游和网络游戏具有优秀的作品出现。
好的游戏作品必须同时兼顾娱乐性与平衡性,既要有挑战,也要有鼓励机制。
一个好的概率模型可以解决这个问题。
一,射击模型
射击模型广泛存在在各个射击游戏中。
射击的精度通常由其炮弹及子弹的分布决定。
网络游戏《坦克世界》中,炮弹的分布为期望为0的二维正态分布,如图(1),正态分布的方差直接受火炮精度影响。
图(1),炮弹分布在两轴上的投影
炮弹在落弹圈中的分布情况是遵循高斯分布(正态分布)的,也就是说,炮弹飞向落弹圈中心处的可能性远大于飞向边缘处。
落弹圈大小的取值意义是标准高斯分布三个标准差σ处的累计概率。
换言之,99.73%的炮弹都会落在这个圈内,而由于三个标准差σ之外的部分被截平,因此,剩下0.27%的炮弹会落在落弹圈的边界上。
游戏中炮弹精度,单位是20密位(mil),也就是我们常说的百米精度。
一门炮的精度是0.32,表示它在100米处的落弹圈半径为0.32米,或者说直径0.64米。
也就是说,它的精度是6.4mil。
精度对炮弹的分布有着显著的影响。
图(2)即两门精度分别为0.32与0.50的火炮模拟射击1000次的结果。
可以看出,精度0.32的火炮炮弹分布明显优于精度0.50的火炮。
图(2)两门精度分别为0.32与0.50的火炮模拟射击1000次的炮弹分布
橙色:精度为0.50 蓝色:精度为0.32
二,抽卡模型
抽卡是目前手机游戏中非常常见的模型,也是游戏开发者鼓励充值的手段。
但各个手游中抽卡模型并不相同。
大部分游戏策划使用权值来配置随机概率,因为权值有个好处就是可以在增加随机物品时,可以不对之前的配置进行更改。
建立一个只含有两种卡牌的卡池,两种卡权值分别为5与95,显然,权值为五的卡更为稀有。
自己写python程序模拟:
pool = [0]*5 + [1]*95
result = [random.choice(a) for i in xrange(N)]
在样本pool中,保证了5%的出卡率。
模拟结果如表(1)。
表中显示的是分布概率图,X轴是目标卡牌出现的间隔数,Y轴是概数。
按策划的想法,5%概率应该等同于20次出现一次,那上图很明显并不满足20次出现一次出现规则,实际间隔从近到远呈下坡形状分布,就是说相邻的概率最大,间隔最大超过160,这与玩家所吐槽的抽卡体验是一致的。
从统计的意义上来说又是符合5%概率的。
所以这个问题,究其原因就是所谓的概率是统计意义上的还是分布意义上的问题。
表(1)出卡间隔的频数
这样的方案显然不满足玩家的心理需求。
我们通常理解的5%概率即出卡间隔主要在0~40间,且在二十附近比较密集,即一个接近正态分布的分布。
参考网络给出的方法,写出程序:NN = int(N*0.05)
mu, sigma = 20, 20/3.
delta = [int(random.normalvariate(mu, sigma)) for i in xrange(NN)]
即,每次成功抽出稀有卡后,给之后每次的卡牌堆都按照μ=20,σ=20/3正态分布加权。
运行结果如表(2):
表(2)改进后的出卡间隔的频数
这即是目前手游抽卡中比较主流的概率模型。
三,卡坦岛操作中的概率计算
卡坦岛的基本游戏方式是,每人依次在随机分布有对应权值的资源地图上选择己方村庄位置,每轮掷两枚骰子,在标有骰子数目和的地块上产出资源。
两枚骰子的和的分布非常明显:
P(X=2)=1/36 P(X=3)=2/36 P(X=4)=3/36 P(X=5)=4/36 P(X=6)=5/36
P(X=7)=6/36 P(X=8)=5/36 P(X=9)=4/36 P(X=10)=3/36 P(X=11)=2/36
P(X=12)=1/36
这是首先要考虑的。
在一个典型的对局中,资源的价值也不同。
首先考虑到资源产出的不均衡。
如图(3)所示。
图(3)一个典型的卡坦岛对局
小麦,木材,矿石,砖块,羊毛产出期望的比可计算为:11:9:11:13:14。
显然这时,标有10的森林价值就高于标有9的砖厂。
其次,考虑需求。
在游戏中,不同的资源的作用不同。
比如,获取胜利需要得10分,多数情况下,玩家平均需要建设8条道路,4个村庄,2个城市,获取6张发展卡。
如果要建成8条路,4个村庄,2个城市,4个发展卡,那么不难计算出需要资源的比例是,木:砖:羊:麦:矿=3:3:2.5:2.5:3,这是一个恒量。
这时资源又得到
了另一方面的加权。
此外,港口的存在与来自最长道路和最大士兵胜利点给游戏的节奏和思路带来了改变。
因此,这个游戏几乎是无法计算出最优解的。
四,结论
综上,一个好的概率模型能给游戏带来各种多样性,既能保证公平,也能使其有娱乐性。
因此,概率论对游戏行业的发展有着非常重要的作用。