简介
最近在ariXv上看到两篇有关增加解谜游戏趣味性的文章,我想要这儿贴上这两篇文章的主要内容,来和大家讨论一下。毫无策略地创建关卡,和使用策略创建关卡,对游戏的可解决性和趣味有什么影响呢?我们将借助计算机算法帮助我们解答这些问题。
一个有点不一样的消消乐
这是一个与大家平时玩的消消乐规则有点不一样的游戏。英文名称叫“Box-off”。它的规则很简单,每次选择两个相同颜色的方格,如果它们能够满足下面两个条件之一,就可以为它们打上消除标记:
- 它们两个相邻
- 它们两个处在一个任意长宽矩形内,并且除了它们本身,其它方格都已经被打上消除标记
当所有方格都被打上消除标记后,游戏胜利。
关卡设计
设计这个游戏的关卡,首先要保证它是可解的。例如下面两个关卡为不可解。
那么任意一个关卡,如何才能吸引玩家呢?Cameron Browne和Frederic Maire认为
- 玩家必须足够相信他能解决这个解谜游戏的大部分关卡
在上面这个表格中,第二行第三个方格种,第一列数字代表不同地图尺寸可以设计的总不同关卡数,而二列数字代表其中可以解决的数目,第三列代表可解决率。我们可以看到,对于不同的地图尺寸,可以设计的不同关卡数和其中可以解决的数目有很大不同。这样看来,4×5的尺寸相比于前两个是理想的。
2.如过这个解谜游戏可以通过不通过思考随便行动就能解决,那么这个游戏就对玩家毫无吸引 力。相反,如果一个解谜游戏需要每步都深思熟虑不容许出一步差错的话,那么这样也会对 玩家毫无吸引力。
第二点正是这两篇文章要探讨的东西。
两种不同设计方法的比较
随机生成地图
在这种方法中,我们对每一个方格都任取一个随机数,然后根据这个随机数决定这个方格的颜色。
这种方法生成的部分尺寸地图可解决率已在上文图表中列出。
L形格
我们可以考虑先随机生成一个L形的,包含三个小方格的”L形格”。保证其中两个相邻的方格颜色相同,而第三个和它们不一样。然后再将这些L形格随机摆放在地图中。上右图即为用此种方法生成的一种地图。
用两种算法来解决
我们使用前面提到的两种方法生成了上万张地图,现在我们使用两种不同的算法来尝试解决它们。第一种是随机算法,第二种是广度优先遍历(没学过计算机程序的同学可以理解为,随便瞎搞和使用策略)。
然后我们得到了下面这张图标。图中左侧是4×6的尺寸,共4中颜色,右侧则是6×6的尺寸,共6中颜色。shuffled代表使用第一种地图生成方法所生产成的地图,L-tiles代表使用第二种方法生成的地图。蓝色的代表使用随机算法的解决率,而红色的代表使用广度优先遍历的解决率。
我们可以发现,在这两种地图模型中,使用广度优先遍历算法都要比使用随机算法解决游戏的效率高出很多。根据之前在关卡设计中提到的第二点来看,虽然L形格设计地图的方法看样子变简单了,却比随机生成地图更加有趣了。因为,在随机生成的地图中,是否使用策略,其解决率的差异约为20%和0%,而在L形格生成的地图中,这种差异率差不多有60%和50%。我想我们知道这对玩家意味着什么。
总结
我们使用了Monte Carlo分析法来解决我们所提出的问题,这是一种使用随机性来解决问题的方法。我们可以看到,游戏设计方法的细微变化,都会导致游戏性的极大不同。随机生成地图虽然简单,但和使用了策略的L形格方法相比,后者更能在不牺牲趣味的前提下提高可解性。
参考reference:
1.Mark Goadrich & James Droscha(2019)”Improving Solvability for Procedurally Generated Challenges in Physical Solitaire Games Through Entangled Components”https://arxiv.org/pdf/1810.01926v2.pdf
2.Cameron Browne & Frederic Maire”Monte Carlo Analysis of a Puzzle Game”Monte Carlo Analysis of a Puzzle Game
杂感
欢迎大家前来讨论。虽然这篇文章实际用途可能不大,但其实我们可以发现,arXiv是个非常靠谱而有价值的论文网站。论文中的参考引用价值也非常大,里面还有很多有价值的地方。作者在github中其实已经给出了解决游戏的算法,改天我也自己整个算法来把这个游戏破解了。嗯~ o(* ̄▽ ̄*)o。研究游戏一样能研究出大师,曾经网上搜索很多如何策划数值的文章,主要内容居然几乎都是如何用excel制作表格。如果我们能多一些认真研究游戏的氛围,那么我们的环境也许会大不一样。
暂无关于此日志的评论。