FC超级马里奥不仅可以体验到超级有趣的冒险乐趣,还能考验你的超快反应能力哦!同时,游戏里还有很多有趣的改编版本等着你去解锁,让玩法更加多样化呢。操作起来简单到爆炸,只要控制好移动方向和跳跃就可以了。
FC超级马里奥起源
天堂的游戏机——FC,也就是咱们俗称的红白机,发行与1983年,而当时的首发护航的三个作品是《超级大金刚》、《超级大金刚2》与《大力水手》。
是的,其中并没有一款单独为FC而制作的游戏,他们全都是街机游戏的移植版。
直到2年后的1985年,由宫本茂为FC制作的游戏——《超级马里奥兄弟》的诞生,从游戏的角度而不是硬件的角度标志着家用游戏机的正式诞生。
有句玩笑话叫做,如果一个游戏类型满分是100分的话。
任天堂不是从0做到1的创造者,而是直接从0做到了99,剩下的1分由其追随者们互相补充。
《超级马里奥兄弟》便是任天堂一个从0做到99的样板。
FC的手柄有一个控制上下左右的十字键,A与B的常用控制键,以及SELECT的选择键与START的开始键。
而《马里奥》所需要用的按键,十字键的方向移动,A的跳跃,B的加速,SELECT选择1P与2P,START则用来游戏的开始与暂停。
如果说索尼、微软对游戏硬件的探索在于其堆叠与优化,毕竟我们从他们多年的手柄未有大的改变就能看出来了。
那么任天堂对硬件的探索则是在魔改,每一代游戏机的手柄都有各种大的变化。
针对不同的游戏机,来制作不同的游戏题材,发挥不同游戏机的特性一直是任天堂在游戏方向上的追求。
如何在一个只有方向与2个主要按钮的情况下来发挥游戏的乐趣同时也是《超级马里奥兄弟》所要探索的。
于是我们看到了答案——横版卷轴跳跃类游戏。
横版卷轴是技术限制与展现形式,而跳跃才是整个游戏的玩法,并且不仅仅只有跳跃对吧。
FC超级马里奥玩法
游戏一开始我们的马里奥在屏幕左边,右侧会有板栗仔缓缓向我们走来。
此时我们应该怎么办?
答案是查看游戏发售时附带的说明书,里面告诉我们游戏如何跳跃,以及通过跳跃可以击杀敌人等等。
这个时候我们就发现一个事实了是吧,原来新手指引在以前的游戏里是没有的呀!
但一个好的游戏设计,完全是可以脱离说明书,我相信许多玩过盗版马里奥的,包含我在内的玩家,玩这个游戏是不需要说明书的。
当你按住了A时,你发现可以跳跃了。
当你碰到板栗时,你发现自己死亡了。
当你跳到板栗头上时,你知道可以踩死板栗了。
所有的动作反馈都是极其直接与明确的。
当我们发现小马里奥顶不碎砖块时,那大马里奥呢?
游戏里的砖块这么多,会不会有隐藏奖励的砖块呢?
探索欲就是这样关联在一起了,你可以无脑冲,只为终点,你也可以在游戏里敲碎所有的砖块,下蹲所有的管道。
FC超级马里奥地图与关卡设计
《超级马里奥兄弟》的第一关的关卡设计一直被奉为经典,在于其在第一关就交代出来了整个游戏的全部玩法。
而在第一关的三分之一的进度里,也就是第一关大坑前,又把第一关所需要的所有玩法都交代出来了。
整个玩法与内容由明与暗两个方式交代。
闪耀的问号砖块是明,告诉我们顶砖块有金币。金币是好东西,则是利用游戏外的规则,也就是我们现实里的认知。
不闪耀的砖块是暗,告诉我们顶它也不会发生改变,也不会有任何奖励。
于是我们只能再顶第二个问号,得到了一个蘑菇。
我们的现实里的认知是,我发现的东西极其有可能是好东西,自然要去捡,这个顶到就是赚到的思路在《马里奥1》里不会有任何问题,不论是星星还是1UP的蘑菇,都是有益的BUFF。
直到2代了,才出现毒蘑菇,这又是另一个暗了对吧。
紧接着我们看到了更多明明暗暗的信息传递了出来。
三个水管,依次增高,第四个与第三个齐平。
引发我们知晓了长按跳跃键可以增加跳跃的高度。
两个蘑菇在一起可以连踩获得更高的分数,连杀奖励。
第四个水管如果下蹲就会进入到隐藏通道,出来后会进入到关卡的后半段。
不进去的话你或许会在瞎跳的时候得到1UP的隐藏蘑菇。
这里提供了路线选择与奖励判断,是缩短路程给你看起来很多的小奖励的金币,还是走全部路程,给你大奖励的1UP。
如果不捡1UP的蘑菇,那么蘑菇会掉入到坑里,然后通过物品的消失,暗示我们坑的危险。
当然你也很有可能着急捡蘑菇,按出了加速,然后因为惯性没有刹住车,掉入到了坑中。
游戏的玩法整理到这里基本上就算结束了,没有结束的是从基础玩法,向外扩展后的无数分支。
这种扩展往小了说,是一个游戏里的探索。
往大了说,就是一个系列的递进,到了《超级马里奥兄弟3》时,这2D马里奥的一个巅峰对吧。
游戏一共8个世界,每个世界4个关卡,一共32不同地图,这些地图包含了,绿色的郊外、阴暗的地底、翱翔的空中、翻腾的海里以及炽热的城堡。
在视觉上给玩家不同的感受,以达到视觉不要发生疲劳的目的。
FC超级马里奥炮台发射的规律
重要规律1:六个炮台计时器与炮台一一对应,且炮台按照载入的顺序依次占用第一到第六个炮台计时器然后循环,也就是说第七个炮台会再次占用第一个炮台计时器。另外若两个或以上的炮台位于同样的横向位置,那么按照从上往下的顺序载入。
重要规律2:从炮台计时器被占用起,炮台计时器的数值会从14到0不规律地递减,减为0后会再次变为14,每次从0变为14都会创造一个炮弹敌人并判断该炮台是否处于可以发射炮弹的位置(例如与马里奥的距离,以及是否在屏幕内),若可以发射,则将该炮弹敌人移入炮台中并让其向马里奥的方向移动。若不能发射,则1帧后该敌人消失。
现在我们知道了炮台发射炮弹的条件,但是最关键的炮台数值减少的规律依然是个迷,并且玩得多的人会有感觉,某些情况下炮台发射炮弹特别勤快,而有时候又半天射不出一个炮弹来,这里就涉及到敌人槽的问题了。
SMB1的敌人槽一共有五个,地址分别是000F、0010、0011、0012、0013。我一般都是用如下图所示的lua脚本来显示敌人:
其中每一行对应一个敌人槽,数值可以暂时不用管,明暗就代表了该敌人槽是否被敌人占用,非常直观。另外下面三行分别是道具(例如蘑菇、花)以及两颗子弹的数值。需要此lua脚本的可以看我的资料到我粉丝群的群文件内下载。
根据前面所说的伪随机性,若一个场景中不存在敌人,则炮台计时器的递减规律是确定的。但是这个递减规律与底层代码相关,除了实际测试来记录之外没有别的计算方法。我们所能知道的就是5-3之后的关卡炮台计时器的数值减少的速度比之前的关卡要快。所以我们把它排除在研究范围之外,主要来研究敌人对炮台计时器的影响。
重要规律3:前三个敌人槽会使炮台计时器数值的减少速度变慢,且三个敌人槽的影响互相独立。若三个敌人槽均被占用,则炮台计时器的数值停止减少。另外炮弹只会占用前三个敌人槽。这段可能比较难理解,我们举个例子:
假如第一个敌人槽不被占用,第二个、第三个敌人槽被占用的情况下在某一帧第一个炮台计数器减少了1
第一个、第三个敌人槽被占用,第二个敌人槽不被占用的情况下这一帧第二个炮台计数减少了1
那么第一第二个敌人槽都不被占用,第三个敌人槽被占用的情况下这一帧第一第二个炮台计数都会减少1
这些就是SMB1中炮台发炮规律目前的研究程度,可以说是在不涉及底层代码的情况下将其规律完全摸透了。至于如何应用,要写起来占用的篇幅可能比这篇文章更长,各位感兴趣的话可以自己尝试着研究一下。
这里提供一个上述规律的邪道应用方法供参考:前面提到若炮台不处于可发炮的位置,那么炮弹敌人就会出现一帧然后消失,这个闪现的敌人看似无用,但实际上因为炮弹只会占用前三个敌人槽,如果控制其出现的时机,可以把后方的敌人挤到后面两个敌人槽上避免其对炮台计时器的影响,从而使之后的炮弹提前发出