I recently started playing nethack and got frustrated with having to play quite a while to get to sokoban and then being unable to solve it. So I wrote this little python app which contains all 8 sokoban levels from nethack, allows undo/redo and recording of sessions to file. The movement keys are the same as in nethack (both, hjklyubn and numpad should work). Additionally the following keys are used: q quit r restart a nextLevel z prevLevel s redo x undo In playback-mode space is used to advance one step, q quits the program. If you don't like the keybindings change the variables 'game_keybindings' and 'playback_keybindings' in nethack-sokoban.py.