推箱子

(重定向自Sokoban

推箱子》是一款益智游戏,由日本Thinking Rabbit公司于1982年首次发行。之后其他游戏开发者争相制作仿制或衍生作品。致使推箱子成为此类游戏的代名词。游戏要求玩家在二维地图上把箱子推到指定地点,当中牵涉到大量的空间逻辑推理。该游戏在中国也叫推箱子。

日语写法
日语原文倉庫番
假名そうこばん
平文式罗马字Sōkoban

推箱子的规则

编辑
 
KDE内建的推箱子游戏KSokoban

第一个《推箱子》的游戏规则,则是扮演工人的玩家,以“推”的方式,推动箱子。可以在没有阻碍物(如墙壁等的阻碍物)的情况下,向的地方移动。将箱子移动到指定点,达到指定数量,即可过关。

但玩家移动箱子,有下列条件要注意:

  • 推到墙壁的箱子,玩家就不可以背对墙壁,把箱子推回到空处。即箱子只能以“推”的方式移动,不能以“拉”的方式移动。但如果玩家推至墙壁后,垂直墙壁的两侧没有阻碍物,则玩家可以朝这两个不同的方向推移箱子。
  • 一旦箱子被移动到角落,玩家没有任何方法再移动这个箱子。
  • 玩家不可同时推动两个及以上的箱子。假设工人面前有一个箱子,箱子的正前方又有一个箱子,则这两个箱子是不能推动的。

推箱子虽然规则简单,但要完美通关却需要不少技巧。首先,在开始移动之前,建议你花一些时间仔细观察整个地图的布局。注意箱子和目标点的分布,以及可能的障碍物位置。提前在脑海中规划出大致的推箱子路线,这样可以避免走入死胡同。

在推动箱子时,最需要注意的是避免将箱子推到角落或者紧贴墙边的位置。因为一旦箱子被推到这些位置,通常就无法再将其拉出来,这可能导致整个关卡无法完成。特别要当心的是两个箱子并排被推到墙边的情况,这往往会造成死局。

可以在线推箱子,可以设计自己的关卡。

科学研究

编辑

推箱子已经通过计算复杂性理论进行了研究。解决推箱子难题的计算问题首先被证明是NP难[1],进一步的研究证明它也是PSPACE完全的[2]

变体

编辑

基于基础的规则,有的游戏添加了数量有限的炸弹破坏墙壁方可达成目标;重力添加到游戏中;可以改变特性的墙壁、机关;可以收集的物品(原本是障碍物)。

参见

编辑

其他

编辑

参考文献

编辑
  1. ^ M. Fryers and M.T. Greene. Sokoban. Eureka. 1995, (54). 
  2. ^ Joseph C. Culberson, Sokoban is PSPACE-complete页面存档备份,存于互联网档案馆). Technical Report TR 97-02, Dept. of Computing Science, University of Alberta, 1997. Also: http://web.cs.ualberta.ca/~joe/Preprints/Sokoban[永久失效链接]

外部链接

编辑