最近有个叫弹一弹的游戏横空出世,它操作简单、画面动感,让曾经沉迷于跳一跳的社会闲散人员又一次倾巢出动。
打游戏最重要的是什么?就是要赢!经过了对游戏的系统研究,今天我就用几何学、统计学和刚体力学来为大家分析一下弹一弹的最佳策略。看完本文之后,保证你轻松弹上一万分,刷到好友排行榜前几名,连张小龙看了都要和你弹笑风生。
一、游戏的基本分析
1、这弹一弹究竟是咋弹的?
在给出策略前,我们首先应该知道球球究竟遵循什么样的运动规律。我们将一个球球弹来弹去的全过程做成轨迹图如下所示。
注:在我好几天前画好这张图的时候,弹一弹的界面还长这样……后来他们3天更新了4个版本,但是这张图我也懒得改了,让我们直接开始AMAZING吧!
AMAZING!这个轨迹清晰地显示了弹一弹世界的物理规律:
小球发射时是直线运动
小球一旦碰撞墙壁、数字等物体后,瞬间变为抛物线运动,最终在重力的作用下掉到底部
至于为什么小球刚开始完全不受重力影响,一碰到东西之后就突然具有了重力,这种诡异的物理学规律学术界目前尚无定论。
2、游戏中的物体分析
游戏主界面是一些圆形、方形和三角形的块块,每个块块的数字代表分数。此外还有一些非几何图案,作用各有不同:
注:这道具也改来改去的,此表制作日期为2018.4.29,下一次有啥元素就各凭本事琢磨吧!
这游戏最核心的玩法就是反弹,大家最头痛的点也在于不知道如何控制反弹的角度!经过仔细的测量,我发现球球的反弹大概是这样
上图丑归丑,但展示了深刻的思想
AMAZING!球球的反弹符合我们小学就学过的规律:入射角=反射角!
尽管球球反弹后会变成抛物线掉下去,但是在反弹的一瞬间,它的方向依然遵循入射角=反射角的规律。在后文当中我们将基于这一规律阐述弹球策略。
3、其他分析
鲁迅先生曾经说过,人们总是察觉不到缺少的东西。我相信很少有人发现,这游戏居然特么没有bgm和音效。
不信你去试试,真的没有。
这可能是因为如果有音效的话,一堆球球碰来碰去,整个游戏全程都会“吨吨吨吨吨吨吨吨吨吨吨吨吨吨吨”,挺烦人的。这会导致游戏无法在上课、开会等黄金时间进行。如果你在拉屎的时候玩,这种音效甚至可能引起隔壁坑的误会,这些显然都不是开发商所期望的。
此外,细心的同学还会发现,这游戏的块块颜色与我最热爱的彩虹配色有异曲同工之妙。但其中也有一条规律:越打到后面,数字越大,红色越多。
这主要是因为在心理学上,红色会引起人们的警觉与焦虑,比如红绿灯就是用红色表示停止。游戏中后期红色变多,有利于增加人们的焦虑,促使玩家心神不宁,玩得越来越辣鸡,进而自取灭亡,只能靠看他们的广告复活,达成开发商的赚钱终极目的。
比如这是我昨天打的一局,其焦虑程度不亚于我前天坐在马桶上听到送外卖的敲门却发现手边没纸了。
二、胜利的统计学法则
我们都希望让有限的球球尽可能多地反弹,否则后期必死无疑。那么如何才能在下方数字越来越多、越来越大的情况下苟活?我昨天玩了整整一个下午,统计出了这样的规律。
下图中,红色的线代表随着回合数的增加,所有的块块分数之和。蓝色的线代表我实际打的分数。两条曲线都大致符合二次函数。
从这张图就可以看出,我应该打掉的分数和我实际打掉的分数的差距在越来越大……直到死亡……
随着回合数的增加,我的球球数量也在增加,如下图。大概只符合线性增长。这特么就没法玩了啊……
下面我们来计算一个大家最关心的问题:打到后期,一个球球至少要反弹多少次,才能维持苟活?(以下为理论推导,文科生可跳过)
随着回合数n的增加,场面上累积出现的分数之和为上述的二次函数拟合,其结果形式为y=an^2+bn,a=2.6040,b=-25.355,R^2=0.996。我手中的球数为线性拟合,其结果为y=0.6065x,R^2=0.998。
在n充分大后,在第(n+1)回合新出现的分数为y的差分,即a(2n+1)+b=5.208n-22.751;而手中的球数为0.6065n+0.6065。两式相除即得这一局每个球应该得的分数z。
z=(5.208n-22.751)/(0.6065n+0.6065)≈8.6
AMAZING!经过这一通乱七八糟的计算我们得出了弹一弹游戏的精髓。
弹一弹苟活定理:在弹一弹游戏中,后期必须保证平均每个球至少命中8.6次,才能勉强苟活。
大部分人在弹一弹中都在几千分左右死得稀里糊涂,觉得这游戏就像人生,总有一些过不去的坎。然而统计学告诉我们,你人生那些过不去的坎,全踏马是程序猿安排好的……
下面就让我们来谈一谈弹一弹的最佳策略,让大家反扼住程序猿命运的咽喉!
三、游戏的策略
1、目光长远法
在弹一弹中,你只能控制第一个球球打的方向,后面的都是听天由命。但这就要求我们要树立大局观,把反弹次数多放在第一位!许多人一看到有块块逼近屏幕上端就心浮气躁,这是要不得的。下面给个经典反例:
为了救一个1,后面的全浪费了。这种不勤俭节约的玩法必死无疑!不拘泥于1分,着眼于大局,才是这个游戏的核心奥妙。
显然,此时应该这么打
总之,上小下大先打下,上大下小你要挂。大家切记切记。
2、墙面反弹法
前边我们说过,控制反弹是玩好这个游戏的核心。在游戏界面中,有一个不容忽视的反弹面——墙。真正的高手都会通过墙面反弹,实现小球的二次发射,活动范围更广,行动也更灵活。
利用我们小学五年级时学到过的光的反射定律,我们可以这样操作。
我们来看一下实战演练
不过实际上并没有这么简单,小球在撞墙后会开始受到重力的影响导致轨迹往下偏,所以我们瞄准的时候需要把反弹点往上微调。
文科同学们看不懂也没关系!总之照着我上面动图里操作,再稍稍往上移动一点就可以了!
3、寻找真窝法
我问过周围优秀玩家的游戏秘诀,他们统一回答:往块多的地方直接一通乱撸。这话虽然不太文明,但其实背后蕴含着朴素的道理:系统越封闭,小球越不容易逃出,相应的反弹次数也就更多。比如这样
一个半封闭系统
我们把这样的封闭系统定义为窝窝,这个游戏拿高分的要点就是寻找窝窝,把球扔进去,让球自己在里面弹不出来!
但窝窝也有陷阱,像下边这个就让人很想。
一个假封闭系统
看似围成一圈,但实际相差甚远!因为窝窝的精髓在于其内部的边要围成一个圈。
如果用了以上方法还是刷不高,我最后还是建议大家用删除好友法吧。删到朋友圈里只剩下手残好友,保你周周冠军
一个奇怪的彩蛋
我今天突然在思考一个问题:弹一弹这个游戏究竟发生在一个怎样的世界上?
解决这个问题的关键在于重力!如果能知道这个游戏世界中的重力加速度,就能大概推测出球球究竟在哪个星球上。我们分三步计算这个问题。
1、球球的初速度
打出一个球球,录制手机屏幕,画出球的轨迹,找出球球的在图片上的像素坐标,用y=ax拟合,斜率即为初速度。
2、重力加速度
打出一个球球抛物线,录制手机屏幕,画出球的轨迹,找出球球的在图片上的像素坐标,用抛物线拟合,求出重力加速度。
3、一个换算
上述计算都是基于手机屏幕图片,然而这样算我们就是默认了这个球和屏幕上看着一样大,这显然不科学啊。难道一个炸弹一个冰淇淋只有手机里几毫米这么大吗……
屏幕上的这个冰淇淋是100.4个像素,约0.987 cm。现实生活中的冰淇淋大概是11 cm长,大概是游戏中的11.1倍。
因此实际上,弹一弹世界的重力加速度应该是
g=0.334 x 11.1=3.72 m/s2
这真的是AMAZING啊!众所周知火星半径3397 km,质量6.42x10^23 kg。根据万有引力定律g=GM/R^2,火星的重力加速度为3.72 m/s2,这重力加速度的数据居然踏马和弹一弹里对上了???
就这样
我们突然用冰淇淋/斜抛/多项式拟合证明了
弹一弹这个游戏
是一个发生在火星的故事……
祝大家开工愉快!
你可能还想看
毕导我决定增大粉丝福利的力度啦!除了【留言区福利】外,今天开始会推出一个所有粉丝都不会错过的置顶抽奖活动,每月抽3名幸运粉丝,毕导脑洞补给包送送送!
只要在后台回复关键词【粉丝福利】填写表单,并上传置顶【毕导】截图,就能参与抽奖!每个月第二周的周五公布名单~每个月都可以填写新表单哦!