3669
需用时 07:20
你真的会玩《Hex FRVR》吗?

邮菜菜/编译)

《Hex FRVR》这个游戏,本质上是俄罗斯方块的六边形版本。当然,方块并不是往下掉落,而是需要你移动一些四联六边形图案,放到游戏的棋盘上,如果棋盘的某一排被填满了,这一排就能被消掉……

看起来挺简单?想玩好它可没那么容易。下面就是有关《Hex FRVR你可能不知道的事实。

《Hex FRVR》,和六边形网格游戏

“六贯棋”,以及约翰·纳什的“策略盗取”问题

“六贯棋”(Hex)是由丹麦数学家皮埃特·海恩(Piet Hein)在1942第一次发明的。

六贯棋有一个正六边形组成的棋盘,构成了四条边,相对的两边填上同一个颜色。双方轮流下,每次一方占领一处空白格,然后放上自己颜色的棋子。最先将棋盘属于自己的颜色的两边连成一线的一方为胜。

六贯棋没有平局,它总有获胜的一方。

而约翰·纳什在1947重新独立发明了这个游戏。他证明了先手玩家可以通过“策略盗取”的原则来保证自己“必定胜利”:因为先手玩家总是比后手玩家先下一个子。

我们假设后手玩家有一个“后手必胜策略”的话,先手玩家只需要从第二个子开始照葫芦画瓢就行了。也就是说,抛开第一个子,先手玩家能够把自己变成“后手玩家”,执行那个“后手必胜”策略。然而很明显,这是矛盾的。

所以结论是,如果没有其他规则干预的话,那么六贯棋一定存在一个“先手必胜”策略。

 六贯棋的棋盘,这里红方获胜。图片来源:mat.uc.pt

Agon是已知的最早使用六边形网格的游戏

看起来游戏中使用"六边形网格"原理似乎是最近才开始的。但据我们所知,Agon,同时也叫女王卫队(Queen's Guard),才是第一个应用六边形网格的游戏。

最先是在18世纪的法国出现的,由于其简单的规则和复杂的策略而广受欢迎。感受一下它的规则:每一个玩家都有一个女王和6位骑士,由玩家自行决定由谁先开始,然后轮流进行。每一轮,一名玩家可以将手上棋子移动一步。谁先到达六边形网格的最中点(在棋盘上最中心的皇冠),且需要保持女王在中间,外围环绕六名骑士,即获得胜利。

(可能是)最早的六边形网格游戏Agon。图片来源:mastersgames.com

《Hex FRVR》的设计花絮

矩形可以在网格间自由移动,但六边形不行

为什么Hex Frvr不做成像俄罗斯方块那样,从上往下掉的模式?

你没法在二维平面上把一个六边形塞进一样大小的六边形网格里。方形的俄罗斯方块当然可以,但比如说吧,在下面这个游戏里,不同形状的小块并不能像真正的俄罗斯方块那样“掉进去”——某个方向可以,但其他方向就不行了。六边形的“俄罗斯方块”没法这么干。

不过如果你实在想要这种感觉,你可以在设计游戏的时候把六边形小块变得小一点。另一个解决方案是让六边形的边缘有“弹性”。你可以想象它们是果冻做成的,然后“吧唧”一下挤进网格里。

实际上,这些  六边形俄罗斯方块是没法“往下掉”的。图片来源:gamasutra.com

“横”,还是“竖”?这不仅仅是审美问题

想象我们做一个六边形平面镶嵌的游戏。我该如何控制单位在六边形的网格里移动?这分两种情况:

“横着”(上下是六边形的两个角)的话,键盘的方向键布局将是“WEDXZA”,类似于WASD的移动方式。不过,如果是“竖着”(六边形的上下是两条边)的话,“QWEASD”也未尝不可。

横格更适合3D /等角透视,最下面一排离你“最近”,而上面一排离你“最远”。在这种布局中,比较高的“精灵”(游戏设计里,“精灵”是一个可移动的部件)不会掩盖它背后六边形的中心,而是盖住了两个六边形的边缘。这种排列更适合于上下纵深的视图。

如果你选择“竖”的排列,那么一个六边形和它“身后”的六边形在一条直线上。

对于一个n×n的网格,在显示的时候最好是“横向”的——这是因为我们用的显示器,是“横着”的。换句话说,横着更适合宽屏的视图,能够体现更平衡的行列比例。

 左边是横着排的六边形网格,右边则是竖着的。你可以这么看:左边六边形的中心可以连成水平的直线,右边则是竖直的。图片来源:gamasutra.com

六边形网格和“砖墙网格”

当你研究博弈算法,或者机械工程时,画一些六边形网格倒没什么。不过在纸上画好多六边形就不太爽了。当然,你可以打印出一些六边形网格的图像,不过当你灵光一现的时候,你也许需要快速地在纸上画一些六边形网格。

在这方面,矩形网格能够帮你做到,具体点说,是类似“砖墙”的那种网格(实际上,梯形也可以,不过也比较难以绘制。)你能很容易很迅速地绘制它,而且砖墙网格依旧能够捕捉到六边形网格里所有的拓扑信息:每块砖有六个“邻居”,连接规则是相同的。

如果你想设计一个六边形网格的游戏,那么砖墙网格应该挺适合草稿阶段:一块砖的周围就有六个砖。图片来源:gamasutra.com

六边形网格的原理与设计

三角形网格是六边形网格的“对偶网格”

这意味着,在任何一个三角形网格的“顶点”,而非“面”上进行的游戏,实际上是在六边形网格的“脸”上玩的。这个事实对游戏设计和算法设计都很有用。比如你玩跳棋的时候,逻辑上你不是在三角形网格上玩,而是六边形网格——想象一颗在棋盘中间的棋子,理论上每一步它可以有六种选择。

六边形网格可以作为三角形网格的基础

实际上你也可以反过来利用上面这一点:你可以对六边形赋予三种颜色,两种分别是三角形的颜色,第三种则是花色的,组成三角形的顶点。

如果你以前不太了解三角网格,你可能不会立刻意识到这在数学上简化了多少。三角网格一般比较“笨拙”,不太容易进行矢量运算来回答简单的几何问题。你很难计算“偏移”的运动矢量,因为坐标的换算将会很复杂。不过六角形网格和矩形网格就不一样了。

组成三角形网格的六边形有三种颜色:蓝色、黄色和花色。图片来源:gamasutra.com

拼接同一个图案,三角形拼图比六边形更好用

许多拼图游戏是这么设计的:使小拼图的边缘能够相互匹配,从而拼出更大的形状。

看了上面那条你应该能理解了:如果用六边形的话,你需要更多的小拼图。解决这一问题的一个方法是把拼图块从六边形改变为三角形,这可以大大减少所需的拼图数量。这种设计在电脑游戏里特别有用,而且玩家只会看到“拼出”的形状,完全看不到那些小三角形。

三角形拼图组成的棋盘。图片来源:gamasutra.com

六边形网格和数学

任何连接六边形网格中心的平行四边形的面积是个整数

在正常欧几里得向量空间里,一个平行四边形(x1,y1),(x2,y2)的面积是| x1y2 - x2y1 |

因此,如果所有的坐标都是整数,那么面积则一定是某个整数。假设一个平行四边形在一个正方形网格里,四个顶点位于四个正方形的中心(并将这些中心的坐标定义为整数)——你可以把整体想象成一个在直角坐标系里的平行四边形。如果对边平行着移动,这时平行四边形的面积是不会改变的。所以如果我们把整个正方形网格变成砖形网格——如果你还记得前面的内容的话——这在拓扑上其实是相当于一个六边形网格的。此时平行四边形仅仅是对边平行着移动了,所以面积也不变。因此,面积还是整数。

也就是说,平行四边形的面积能换算成“多少个六边形”。

如果你把六边形网格里基本六边形的中心连成一个平行四边形,它的面积总是等于若干个基本六边形。图片来源:gamasutra.com

正六边形“幻方”有且只有一个

你一定见过这个游戏,在给定的网格里填上数字,让横竖斜线上排列的数字之和相同——赋予数字魔力吧!不过,如果忽略翻转和镜像的话,六边形的“幻方”是唯一的(只由一个六边形组成的“网格”不算!)。

不过这里指的是“正常”状态:矩阵里的数字是从1开始的连续数列。不过如果你不在意这么严格的规定而从任一数字开始的话,倒是有更多的可能性。

每一排的数字加起来都等于38,这就是魔力六边形。图片来源:gamasutra.com

你不可能对一个六边格进行以下的涂色:只用两种颜色,而且相邻的颜色必须不同

你可能听说过“给一张地图涂色,相邻的格子不能是同一种颜色,求最少需要几种颜色”这类问题。对于六边格图形,只有两种颜色的时候你是没法做到的。但是,任何更多数量的颜色类型则都能办到。三色图案常用于六边国际象棋,不过里面的“象”多了一个。国际象棋里,“象”只能斜着走,也就是需要始终保持在相同颜色的格子里。而这种六边国际象棋的棋盘,有三种颜色,这里的“象”依旧只能在同一种颜色的格子里走。

你需要最少三种颜色对六边形网格进行涂色。图片来源:gamasutra.com

其他六边形平面镶嵌图案只有三种

平面镶嵌是指同一形状的多边形,重复排列可以形成一个完整的平面。除去正六边形和展长六边形,凸六边形镶嵌图案只有三种,条件是这样的:

角A + B + C = 360度, a = d

A + B + D = 360度, a = d, c = e

A = C = D = 120度, a = b, c = d, e = f

如果是五边形的话,目前还没人能找出所有的五边形平面镶嵌图案。我们知道的至少有14种,但很可能还有更多的类型。

三种六边形镶嵌图案。图片来源:gamasutra.com

关于六边形的更多花絮

乐高有六边形积木

实际上,有两种。一种是封闭的,只有短边凸出来,是六边形的角。而另一种则是六边形的对边连接而成。它们可以搭配正常的长方形乐高一起使用。

这些奇异的六边形积木给有趣的设计提供了想象的空间。这两种类型的积木是这样的:

两种六边形乐高积木,它们能产生不同的效果。图片来源:gamasutra.com

六边形网格结构可以满足火星建筑的需要

是的,不只是蜜蜂使用六边形造房子。

这个房子被称为“女王B”,这种设计是用来保护人类免受火星的天气和辐射影响的。建设的功能列表挺齐备:它有一个全功能的厨房,2间浴室,2间卧室,还有花园,三维打印实验室,休息室,洗衣房,和减压室/泥房作为标准功能。基本一应俱全。

它还有保温结实的屋顶,可以抵挡风暴和碎石的袭击。外面有可更换铀板,使房屋内的辐射水平保持安全。“女王”的六边形外观极富美感,这将对寻找有意愿的候选人和之后的任务有点帮助。

最后一点和游戏特别相关:六边形大楼更容易在旁边增加升级建筑。

火星建筑“女王B”的示意图。是挺像一个蜂窝的。图片来源:gamasutra.com

“球形”不能全由六边形组成

另一个事实是,如果想用六边形组成最接近球形的形状,你同时需要使用12个五边形。

有许多不同的方式用六边形和五边形组成球形,想想足球你就明白了。而化学家也通过这些形状和组合研究富勒烯的结构。

不过水杯状,圆环状甚至莫比乌斯带等形状都可以完全由六边形组成,有时候,你也能把一个圆环或圆筒做的看起来像一个球形。

全由六边形组成的圆环。图片来源:gamasutra.com

六边形可以用来伪装3D立方体

立方体在二维平面的等距投影是个六边形。把这个六边形分成为三个平行四边形,并且使用合适的阴影的话,它们组成的图案看起来能产生立体的效果。如果我们把四边形作为网格的元件,那么它其实是个菱形网格。而菱形网格也可作为六边形网格的基础。

你能在许多游戏中见到它。“Q*bert”是第一个运用这种技巧的游戏,在当时(1982年)创造出了不同寻常的3D效果,被人们广为赞誉。(编辑:Jerrusalem)

眼花了吗?头晕了吗?看到3D了吗?这都是正六边形产生的效果。图片来源:gamasutra.com

The End

发布于2015-10-16, 本文版权属于果壳网(guokr.com),禁止转载。如有需要,请联系果壳

举报这篇文章

Herman Tulleken

游戏设计师,“Gamelogic”联合创始人

pic