作者:杨超
地址:http://sokoban.ws/blog/?p=111
西方文化中有迷宫的基因,从古希腊的神话Theseus and the Minotaur,到中世纪的教堂(最为著名的是沙特尔大教堂的地板迷宫)都有所体现。这里说的Theseus and the Minotaur 是Robert Abbott于1989年前后发明的一个迷宫难题。
Robert Abbott 是在1959年和《Scientific American》的编辑Martin Gardner通信介绍他自己发明的桌面游戏而被大众认识的。不过后来Robert Abbott的主要兴趣不在设计发明游戏,而是转移到迷宫上了[4]。
在1989年的时候,电子游戏产业已经有相当大的规模了。Robert Abbott的这个游戏Theseus and Minotaur是受到某些电子游戏的启发而设计的 (http://www.logicmazes.com/notes.html) ,但是却是以一种非电子的形式首先问世的。它以一个故事的形式最早发表在Robert Abbott 的书《Mad Mazes》上。《Mad Mazes》在1990年出版,Martin Gardner作序,全书有20个迷宫难题,Theseus and the Minotaur 是其中可能最成功和最著名的一个。我没有看过《Mad Mazes》原书,大概Robert Abbott 为他的每个迷宫难题都编了一个故事。Theseus and the Minotaur 是古希腊神话的现代版,后来这个故事和迷宫经过充实后于1994年再次发表于英国杂志《Games & Puzzles》。作者把后面这个版本全文放在自己的网站 logicmazes.com 上,地址是:http://www.logicmazes.com/theseus4.html
游戏规则是这样的:在一个迷宫里,Theseus每个回合走一步(包括停留不走),而牛头人Minotaur每回合走两步,并且每步Minotaur总是先尝试水平靠近Theseus,再尝试垂直靠近。游戏的目的是控制Theseus走到迷宫出口而不被Minotaur吃掉。若您的浏览器支持Java Applet ,可以先在线玩一玩(http://www.tnelson.demon.co.uk/mazes/index.html )。
1998年,当Robert Abbott建立他的个人网站时,他请Oriel Maximé帮他做了一个Theseus and the Minotaur 游戏的 Java Applet。1999年,英国人Toby Nelson看到后也对这个游戏产生了浓厚的兴趣,编写了新的Java Applet,并编写程序生成新的关卡。Toby新编了14个关卡,连同Robert的关卡一共15个。
Robert Abbott 一直声称具有该游戏的版权,任何人希望克隆(或山寨)一个类似的游戏,必须得到他的允许并付版权费(http://www.logicmazes.com/terms.html) 。
2002年,PopCap公司曾以Mummy Maze的名字发行过一款类似于Theseus and the Minotaur的游戏,游戏的人物变成了探险者和木乃伊,游戏也引入一些新的要素如有多个木乃伊的情况。游戏开始完全没有提到Robert Abbott的贡献,因此和Robert产生了一些纠纷。后来双方应该是私下解决了这个矛盾,Mummy Maze也在程序中补充了Rober Abbott 的贡献:Game Design: Jason Kapalks based on “Theseus and the Minotaur” by Robert Abbott.
PopCap出品的Mummy Maze有在线的Java Applet版和下载版。这两个版本现在网上都不太容易找到了,连PopCap的官方主页都没有。我用搜索引擎找到几处残存的,两个版本都试了一下。下载版的比在线版的画面要稍微好一些,如进入无解的局面还会提示。在Mummy Maze中,多了先垂直后水平移动的红色木乃伊,还有钥匙和门,一回合走一步的蝎子,探险者不能进入的致命格子等要素。下面分别是Java Applet版本和下载版的截图。
而我最早知道这个游戏是在2003年我的第一部手机西门子M55上,这个游戏以Wappo的名字出现,但是不知这个版本是否得到原作者的授权。
在原作者的主页上,提到的游戏的不同版本有四个。首先是Toby的Java Applet 版本,可以在线游戏。第二个是Kristanix Games在2007年底发行的下载版,在Windows, Linux和Mac下都有对应版本,共87关,带关卡编辑器。第三个是iPhone版。第四个最近才添加上去的,是2010年由一个芬兰人Carl-Petter Bertell开发的Android版。
2011年三月时,Android版的作者有一篇博客文章[3]介绍了他不太成功的作为独立游戏开发者的故事,这个故事主要是讲述他开发Android 版Theseus and the Minotaur的经过。
除了以上四款“官方”版本,还有Oleg Mazonka编写的一个开源的Windows版的Theseus and Minotaur [6],带有关卡求解和生成的功能,相当不错。
[2]文中称Theseus and the Minotaur is a puzzle that has been tremendously popular across the internet. 不过我觉得这有点夸大的这个游戏的流行度,最起码比起推箱子差多了。不太流行的原因有很多,而其中一个重要数学的因素是这个游戏是一个P问题,任何一个关卡可以用计算机轻而易举地解决。我觉得编写一个Theseus and the Minotaur 的求解程序甚至比在推箱子程序中实现一个箱子的推动路径搜索算法还要简单。我多次有强烈的愿望要编写一个Theseus and the Minotaur的求解程序,但是没有太多的时间。在考虑如何实现这个游戏的时候,我曾参看了一下Kristanix Games版本的Theseus and the Minotaur 游戏是如何保存关卡信息的,下面是一个截图。总的来说,我觉得这个关卡格式还不错,1表示左方有墙,2表示上方有墙,3表示左方上方都有墙,0则表示左方上方都没有墙。 Oleg 的程序也采取类似的格式。
写于2011年6月24日
参考资料
[1] Robert Abbott, http://www.logicmazes.com/
[2] Tony Delgado, COLUMN: ‘Beyond Tetris’ – Theseus and the Minotaur / Mummy Maze,
http://www.gamesetwatch.com/2007/02/column_beyond_tetris_theseus_a_1.php , Feb 12, 2007
[3] Carl-Petter Bertell, My Year as an Amateur Android Game Developer
http://kerebus.com/2011/03/my-year-as-an-amateur-android-game-developer/ , March 23, 2011
[4] Interview: Robert Abbott http://www.puzzlemonster.com/interviews/abbott.asp
[5] Toby Nelson, Theseus and the Minotaur (Java Applet)
http://www.tnelson.demon.co.uk/mazes/index.html
[6] Oleg Mazonka, Theseus and Minotaur [mazes]. http://mazonka.com/maze/index.html