迷惑游戏怎么玩
1、恶魔轮盘赌,虽然名字里带个赌,但是随着道具的加入,对玩家策略和概率计算的要求高了许多。最开始,我自以为直接随着带着一点理性计算的感觉走就没有任何的问题,认为这就是一个很简单的游戏;然后,我看到很多主非常脑溢血的操作,所以就有了写点简单的概率分析的想法。游戏上架并且还加了道具后,我感觉策略性更丰富了,值得唠嗑一下,所以就有了这篇文章。
2、计算获胜概率的算法非常简单,整个游戏的状态就是四个参数,你和大哥的血量,以及霰弹枪内实弹空弹的数目。但是,程序计算的结果让我实打实的吃了一惊:和我预想的完全不一样,下面也会提供具体的结论和算法,也算是给想凹分的大佬们提供点建议。反直觉的选择。
3、让我们从剧情模式,也就是第一次玩游戏连踹两门第一次见到大哥开始吧。第一次装弹:一实两虚。第一小回合无道具,纯粹的概率计算。很多人第一发都会直接朝着自己射击,大概是因为“空弹概率比实弹概率大,所以先射自己”。
4、但是如果你仔细想一下整个游戏的流程,你就知道第一发射大哥的优势比射自己大得多。假设我们先射大哥,如果是实弹那就非常爽,直接结束;如果是空弹,那么现在枪里剩1实1虚,大哥需要做出选择,此时无论打谁都是50%概率。我们计算一下先射大哥后,大哥中弹的概率:。1/3*1+2/3*1/2=2/3。
5、只要我们先射大哥,大哥就会有“两个回合”被枪指着,而我们只会有一个回合被枪指着,自然大哥中弹概率高很多。这也引申出这游戏隐性的一个资源,就是枪所指的位置的次数,下面就叫“枪指回合数”吧。最开始我以为只是把问题简化到这么简单以后,这个参数才显得比较重要,但实际上后面讨论的有一个很大的范围就和这个参数有关。在这里,我也先抛出一个结论:无论实弹虚弹的比例是多少,完全不考虑道具的参与,那么“无脑打大哥”就行,见下面的第三部分,
迷惑游戏怎么玩
1、无论弹比例是多少,先射对手的胜率不会低于0.5,经典的递归问题。不考虑道具,想计算最优解非常简单,这个问题也是一个很经典的递归计算的问题,或者高级点,这就是个动态规划问题,假设在我们先手的时候,我们获胜的概率为(,),参数分别为自己的血量、大哥血量、实弹数、虚弹数,那么显然有以下的等式:。公式写的很复杂,但实际上很简单,就是在开枪打大哥,第一行,还是开枪打自己,第二行,的两个选择里选获胜概率更大的那个。
2、当然,实际编程比这个要复杂,一个是需要状态压缩,不然递归深度可能很深,一个是要选择边界条件不然会无限递归。我是这么定义边界的:。
3、让我们看看,第一回合第二次装弹3-2的情况。第一回合已经有人挨了一枪了,看看此时的胜率:。第一轮自己挨了一枪。第一轮大哥挨了一枪。
4、可见,哪怕是最优解,也没有任何操作空间,一直朝对面开枪就行了。当然,如果第一回合中了一枪,为了节省时间还请直接重启游戏大哥嗜喝酒,在扎了肾上腺素以后哪怕你桌子上有华子也会去抢啤酒。本来我以为啤酒没有什么特别好讨论的点,所以在编程之前我一直犹豫要不要把这个简单的结果编纂成文,直到我得到了非常反我直觉的结果,我一拍大腿,这专栏的内容不就来了嘛。
5、先下结论:啤酒不能乱喝;喝啤酒有可能会减少你的胜率。因为我们定义了递归的边界,即当实弹用完时按照血量来决胜负,也就是说,当前枪内的实弹有两种情况,一种是实弹数目大于等于自己和大哥的血量之和,另一种情况是实弹数目少于血量之和,我们需要分别讨论:。为什么会有奇数偶数的区别。还记得之前提到的“枪指回合数”吗。