Skip to main content

Star Pusher (Sokoban clone)

Sokoban ("box pushing") clone with 201 levels. Source code is simple and readable, and designed to help teach Python & Pygame.


Al Sweigart
(alsweigart)
Star Pusher is a I've used the graphics from the Planet Cute collection. You'll need Python (2 or 3) and Pygame installed to run it. Just download and unzip the files to the same directory. It comes with 201 levels from David W. Skinner.

Links

Home Page
http://inventwithpython.com/blog

Releases

Star Pusher (Sokoban clone) 1 — 12 Jun, 2011

Pygame.org account Comments

  • josmiley 2011-06-13 09:00:18

    hi,

    Traceback (most recent call last):
      File "starpusher.py", line 692, in <module>
        main()
      File "starpusher.py", line 149, in main
        levels = readLevelsFile('starPusherLevels.txt')
      File "starpusher.py", line 447, in readLevelsFile
        assert startx != None and starty != None, 'Level %s (around line %s) in %s is missing a "@" or "+" to mark the start point.' % (levelNum+1, lineNum, relativePathToThisScript(filename))
    AssertionError: Level 1 (around line 24) in /home/jos/Bureau/starpusher/starPusherLevels.txt is missing a "@" or "+" to mark the start point.

    Albert Sweigart 2011-06-16 00:53:08

    This is caused by a newline problem on Linux machines. I've since fixed and updated the code.

    josmiley 2011-06-14 13:36:24

    with python 2 ...
    no problem with python 3

  • Armando Marques Sobrinho 2014-06-03 02:16:27

    How I can use mouse to move the player?

    thank's

    Armando Marques Sobrinho 2014-06-28 16:39:03

    Can someone answer me?
    thank's

    Giela 2015-03-25 11:13:58

    having a nice conversation with yourself I see?

    Armando Marques Sobrinho 2015-03-25 11:33:09

    yah
    I start using java, because I intent to program to android, python is good boot android is java.
    its bad, because this game is a nice game and this exclusively is a nice job!
    thank you for reply!

    Armando Marques Sobrinho 2014-07-02 02:37:57

    [SOLVED]
    No one helped me but I solved anyway
    if anyone want to know how, now has to ask me inbox