Ergebnis 1 bis 2 von 2

Thema: Vorstellung: [Python][Windows/Linux] Sokoban - mal wieder^^

  1. #1

    Vorstellung: [Python][Windows/Linux] Sokoban - mal wieder^^

    Hi @ all,

    Nachdem ich hier schon Sokoban in je einer QBasic- und einer AutoIT-Variante vorgestellt habe, dachte ich mir "aller guten Dinge sind drei" ( ) und veröffentliche es nochmals - diesmal allerdings geschrieben in Python und Pygame. Scheint wohl eine Art Ritus bei mir zu werden: In jeder Programmiersprache, die ich ernsthaft lernen will, schreibe ich eine Sokoban-Umsetzung^^.

    Für alle, die Sokoban nicht kennen: Man muss Kisten an ihre vorherbestimmten Plätze schieben. Allerdings kann man nur eine Kiste gleichzeitig schieben, ein Ziehen von Kisten ist nicht möglich.

    Aus programmiertechnischer Sicht eine Besonderheit (für mich) ist, dass ich das erste Mal mit Klassen und Objekten herumhantiere - und ich glaube, das sieht man dem Quellcode auch an^^. Generell hatte ich beim Programmieren mehrmals das Gefühl, dass ich es mir wohl komplizierter gemacht habe, als es in Python wahrscheinlich nötig gewesen wäre^^... Kommt davon, dass ich vor Jahren zuviel Zeit mit QBasic verschwendet verbracht habe^^.

    Hier mal ein Screenshot:



    Es gibt einige Einstellmöglichkeiten, z.B. bezüglich Auflösung und Sound. Dazu muss man die settings.py bearbeiten, dort ist alles kommentiert oder selbsterklärend...

    Was die Levels angeht: Die habe ich mir allesamt wiedermal von David W. Skinner geliehen, der es freundlicherweise unter Credit-Nennung zur Verfügung stellt. (Quelle, "These sets may be freely distributed provided they remain properly credited.") Neue Levels gibts also nicht für diejenigen, die schon meine vorigen Sokoban-Projekte gespielt haben^^.

    Hier der Downloadlink für alle Windows-Benutzer, die die ganzen Libraries nicht installiert haben (wollen):
    http://astorek.bplaced.net/downloads/sokoban_win.zip (ca. 4 MB)

    Hier der Downloadlink mit Quellcode (benötigt Python > 2.5 und Pygame; falls Python 2.5 eingesetzt wird, ist zusätzlich SimpleJSON nötig):
    http://astorek.bplaced.net/downloads/sokoban.zip (ca. 500 KB)

    Bei beiden Downloads sind natürlich alle Ressourcen enthalten, die das Spiel braucht... Das Spiel wurde erfolgreich unter Windows und Linux getestet...

    Die zu startende Datei wäre beim Quellcode die "startme.py", die Windows-Version hat selbstverständlich eine startbare EXE...

    Geändert von Manuel (26.07.2010 um 18:44 Uhr)

  2. #2
    Sehr hybsches Spielchen. Allerdings hab ich 2 Kritikpunkte.

    1. Beim starten der Exe kommt eine Messagebox mit "Der Prozedureinsprungspunkt 'PowerReadACValue' wurde in der DLL 'POWPROF.dll' nicht gefunden. Spiel funktioniert soweit aber trotzdem.

    2. Es ist etwas laestig, dass man nur die Letzte Bewegung bei UNDO rueckgaengig macht. Im Prinzip ist es doch egal, wie viel man rumlaeuft. Die einzigen nicht-reversieblen Spielzuege sind doch das verschieben der Kisten. Ergo macht es sinn, bei UNDO zu dem Spielstand zurueck zu gehen, bevor man die letzte Kiste verschoben hat. Oftmals verschiebt man Kiste A, laeuft zu Kiste B und merkt, dass man bei A nen Fehler hatte. Bei dir muss man nun zig mal UNDO druecken um zu A zurueck zu kommen. Unnoetig.

    Sonsten sehr sehr nett.

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •