Sokoban engine