嗨!大家好,我是小蚂蚁。
从今天开始,我将开启一个新的游戏,并且顺带着会写一个新的系列教程,这个游戏就是人人都知道的——俄罗斯方块。
我一直都在做消除类型的游戏,在所有消除类型的游戏里,俄罗斯方块可以称得上是“鼻祖”了,所以,不论怎样这个系列里都不能少的了它。
我特别喜欢俄罗斯方块创造者帕吉特诺夫对俄罗斯方块的评价:
谈到俄罗斯方块成功的奥妙,可能在于这个游戏非常简单,而且拼图的过程有“从混乱中寻找秩序”的成就感。
从混乱中寻找秩序可能是人的一种本能,这大概也是人们之所以喜欢玩消除游戏的深层次原因。
俄罗斯方块已经有那么多了,即使是在微信小游戏平台上搜索“俄罗斯方块”也能找到大把的同类型的游戏。为什么我还要去做一个呢?因为我觉得有些地方我还可以做的更好一点儿。是的,这就是制作一个游戏的原因,它可能并不是一个绝无仅有的创意,也不是一个光芒万丈的点子,只是因为我觉得自己还可以把它做的再好那么一点点,这就够了。
好了,下面就让我们来一起踏上这段俄罗斯方块游戏开发之旅吧!
在正式开始游戏制作之前,有一件事情是必须要做的,那就是先要对自己所做的游戏有一个清晰的了解。俄罗斯方块是一个很简单的游戏,但即使是再简单的游戏,我们依旧有必要对其进行清晰而详细的了解。
怎么样了解呢?先去玩一下。
这里是一个经典的俄罗斯方块游戏,长按识别上方的二维码,可以直接开玩。好了,现在你可以先暂停阅读,前去玩几分钟的游戏,因为我们对这个游戏太熟悉了,所以只需要几分钟你大概就能把小时候的那些回忆都找回来了。
现在,你玩过游戏了。试着来回答一下下面的这几个问题:
俄罗斯方块游戏的整个流程是怎样的?
俄罗斯方块中一共有几种不同形状的方块?
俄罗斯方块游戏的整体布局一共有多少行多少列?
有哪些形状的方块可以调整旋转?有哪些形状的方块不能调整旋转?
可以调整旋转的方块都可以调整几次?
好了,请回答一下上面的这几个问题。什么?一个也答不出来?没关系,这很正常。因为你刚才玩游戏的时候是以一个玩家的角度在玩游戏。现在,你需要切换成游戏制作者的视角,带着这几个问题,再去玩一会儿游戏,然后记录下你所观察到的答案。
如果让玩家带着寻找指定问题答案的动机去玩游戏的话,那么游戏的乐趣一定会大打折扣,可能很少有人想要再继续玩了,但是我们是游戏制作者,带着问题去玩游戏是必须要做的事。
游戏制作者应该具备一双能够洞悉游戏表象的眼睛,看到那些玩家所看不到的东西(数据,规则,原理)。即使是一个非常“简单”的俄罗斯方块,如果上方的这些问题,你无法通过观察得到准确答案的话,那你也是做不出来的。
今天的这篇教程,我们从第一个问题开始。先了解游戏的整个流程,在了解了流程之后,我们就能够找到着手点了。
如图,是俄罗斯方块的整个流程:游戏开始之后,会在屏幕上方随机的生成一个形状,然后形状开始下落,在形状下落的过程中,玩家可以对形状进行控制,例如左右移动,加速向下移动,切换形状的旋转。形状会一直下落,在下落的过程中需要进行“碰撞检测”,当形状碰撞到下方的任何一个方块时,则进行形状的“停靠”,“停靠”完成之后,接下要做就是消除判断,判断下方这些已经堆叠的方块是否有满足消除条件(凑满一行)的,如果有的话,则进行消除处理,消除完成后,上方的方块会下落进行填充,然后再次随机创建一个形状。如果没有消除,则进行游戏结束的判断,如果游戏结束了(堆叠到最上方),执行游戏结束的处理,否的话,继续随机生成下一个形状,进入下一次循环。
除了游戏开始和游戏结束两个节点,其余的时间游戏就是在不停的循环着中间的这个过程。
现在整个游戏的流程我们已经清晰了,接下来,只需要从流程的起点,依次的向下,实现每一个模块的具体功能,然后再把整个流程串起来,这样一个完整的俄罗斯方块游戏基本上就做出来了。
“老手”开发者和“新手”开发者之间有一个很大的区别,就是在开始出发之前,手中有没有一张清晰的“地图”,而这个游戏流程其实就是一张清晰的“地图”。新手开发者很容易在“地图”未完成之前,先一头扎进去,结果往往是东一头,西一头,最后越做越乱,一个简单的游戏或许还好,但是遇到一个稍微复杂一些的游戏,就会完全不知所措了。
如果,你在开始之前,有了上方这张游戏流程地图,那你大概就很难再迷失方向了,因为它会清楚而明确的告诉你,哪些地方你已经去了,哪些地方你还没有去,哪些地方应该先去,哪些地方应该后去。
如果你想成为一个厉害的游戏开发者,希望你能够具备“绘制地图”的能力。即使现在没有也没关系,这个跟做游戏一样,都需要刻意练习。
从今天就开始练习这项技能吧!一旦你熟练掌握了,对游戏的整个制作就会有更强力的把控,你会变得更加胸有成竹。
因为地图在手,天下我有。
我是会做游戏也会教你做游戏的小蚂蚁,想学习做游戏的话,关注我的公众号就对啦!