推箱子》是一款益智游戏,由日本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[永久失效链接]

外部链接