Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Sokoban
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|1981 video game}} {{pp|small=yes}} {{italic}} [[Image:Sokoban_ani.gif|frame|right|A ''Sokoban'' puzzle being solved]] {{nihongo|'''''Sokoban'''''|倉庫番|''Sōko-ban''|lead=no|extra={{lit|warehouse keeper}}<ref>{{cite book |author1=Yoshio Murase |author2=Hitoshi Matsubara |author3=Yuzuru Hiraga |title=Automatic Making of Sokoban Problems |editor1=Norman Foo |editor2=Randy Goebel |date=1996 |publisher=Springer Science & Business Media |isbn=978-3-540-61532-3 |page=592 |url=https://books.google.com/books?id=j2QrFVEd2GUC&dq=sokoban+meaning+warehouse&pg=PA592 |language=en}}</ref>}} is a [[puzzle video game]] in which the player pushes boxes around in a [[warehouse]], trying to get them to storage locations. The game was designed in 1981 by Hiroyuki Imabayashi and first published in Japan in 1982. ==Gameplay== The warehouse is a grid composed of floor squares and impassable wall squares. Some floor squares contain a box and some are marked as storage locations. The number of boxes equals the number of storage locations. The player, often represented as a worker character, can move one square at a time horizontally or vertically onto empty floor squares, but cannot pass through walls or boxes. To move a box, the player walks up to it and pushes it to an empty square directly beyond the box. Boxes cannot be pushed to squares with walls or other boxes, and they cannot be pulled. The puzzle is solved when all boxes are on storage locations. ==Challenges and strategy== Progressing through the game requires careful planning and precise maneuvering. A single mistake, such as pushing a box into a corner or obstructing the path of others, can render the puzzle unsolvable, forcing the player to backtrack or restart. Anticipating the consequences of each push and considering the overall layout of the puzzle are crucial to avoid deadlocks and complete the puzzle successfully.<ref>{{cite conference |author1=Jean-Noël Demaret |author2=François Van Lishout |author3=Pascal Gribomont |title=Hierarchical Planning and Learning for Automatic Solving of Sokoban Problems |date=2008 |url=https://orbi.uliege.be/bitstream/2268/5895/1/bnaic2008.pdf |pages=1,2}}</ref> ==Development== ''Sokoban'' was created in 1981 by Hiroyuki Imabayashi.<ref>{{cite web |title=Thinking Rabbit - 1983 Developer Interview |url=https://shmuplations.com/thinkingrabbit/}}</ref><ref>{{cite web |title=My conversation with Mr Hiroyuki Imabayashi |url=https://sokoboxes.com/articles/my-conversation-with-mr-hiroyuki}}</ref> The first commercial game was published for the [[NEC PC-8801]] in December 1982 by his company, [[Thinking Rabbit]], based in [[Takarazuka, Hyōgo|Takarazuka]], [[Japan]]. [[Video game port|Ports]] and new titles for various platforms appeared in subsequent years. ''Sokoban'' was a hit in Japan, selling over 400,000 copies before being released in the United States.<ref>{{cite magazine |author=Lafe Low |magazine=[[inCider]] |title=News Line; Made in Japan |date=November 1988 |page=14 |url=https://archive.org/details/inCider_1988-11/page/n15/mode/2up}}</ref> In 1988, [[Spectrum HoloByte]] published ''Sokoban'' in the U.S. for the [[IBM PC]], [[Commodore 64]], and [[Apple II]] as ''[[Soko-Ban]]''.<ref>{{cite conference |author1=Austin Barr |author2=Calvin Chung |author3=Aaron Williams |title=Block Dude Puzzles are NP-Hard (and the Rugs Really Tie the Reductions Together) |page=1 |year=2021 |conference=CCCG (2021) |url=https://www.cs.ucf.edu/courses/cot6410/Spring2022/SampleTopics/Games/CLAIMED_JesseChehal_BlackDudePuzzles.pdf#page=2}}</ref> In 2001, the Japanese software company Falcon acquired the trademarks for ''Sokoban'' and Thinking Rabbit. Since then, Falcon has continued to develop and license official ''Sokoban'' games. ==Implementations== ''Sokoban'' has been implemented for almost all [[home computer]]s, [[personal computer]]s, [[video game console]]s and even some [[TV]]s.<ref>{{cite web |url=https://www.youtube.com/watch?v=PYZEjfrsRB8 |title=I Review the Game Built into My New CRT (Boxman)|website=[[YouTube]] |date=22 November 2020}}</ref> Versions also exist for [[mobile phone]]s, [[graphing calculator]]s, [[digital camera]]s<ref>{{Cite web |title=CHDK 1.5 User Manual |url=https://chdk.fandom.com/wiki/CHDK_1.5_User_Manual |access-date=2023-07-13 |website=CHDK Wiki |language=en}}</ref> and [[electronic organizer]]s. ==Scientific research== ''Sokoban'' has been studied using the theory of [[Computational complexity theory|computational complexity]]. The computational problem of solving ''Sokoban'' puzzles was first shown to be [[NP-hardness|NP-hard]].<ref>{{cite journal |author1=Michael Fryers |author2=Michael Greene |title= Sokoban |journal=Eureka |issue=54 |year=1995 |pages=25–32 |url=https://www.archim.org.uk/eureka/archive/Eureka-54.pdf#page=28 |archive-url=https://web.archive.org/web/20240905040633/https://www.archim.org.uk/eureka/archive/Eureka-54.pdf#page=28 |archive-date=2024-09-05}}</ref><ref>{{cite journal |author1=Dorit Dor |author1-link= Dorit Dor |author2=Uri Zwick |author2-link=Uri Zwick |title=SOKOBAN and other motion planning problems |journal=[[Computational Geometry (journal)|Computational Geometry]] |volume=13 |issue=4 |year=1999 |pages=215–228 |doi=10.1016/S0925-7721(99)00017-6 |doi-access=free}}</ref> Further work proved it is also [[PSPACE-complete]].<ref>{{cite journal |author=Joseph C. Culberson |title=Sokoban is PSPACE-complete |journal=Technical Report TR 97-02, Dept. Of Computing Science, University of Alberta |year=1997 |url=http://cl-informatik.uibk.ac.at/teaching/ss07/alth/material/culberson97sokoban.pdf}}</ref><ref>{{cite thesis |author=Robert Aubrey Hearn |title=Games, Puzzles, and Computation |degree=PhD |pages=98–100 |publisher=Massachusetts Institute of Technology |year=2006 |url=https://erikdemaine.org/theses/bhearn.pdf#page=98}}</ref> Solving non-trivial ''Sokoban'' puzzles is difficult for computers because of the high [[branching factor]] (many legal pushes at each turn) and the large [[Graph traversal|search depth]] (many pushes needed to reach a solution).<ref>{{cite journal |author1=Andreas Junghanns |author2=Jonathan Schaeffer |title=Sokoban: Improving the Search with Relevance Cuts |journal=Theoretical Computer Science |date=2001 |volume=252 |issue=1–2 |url=https://webdocs.cs.ualberta.ca/~jonathan/publications/ai_publications/tcs.pdf#page=5 |page=5 |doi=10.1016/S0304-3975(00)00080-3 |doi-access=free}}</ref><ref>{{cite web |author=Yaron Shoham |title=FESS Draft |page=3 |year=2020 |url=https://festival-solver.site/wp-content/uploads/2020/08/FESS_draft.pdf#page=3}}</ref> Even small puzzles can require lengthy solutions.<ref>{{cite web |author1=David Holland |author2=Yaron Shoham |title=Theoretical analysis on Picokosmos 17 |url=http://membres.lycos.fr/nabokos/analysis.html |archive-url=https://web.archive.org/web/20160607071224/http://www.abelmartin.com/rj/sokobanJS/sokoban-jd.blogspot/sokoban_lessons/picokosmos17/analysis.htm |archive-date=2016-06-07}}</ref> The ''Sokoban'' game provides a challenging testbed for developing and evaluating [[automated planning|planning]] techniques.<ref>{{cite thesis |author=Timo Virkkala |title=Solving Sokoban |degree=MSc |page=1 |publisher=University of Helsinki |year=2011 |url=https://weetu.net/Timo-Virkkala-Solving-Sokoban-Masters-Thesis.pdf#page=5}}</ref> The first documented automated solver, Rolling Stone, was developed at the [[University of Alberta]]. It employed a conventional search algorithm enhanced with domain-specific techniques such as deadlock detection.<ref>{{cite thesis |author=Andreas Junghanns |title=Pushing the Limits: New Developments in Single-Agent Search |degree=PhD |publisher=University of Alberta |year=1999 |url=https://www.researchgate.net/publication/2305703 |doi=10.7939/R3W95103S |doi-access=free}}</ref><ref>{{cite journal |author1=Andreas Junghanns |author2=Jonathan Schaeffer |title=Sokoban: Enhancing general single-agent search methods using domain knowledge |journal=Artificial Intelligence |volume=129 |issue=1–2 |year=2001 |pages=219–251 |doi=10.1016/S0004-3702(01)00109-6 |doi-access=free}}</ref> A later solver, Festival, introduced the FESS search algorithm and became the first automatic system to solve all 90 puzzles in the widely used XSokoban test suite.<ref>{{cite conference |author1=Yaron Shoham |author2=Jonathan Shaeffer |title=The FESS Algorithm: A Feature Based Approach to Single-Agent Search |date=2020 |url=https://ieee-cog.org/2020/papers/paper_44.pdf |conference=2020 IEEE Conference on Games (CoG) |location=Osaka, Japan |doi=10.1109/CoG47356.2020.9231929 |publisher=IEEE}}</ref><ref>{{cite web |author=Yaron Shoham |title=FESS presentation at the CoG conference (17.5 minutes) |url=https://archive.org/details/fess-algorithm |website=archive.org |language=en |format=video |date=2020}}</ref> Despite these advances, even the most sophisticated solvers cannot solve many highly complex puzzles that humans can solve with time and effort, using their ability to plan ahead, recognize patterns, and reason about long-term consequences.<ref>{{cite web |url=https://archive.org/download/lets-logic-bots-statistics/lets-logic-bots-statistics-2024-oct-06.pdf |title=Let's Logic Bots Statistics |access-date=6 October 2024}}</ref><ref>{{cite web |url=https://sokoban-solver-statistics.sourceforge.io/statistics/LargeTestSuite/ |title=Sokoban Solver Statistics - Large Test Suite |access-date=14 April 2024}}</ref> ==Variants== Several puzzles can be considered variants of the original ''Sokoban'' game in the sense that they all make use of a controllable character pushing boxes around in a [[maze]]. * '''Alternative tilings''': In the standard game, the mazes are laid out on a [[square tiling|square grid]]. Several variants apply the rules of ''Sokoban'' to mazes laid out on other tilings. ''Hexoban'' uses [[hexagonal tiling|regular hexagons]], and ''Trioban'' uses [[triangular tiling|equilateral triangles]]. * '''Multiple pushers''': In the variant ''Multiban'', the puzzle contains more than one pusher. In the game ''Sokoboxes Duo'', strictly two pushers collaborate to solve the puzzle. * '''Designated storage locations''': In ''Sokomind Plus'', some boxes and target squares are uniquely numbered. In ''Block-o-Mania'', the boxes have different colours, and the goal is to push them onto squares with matching colours. * '''Alternative game objectives''': Several variants feature different objectives from the traditional ''Sokoban'' gameplay. For instance, in ''Interlock'' and ''Sokolor'', the boxes have different colours, but the objective is to move them so that similarly coloured boxes are adjacent. In ''CyberBox'', each level has a designated exit square, and the objective is to reach that exit by pushing boxes, potentially more than one simultaneously. In a variant called ''Beanstalk'', the objective is to push the elements of the level onto a target square in a fixed sequence. * '''Additional game elements''': ''Push Crate'', ''Sokonex'', ''Xsok'', ''Cyberbox'' and ''Block-o-Mania'' all add new elements to the basic puzzle. Examples include holes, teleports, moving blocks and one-way passages. * '''Character actions''': In ''Pukoban'', the character can pull boxes in addition to pushing them. * '''Reverse mode''': Some Sokoban programs allow players to play a puzzle backward. This approach can help players better understand the puzzle structure and develop effective solving strategies. Starting with all boxes on goal squares, the player pulls the boxes to return to the initial puzzle state. Solutions found this way solve the standard puzzle when both the order and the direction of the moves are reversed.<ref>{{cite web |author=Frank Takes |title=Sokoban: Reversed Solving |year=2008 |url=https://liacs.leidenuniv.nl/~takesfw/pdf/sokoban.pdf}}</ref> ==Selected official releases== This table lists some prominent official ''Sokoban'' releases that mark milestones, such as expanding to new platforms or achieving widespread popularity. They are organized by release date. {| class="wikitable" style="white-space:nowrap;" !Year !Title !Country !Platform !Publisher !Media |- |1982 |{{nihongo|''Sokoban''|倉庫番}} |Japan |[[NEC PC-8801]] |[[Thinking Rabbit]] |[[Cassette tape]] |- |1983 |{{nihongo|''Sokoban [Extra Edition]''|倉庫番[番外編]}}<ref>{{cite magazine |date=August 1983 |script-title=ja:今回はこのゲームを開発した THINKING RABBIT さんにお願いして, 市販品とは別に10の倉庫をつくってもらいましたので |language=ja |trans-title=This time, we asked THINKING RABBIT, who developed this game, to build 10 warehouses separately from commercial products |magazine={{ill|PCマガジン|ja}} |pages=52–56}}</ref><ref>{{cite magazine |date=August 1983 |script-title=ja:題して『倉庫番』PCマガジン番外編 (このプログラムは, PC-8801/9801 で使えます) |language=ja |trans-title=Titled "Sokoban" PC Magazine Extra Edition (this program can be used with PC-8801 / 9801)|magazine={{ill|PCマガジン|ja}}|pages=52–56}}</ref> |Japan |NEC PC-8801 |{{ill|PCマガジン|ja|lt=PC Magazine}} |[[Type-in program]] |- |1984 |{{nihongo|''Sokoban 2''|倉庫番2}} |Japan |NEC PC-8801 |[[Thinking Rabbit]] |Cassette tape |- |1986 |{{nihongo||涙の倉庫番スペシャル|Namida no Sokoban Special|}} |Japan |[[Famicom Disk System]] |[[ASCII Corporation|ASCII]] |[[Floppy disk|Floppy]] |- |1988 |''[[Soko-Ban]]'' |US |[[IBM Personal Computer|IBM PC]], [[IBM Personal Computer XT|XT]], and [[IBM Personal Computer AT|AT]] |[[Spectrum HoloByte]] |Floppy |- |1989 |{{nihongo|''Soko-ban Perfect''|倉庫番Perfect}} |Japan |[[NEC PC-9801]] |[[Thinking Rabbit]] |Floppy |- |1990 |''[[Boxyboy]]'' |US |[[TurboGrafx-16]] |[[NEC]] |[[HuCard]] |- |1990 |''Shove It! ...The Warehouse Game'' |US |[[Sega Genesis]] |DreamWorks |[[ROM cartridge]] |- |1991 |{{nihongo|''Soko-ban Revenge''|倉庫番Revenge}} |Japan |NEC PC-9801 |[[Thinking Rabbit]] |Floppy |- |2016 |{{nihongo|''Sokoban Touch''|倉庫番Touch}} |Japan, US |[[Android (operating system)|Android]] and [[iOS|Apple iOS]] |[[Thinking Rabbit]] |[[Digital distribution of video games|Digital distribution]] |- |2018 |{{nihongo|''Sokoban Smart''|倉庫番スマート}} |Japan |[[Microsoft Windows|Windows]] |[[Thinking Rabbit]] |Digital distribution |- |2019 |{{nihongo||みんなの倉庫番|Minna no Sokoban}} |Japan |[[Nintendo Switch]] and [[PlayStation 4]] |{{ill|Unbalance|ja|UNBALANCE_(ゲーム会社)}} |Digital distribution |- |2021 |''The Sokoban'' |US |Nintendo Switch and PlayStation 4 |Unbalance |Digital distribution |} ==See also== {{Portal|Japan|Video games}} * [[Logic puzzle]] * [[Sliding puzzle]] * [[Transport puzzle]] * [[Motion planning]] ==References== {{reflist}} <!-- NB: References are *not* the same thing as external links; they are resources used to write, or useful in verifying the article's content --> ==External links== * [https://www.sokoban.jp/ Official Sokoban site] (in Japanese) * [https://webdocs.cs.ualberta.ca/~games/Sokoban/ The University of Alberta Sokoban page] {{Video game genre}} {{DEFAULTSORT:Sokoban}} [[Category:1982 video games]] [[Category:ASCII Corporation games]] [[Category:Cancelled Atari Jaguar games]] [[Category:Commodore 64 games]] [[Category:DOS games]] [[Category:FM-7 games]] [[Category:GP2X games]] [[Category:Japanese inventions]] [[Category:Linux games]] [[Category:Logic puzzles]] [[Category:MacOS games]] [[Category:Maze games]] [[Category:MSX games]] [[Category:NEC PC-6001 games]] [[Category:NEC PC-8001 games]] [[Category:NEC PC-8801 games]] [[Category:NEC PC-9801 games]] [[Category:PSPACE-complete problems]] [[Category:Puzzle video games]] [[Category:SG-1000 games]] [[Category:Sharp MZ games]] [[Category:Sharp X1 games]] [[Category:X68000 games]] [[Category:Single-player video games]] [[Category:Thinking Rabbit games]] [[Category:Video games developed in Japan]] [[Category:Windows games]] [[Category:Windows Mobile Professional games]] [[Category:ZX Spectrum games]] [[Category:NP-complete problems]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Cite conference
(
edit
)
Template:Cite journal
(
edit
)
Template:Cite magazine
(
edit
)
Template:Cite thesis
(
edit
)
Template:Cite web
(
edit
)
Template:Ill
(
edit
)
Template:Italic
(
edit
)
Template:Nihongo
(
edit
)
Template:Portal
(
edit
)
Template:Pp
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)
Template:Video game genre
(
edit
)