JSoko
JSoko is a Java program for playing the Sokoban game.
It's developed as an open source program at www.sourceforge.net
Current version of JSoko is 2.25
Suggestions or any questions? Write to: JSoko(at)mail.de
Sokoban News
Sokoban YASC 1.681 has been published

Brian Damgaard has published a new version of his great and widely used Sokoban YASC program.
The release notes for this new version:
- Added a plug-in script for the BoxSearch Sokoban solver by Ge Yong.
The script seamlessly integrates BoxSearch into the Sokoban YASC environment, allowing users to launch, stop, and manage tasks directly from the solver task queue.
As with other supported solvers (such as Festival and Sokolution), the BoxSearch program itself must be downloaded separately from its website due to licensing restrictions. - Enhanced the "Macintosh" Sokoban skin by Scott Lindhurst.
The player (ladybug) and the boxes (marbles) now have a perfectly rounded shape.
This resolves the slightly irregular outlines that appeared after the original skin was converted to the larger 64x64 pixel format. - Addressed an issue with unexpected undo operations in reverse mode, when a user switches between using the mouse and the keyboard.
A jump is a special move at the start of a reverse mode game that allows the player to bypass walls and boxes to get from one area to another.
The program's behavior differed depending on the input method used for the jump.
Keyboard jumps:
The user manually guides the player along the jump's path.
Because the users are aware of this path, they can easily recognize if a subsequent keyboard move steps back along it.
In this case, the user isn't surprised to see the program interpret the move as an undo operation.
While the user might be mildly surprised to see the program (for practical reasons) reverse the entire jump, the action is overall predictable and understandable.
Mouse jumps:
A mouse jump is performed by simply clicking the destination square.
The program automatically calculates the path, and while the moves are shown on the board, the user typically doesn't pay close attention to the specific path taken.
The issue arose when a user performed a mouse jump and then used the keyboard for the very next move.
If this keyboard move happened to fall on the program's jump path, the program would interpret it as an undo, effectively "teleporting" the player back to the starting position.
This was confusing for the user, who was unaware of the path and the fact that the keyboard move had triggered an undo.
The program now never treats a keyboard move made immediately after a jump as an undo operation.
This prevents the player from unexpectedly being sent back to the jump's starting position.
Thanks to Carlos Montiers for bringing this up. - Minor changes.
Sokoban YASC 1.680 has been published

Brian Damgaard has published a new version of his great and widely used Sokoban YASC program.
The release notes for this new version:
- Replaced the original "YASC 20 Years" puzzle with an improved version.
Originally created by DrFogh to mark the 20th anniversary of YASC on 2021-12-02, and subsequently refined through contributions by DrFogh and Anian. Thanks to both for this puzzle.
Sokoban YASC 1.679 has been published

Brian Damgaard has published a new version of his great and widely used Sokoban YASC program.
The release notes for this new version:
- New puzzle editor feature: Convert untraversed floor squares to wall squares.
This new tool enables puzzle authors to automatically convert floor tiles unused in existing solutions and snapshots to wall tiles.
It contributes to the puzzle creation process by removing unnecessary open space, resulting in cleaner and more focused puzzle designs.
Thanks to Matthias Meger and Anian Wu for this suggestion. - The thread limit for the Sokolution solver plug-in has been raised from 85% to 100% of the available logical CPU cores.
- Minor changes.
Sokoban e-mail group
Visit: Sokoban group
Acknowledgements
JSoko is developed with the help of the YourKit Java Profiler.
YourKit is kindly supporting open source projects with its full-featured Java Profiler. YourKit, LLC is the creator of innovative and intelligent tools for profiling Java and .NET applications. Take a look at YourKit's leading software products: