Zur Vorbereitung eines geplanten Projektes mit dem Titel »Retrogaming und Künstliche Intelligenz« hatte ich mir (mal wieder) die Playlist »Python Maze Game« (neun Videos, Gesamtspieldauer etwa eine Stunde) von Christan Thompson (aka Tokyo Edtech) reingezogen, denn meine Idee ist es, die KI-Beispiele in einer von Nethack-inspirierten Spieleumgebung zu implementieren und zu erläutern. Nach längerer Überlegung habe ich mich entschlossen, dieses Projekt auf Basis von Pygame Zero durchzuziehen.
Dazu möchte ich als erste Übung über die Oster-Feiertage das in obiger Playlist mit Pythons Turtle-Graphik realisierte Maze Game (Tokyo Edtech ist ja bekanntlich der Mensch, der Unglaubliches aus Pythons Schildkröte herauskitzelt) nach Pygame Zero portieren. Für die Graphiken hatte ich mir zuerst das Default-Tileset aus dem Nethack-Wiki herausgesucht. Die Tiles waren mir aber mit ihren 32x32 Pixeln zu groß geraten, da ein 25x25 Tile großes Spielfeld mit seinen 800x800 Pixeln die Dimensionen (m)eines Laptop-Monitors sprengte (und ich möchte schon, daß die (geplanten) Beispiele auch auf kleineren Monitoren lauffähig sind). Daher bin ich dann auf die 16x16 Pixel großen (oder besser: kleinen) DawnLike-Tiles ausgewichen, mit denen ich ja schon seit langem etwas anstellen wollte. (Mit 20 Pixeln Rand ist dann das Spielfeld gerade einmal 440x440 Pixel groß (siehe Screenshot), das sollte auf jeden Monitor passen.)
Die DawnLike-Tiles/Sprites sind frei (CC-BY-SA 3.0, die Schöpfer DawnBringer und DragonDePlatino wollen (und müssen) aber genannt werden) und auf GitHub zu finden. Und um den Zugriff auf die über 1.200 Bildchen zu erleichtern, hat Tommy Erringer einen DawnLikeAtlas ebenfalls auf GitHub veröffentlicht. Dort findet Ihr alle Sprites mit Namen einmal in Originalgröße und einmal in zweifacher Größe fein säuberlich nach Kategorien als (animierte) GIFs aufgelistet. (Die GIF-Animationen kann man bei Bedarf dann zum Beispiel mit diesem Online-Tool in Einzelbilder zerlegen. Man kann aber auch einfach Tiled dafür nutzen.)
Zur Übung möchte ich dann noch (ebenfalls über Ostern) die Spiele (genauer: das Spiel) aus Tokyo Edtechs Playlisten A Simple Python Turtle Graphics Game (Neun Videos, etwa eine Stunde) und Simple Python Turtle Graphics Game with Classes (zehn Videos, ebenfalls knapp eine Stunde) nach Pygame Zero portieren (denn da werde ich nicht dümmer von).
Es gibt zu Pygame Zero auch noch eine nette, kleine Pygame Zero Helper Bibliothek (Download) mit einigen Funktionen, die man aus Pygame kennt und in Pygame Zero schmerzlich vermißt. Ob ich diese in meinem Projekt einsetzen soll, darüber muß ich aber noch nachdenken, denn sie implementiert eine weitere Zwischenschicht, die die Umgebung noch einen Schritt komplexer gestaltet. Unter Umständen ist es daher sinnvoller, bei Bedarf direkt auf Pygame durchzugreifen. Still digging!
Die Tutorial-Situation bei Pygame Zero ist (noch) nicht gerade üppig. Daher möchte ich noch auf »Let’s Make a Game (with Pygame Zero)« (mit fünf eingebetteten Videos) verlinken.
Und als Seiteneffekt hoffe ich, daß auch bei mir eine Reihe von Pygame-Zero-Tutorials herausspringt. Vielleicht bekomme ich neben den fest geplanten den Beiträgen zu »Retrogaming und künstlicher Intelligenz« ein ganzes (Online-) Buch – wie bei Processing.py – zusammen. Nicht, daß ich mich damit selber unter Druck setzen will 🤓, aber noch einmal: Still digging!
Über …
Der Schockwellenreiter ist seit dem 24. April 2000 das Weblog digitale Kritzelheft von Jörg Kantel (Neuköllner, EDV-Leiter Rentner, Autor, Netzaktivist und Hundesportler — Reihenfolge rein zufällig). Hier steht, was mir gefällt. Wem es nicht gefällt, der braucht ja nicht mitzulesen. Wer aber mitliest, ist herzlich willkommen und eingeladen, mitzudiskutieren!
Alle eigenen Inhalte des Schockwellenreiters stehen unter einer Creative-Commons-Lizenz, jedoch können fremde Inhalte (speziell Videos, Photos und sonstige Bilder) unter einer anderen Lizenz stehen.
Der Besuch dieser Webseite wird aktuell von der Piwik Webanalyse erfaßt. Hier können Sie der Erfassung widersprechen.
Diese Seite verwendet keine Cookies. Warum auch? Was allerdings die iframes
von Amazon, YouTube und Co. machen, entzieht sich meiner Kenntnis.
Werbung
Diese Spalte wurde absichtlich leergelassen!