Saturday, July 26, 2014

Sokoban Original Puzzles Tribute

Update:

 The Yahoo Sokoban Group member PJB (I don't have a name and don't want to use his email address as an identifier) has found an error I made in the tribute files. It is in the Level 50 puzzle for Color Computer, MS-DOS, Apple II and Commodore 64. I had inadvertantly left out a wall block that should have been there. All of the puzzle files are now updated to reflect this change (including the files containing solutions). Much thanks to PJB for spotting this error!

Special Announcement:

Brian Damgaard has released a special edition Sokoban YASC that allows you to play puzzles up to 100 x 100 grid size, making it perfect for playing the Sokoban Original Puzzles Tribute levels. You can find it on the Sokoban YASC site at SourceForge under the Files tab. Click the sokobanyasc folder link, and you will see the installer file, named with SE appended to the file name. This version only allows play of large puzzles. The tools are still limited to the 50 x 50 max grid size.

Files can be downloaded from the following sites:

Sokoban for Windows: Levels - A modified version of the large puzzle format file (See below)

Levels can be played online at the following sites:

Sokoban Online Game - standard puzzle format only, collection named WayneCa: Sokoban Original Puzzles Tribute

This year, 2014, marks the 30th anniversary of Thinking Rabbit licensing Sokoban to ASCII Corporation in 1984. ASCII sub-licensed the game to Sphere, Inc. Sphere Inc. then sub-licensed the game to Spectrum Holobyte to produce variants for MS-DOS, the Apple II and the Commodore 64. Sphere also sub-licensed the game to Tandy Corporation for development of a variant for their Color Computer series of home computers, and Tandy sub-licensed the development of that variant to Spectral Associates.

I have produced a tribute puzzle to commemorate these events. I wanted to do justice to all of the variants named above, so I created two forms of puzzles.

The first is what I call "standard puzzle format", which is one puzzle per level. The file contains 64 levels. Each level is named according to which variant(s) that puzzle is derived from, using the format "## variant", where "##" is the original level number of that puzzle. For those puzzles which are the same between all of the variants, the title of those puzzles is "All variants".

This was not enough, in my opinion, so I developed what I call the "large puzzle format". This version contains 25 levels, and each set of five levels corresponds to the puzzles as they occur in the named variant, with each level containing ten puzzles. The level names follow the convention "variant ## to ##", where "variant" is one of the following variant names, and "## to ##" refers to the series of puzzles included in that level.

In the large puzzle format files, four puzzles are unplayable due to their start positions being incompatible with the large puzzle design. These puzzles are 12, 13, 15 and 47. In each of the levels that contain these puzzles, they are shown in overstated solution, with all boxes and targets represented as boxes on targets. In the standard puzzle format versions, these puzzles are playable and solvable as each occupies a separate level.

Variant name:

  1. Color Computer
  2. MS-DOS
  3. Apple II
  4. Commodore 64
  5. XSokoban
The reason I included XSokoban is because it is that variant's collection that has been named "Original" for over ten years. I used those puzzles as the starting point of my comparisons, and for making the necessary changes to duplicate the originals as they occur in the four original variants from 1984. I feel it is only fair to include the XSokoban variant in this tribute.

All files carry the filename and title "Sokoban Original Puzzles Tribute", with the filenames using "_" in place of the spaces for the internet. I have created multiple versions of each of the files that contain no solutions.

Versions of the tribute file:

About the SLC versions:

As much as I have tried to refrain from having to deal with different clones, the SLC versions present a problem where their use with Sokoban for Windows is concerned.

Due to restrictions on puzzle uploads on the Sokoban for Windows site, the SLC versions above are not downloadable from that site. There is only one version available there, and it is a modified version of the large tribute file. That version contains only the 14 levels that are unique. The other 11 levels, though correct for the variant they are part of, are the same as other levels in the collection. For this reason I have made these versions available for download here. Other clones that recognize SLC format files may be able to use them. The file on the Sokoban for Windows site is named SokoOrigPuzzlesTributeLrg.SLC to conform to file name length restrictions on that site, and allows for differentiation between the above versions and that version.

The standard puzzle format version is not available there because of "duplicate" restrictions. After removing all of the duplicates, there were only 7 puzzles left in the file, and I do not think this is adequate for a tribute of this sort. Note that these restrictions do not mean that you can't import the above versions into Sokoban for Windows. You can, as I have done it. The problem comes in when you try to solve the like puzzles. The scoring routine and solution saver will only keep one solution for duplicate levels, and the last one solved is the one that keeps the solution.

I have also created versions that contain solutions:

The solutions in the _S and _LS versions are Sokoban YASC's YASS Solver solutions. In the _LS version, they are enhanced with the extra moves necessary to solve those puzzles. There are eight puzzles that the YASS Solver could not solve. In those cases, the solutions are my own. The _PO version contains Push-Optimized solutions created with Sokoban YASC's YASO Optimizer, and the _MO version contains Move-Optimized solutions created with YASO. These solution versions are supplied for those who wish to have a target to beat, and for those who wish to study solver and optimizer solutions. While these files are in SOK format only, the solutions can be imported into most Sokoban clones. Some will require copying the solution to the clipboard.

Puzzles the YASS Solver could not solve:

  • 14, 18, 29, 31,
  • 37 Color Computer, MS-DOS, Apple 2, Commodore 64 variants,
  • 39, 41, and
  • 50 Color Computer, MS-DOS, Apple 2, Commodore 64 variants

The C64 puzzle 42 issue:

Due to an oversight on the part of the game designer for the C64 variant, puzzle 42 is not solvable. In the large puzzle format files I have chosen to make this puzzle unplayable. In the standard puzzle format files the level remains playable, but continues to be unsolvable. All other variants are unaffected.

About this collection:

I got the idea for this collection from the original fifty puzzles contained in the Tandy Color Computer variant of the Sokoban game from Thinking Rabbit.
I have verified that the puzzles contained in Original.txt are the XSokoban variant.

Using these puzzles as the starting point, I compared all fifty puzzles to the four official releases of the game, under the name Soko-Ban, for MS-DOS, the Apple 2, the Commodore 64 and the Tandy Color Computer.

The result is twenty-five levels containing all two-hundred fifty puzzles, ten puzzles per level, five levels per variant in the large puzzle version.

In the standard puzzle version, there are 64 puzzles, including all variant's versions. Where a puzzle in one variant differs from the same puzzle in another variant, both puzzle versions occur adjacent to each other. The differences are described on my blog:


Web Site: Sokoban Original Puzzle Mystery - SOLVED!

The idea and inspiration of this collection is competition. It is assumed you already know the original levels, and that you are good at solving them. If your preferred Sokoban clone does not contain a timer, you will have to time yourself. The large puzzle versions require a grid-size of 98 cells wide by 39 cells high, maximum.

I envision a room full of players, all looking at the same level images (with like skins so there is no advantage in a particular skin), all players being given the signal to start, and all players trying to solve each level as quickly as possible.

If using the large puzzle variant, there could be a winner for each level, as well as a winner for finishing all five levels of the chosen variant first. As well, there could be competitions between two or more variants to see which variant has the faster solutions.

If using the standard puzzle variant, you can play a specific variant by paying attention to which levels correspond to the variant you are playing.

This blog and all of the versions of the Sokoban Original Puzzles Tribute files are © 2014 Wayne Campbell. All rights reserved.

All rights of the original game puzzles and programs are listed in the files and on the Sokoban Original Puzzle Mystery - SOLVED! blog in the Credits post.

These files may be freely distributed, so long as they remain unmodified. I require this because this is a tribute to the original game puzzles, and passing around modified versions will serve to nullify this aspect. You may modify them for your own purposes, but if you want to make your solutions to these puzzles available, please distribute the solutions as a separate solutions file, naming the version of tribute file they are for.

Examples: Sokoban Original Puzzles Tribute Solutions.txt
Sokoban Original Puzzles Tribute Large Solutions.txt