The rules of the game
From Sokoban Wiki
The objective of the Sokoban game is to move objects (usually boxes) to designated locations by pushing them.
These objects are located inside a room surrounded by walls. The user controls a pusher called "Sokoban" which is said to mean something like "warehouse keeper" in Japanese.
The pusher can move up, down, left and right, but cannot pass through walls or boxes, and can only push one box at a time (never pull).
At any time, a square can only be occupied by either a wall, a box, or the pusher.