评论

两种俄罗斯方块的记分规则

两种不同的记分方案却能给游戏带来很大的不同。

在实现俄罗斯方块游戏的得分处理时,我上网查找了一下关于俄罗斯方块游戏得分计算的相关内容,但是,并没有找到能够简单清晰的解决我的问题的内容。

互联网的海洋里有着数以亿计的比特信息,但是却唯独找不到能解决你当前问题的有效信息,哪怕是一个并不复杂的问题,不知道你是否也会经常遇到这种情况。信息如洪流滔滔不绝的从你的身边流过,但是却难以取到对你有用的那一瓢。

每当我遇到这种情况时,就会察觉到在信息海洋中盲目寻找终究是徒劳的,有些东西还是得自己干。

怎么寻找俄罗斯方块游戏的记分规则呢?最好的方式就是找一个俄罗斯方块游戏,然后边玩边记录,方法其实就是这么简单。

在玩过了几个不同版本的俄罗斯方块游戏之后,我发现了对于这个经典的小游戏竟然有两种差异很大的记分规则,我给它们起了两个不同的名字,一个叫做“简单平滑版”,一个叫做“高风险高收益版”。

简单平滑版

我们先来看一下“简单版”的记分规则。

每堆叠一个“形状”所获得的分数与等级成正相关,等级越高,堆放一个“形状”获得的分数越高,分数(S)与等级(L)的计算公式为:

S = (L-1) * 2 + 4

就消除奖励来说,一共只有 4 种不同的情况,一次消除的行数越多,获得的额外奖励分数越多。

这个版本的记分规则非常的简单,玩家只需要玩一会儿游戏大概就能够看出其中的计算方式,随着等级的提升,形状的下落速度会变得越来越快,同时叠放一个形状所获得的分数也会相应的增加。计算方式很简单,升级过程很平滑,所以我把它叫做“简单平滑版”。

高风险高收益版

接着来看一下相对复杂的“高风险高收益版”的记分规则。

如图,表格中的行表示的是“形状”当前堆叠的行号(俄罗斯方块一共有 20 行),表格中的列表示的是当前的等级。当前的得分(S)与堆放行号(R)和等级(L)的计算公式为:

S = L2+(R-1)*L

堆放的行号越高,放置一个“形状”所获得的分数越高,另外随着等级的提升,“形状”的分数也会大幅的增加。

堆放的行号越高就意味着距离顶端越近,GameOver 的风险越大,所以分数越高。另外,随着等级的提升,“形状”的下落速度越快,越容易 GameOver,分数也随着指数级的增长。

最后,如果玩家在游戏中使用了加速下落(按住方向键下,让形状快速的下落),则当前“形状”的分数在之前的基础上再乘以 2 。在之前的计算公式中增加一个变量 d (无加速下落时,d = 0;有加速下落时,d =1)。

最终的分数计算公式是这样:

S = (L2+(R-1)*L) *2d

只要 GameOver 的风险越大(堆叠的越高,等级越高,加速下落),所获得分数就越高,所以我把它叫做“高风险高收益版”的记分规则。

至于消除所获得的奖励,两者其实差不多。

这两种记分规则各有其优缺点,“简单平滑版”简单易于实现,但是整个过程过于平滑,缺少了风险和挑战。“高风险高收益”版,在游戏中提供了更多的风险和奖励供玩家选择,但是实现起来相对复杂一点儿。

目前,我制作的俄罗斯方块使用的是“简单平滑版”的记分规则,下个版本将会更新为“高风险高收益版”的记分规则。

因为,玩家喜欢在游戏中冒险。

关于俄罗斯方块的得分的计算属于游戏设计中的数值策划,这大概是最简单的数值策划。从中我们多少能够看出一些“关于数值策划都是干什么”的答案。

即使是同一个游戏,不同的数值计算方案却能够为游戏带来很大的不同。不得不感叹,游戏设计真的是一门很神奇的艺术。

小蚂蚁的俄罗斯方块小游戏已经上线,致敬经典,欢迎体验。

---

我是会做游戏也会教你做游戏的小蚂蚁,想学习做游戏的话,关注我的公众号【小蚂蚁教你做游戏】就对啦!

也欢迎加小蚂蚁微信(xiaomayi6669),交个朋友。

最后一次编辑于  2022-06-09  
点赞 0
收藏
评论
登录 后发表内容