植物大战僵尸吧 关注:576,082贴子:5,166,305

回复:春、曾,底线矿——以理论计算薄纱海量测试

只看楼主收藏回复

问一楼主以后会考虑计算裂荚火炬相关内容吗,比如三静曾+1裂荚火炬能否误伤无伤


IP属地:广东来自Android客户端49楼2022-09-09 10:25
收起回复
    太细致了。这个必须大大地膜拜。


    IP属地:北京50楼2022-09-12 20:13
    回复
      2026-01-27 01:53:35
      广告
      不感兴趣
      开通SVIP免广告
      夜 有 所 思


      IP属地:新疆来自Android客户端51楼2022-10-02 17:48
      回复
        关于四静曾守底(怎么又翻出来了)。
        首先这个被蹭的概率以我的能力是没法算出来理论值的,不过后来我转念一想,如果能把这个情形抽象出来,或许可以写个程序模拟?
        于是lz说干就干花了两个半天给它干出来了,不得不说还是比较简单的。


        IP属地:新疆来自Android客户端52楼2022-10-02 17:53
        回复
          这部分内容没打草稿,说一下大致思路吧。
          如上面正文所说的,曾的攻击存在浮动。所以很明显我们需要生成一串范围是186~200的随机数,模拟曾的攻击间隔;在此条件下加入第一至四发的相对命中时机。比如说本轮攻击间隔190,那么命中第一发就是190-74=116,第二发-28为88,…后面差不多。只要攻击间隔这个rnd确定了,其后的命中时刻就跟着确定了。


          IP属地:新疆来自Android客户端53楼2022-10-02 17:59
          回复
            需要注意的是我们模拟的是静曾,所以在它改变状态前的子弹发射倒计时是恒为0的,如果有僵尸进入其防区,曾需要等待本轮倒计时结束,然后从下一轮倒计时开始进行上面的攻击计算。


            IP属地:新疆来自Android客户端54楼2022-10-02 18:02
            收起回复
              所以为了避免从一开始就算成动曾,给程序加一个flag标志位标记曾的状态:1是动曾,0是静曾。


              IP属地:新疆来自Android客户端56楼2022-10-02 18:06
              回复
                再说说矿工。
                对这玩意儿来讲我们只用到它的两个属性,一是血量,二是啃食时机。俩都是常量,说实话也没啥好讲的。


                IP属地:新疆来自Android客户端57楼2022-10-02 18:08
                回复
                  2026-01-27 01:47:35
                  广告
                  不感兴趣
                  开通SVIP免广告
                  整个程序实质上是一个双层循环,内层每循环一次把游戏时间+1并做相应判定;外层是测试的次数。
                  内层循环这里我偷了个懒,如果351内命中达到15次就直接退出,否则等待时间增至352判定为啃食自动退出。


                  IP属地:新疆来自Android客户端58楼2022-10-02 18:13
                  回复
                    有一点忘说了,就是上面最近一张图上的话。我猜测,这个起始间隔可能会是很影响测试的一个参数。如果相对同步,那结果可能方差会偏大,如果相对分散(平均),也许结果会是一个很不错的范围。
                    我的程序在初始化随机数的时候生成了两个范围,一个是186~200,一个是1~200,可以说上面讲的两种都占了。前文说的起始间隔是后者,取值对应矿工站稳时曾本轮剩余的倒计时。


                    IP属地:新疆来自Android客户端59楼2022-10-02 18:26
                    回复
                      所以大体上就这样了。写完后我迫不及待把外层参数调到很大,比如说下面这张图。共计10万次测试,失败次数172,概率为0.172%。推测真实情况下的概率应该在1~3千分‰之间(废话
                      上述样本运行完花了我半个小时的时间,但感觉还能再压缩一下,毕竟我C艹水平不高。后续折腾一下看把代码发在哪个地方好,欢迎大佬优化。


                      IP属地:新疆来自Android客户端60楼2022-10-02 18:33
                      回复
                        没人看就没人看吧,至少发出来以后搬运有个来头也方便修改


                        IP属地:新疆来自Android客户端61楼2022-10-02 18:35
                        回复