Zurück ins Wunderland: Künstliche Intelligenz und interaktive Geschichten

Twine
Harlowe
Interactive Fiction
Spieleprogrammierung
Bilder
Künstliche Intelligenz
Stable Diffusion
DreamStudio
Scenario
Autor:in

Jörg Kantel

Veröffentlichungsdatum

24. Januar 2024

Nach einer längeren, krankheitsbedingten Pause hat Dan Cox die Arbeit an seinen Twine-Tutorials wieder aufgenommen. Da er ein überaus korrekter Mensch ist, hat er sie in seiner Playlist Twine Handbook: Vol 1: Harlowe penibel mit »Twine 2.8, Harlowe 3.3« gelabelt1. Dadurch wurde ich darauf gestoßen, »meiner« Twine-Desktop-App ebenfalls ein Update zu spendieren (ich fuhr noch Twine 2.7.1 mit Harlowe 3.3.7). Jetzt habe auch ich ein aktuelles Twine 2.8.1 mit einem Harlowe 3.3.8 (die beiden anderen Storyformate, die ich nutze – Chapbook und SugarCube – waren von dem Update nicht betroffen) auf meinem Rechner.

Die erste Erkenntnis, die ich aus dem Update gewonnen habe – Twine ab Version 2.8 besitzt endlich ein lang gewünschtes Feature: Der »Geschichtsbibliotheksordner« ist nicht mehr fest verdrahtet, sondern kann jetzt über das Menü Twine -> Setze den Geschichtsbibliotheksordner angepaßt werden (nur bei der Desktop-App). Dadurch entfällt das bisherige, umständliche Herumgehampel mit Aliassen, wenn man auch diesen Ordner in seinem GitHub-Repositorium persistent unterbringen will.

Die zweite Erkenntnis: Harlowe 4.0 steht in den Startlöchern und wird nicht (mehr) mit Harlowe 3 kompatibel sein. Die bisherige ChangeLog dazu ist aber noch sehr wenig aussagekräftig, also warte ich erst einmal ab, was die Zukunft bringt.

Auf jeden Fall wurde ich durch dieses Update an meine noch an- und ausstehenden Vorhaben erinnert:

Vorhaben 1: Smashing Pumpkins fertigstellen. Diese Geschichte2 – die ich mit dem Storyformat SugarCube realisiert hatte – war mein erster Versuch, Bilder, die ich mit einer gekünstelten Intellligenzia (in diesem Falle Clipdrop) generiert hatte, in einer interaktiven Geschichte einzusetzen. Ich betrachte dieses Experiment als gelungen, allerdings gibt es in der eigentlichen Geschichte noch ein paar logische Ungereimtheiten, die es auszuräumen gilt. Und ich möchte pickbare Assets, die der Spieler für die kleine Hexe aufnehmen kann, nicht nur in einem Inventory-Menü, sondern auch in den Bildern sichtbar machen.

Vorhaben 2: Zurück ins Wunderland, zurück zu Harlowe. Ich möchte meine Tutorialreihe zu Twine und Harlowe, die sich an Alices Ausflügen ins Wunderland entlanghangeln, wieder aufnehmen. Auch hier hatte ich ja schon einmal eine gekünstelte Intelligenzia bemüht3 (damals die AI Comic Factory), Bilder für diese Geschichte zu erstellen, doch in der Zwischenzeit hatte ich viel mit DreamStudio experimentiert und mit dieser Stable Diffusion-Anwendung bisher schon Unmengen an Bildern generiert (jüngst auch noch diese und diese)4, die meiner Meinung nach besser in die Geschichte passen. Also wird hier wohl DreamStudio die Künstliche Intelligenz meines Vertrauens werden.

Vorhaben 3: Last but not least ist da ja auch noch meine »wüste Räuberpistole« Alien Attack5, für die ich ebenfalls noch eine Künstliche Intelligenz nach Bildern befragen möchte. Nach meinem derzeitigen Kenntnisstand bietet sich hierfür Scenario an, da diese Engine explizit für die Erzeugung von Game Assets geschaffen wurde. Aber hier stehe ich erst am Anfang meiner Erkundungen, Playground AI, SeaArt AI und Tensor Art stehen ebenfalls noch auf meiner Testliste. Die ganze Geschichte mit den KI-Bildgeneratoren ist ja noch recht jung (selbst solche (gefühlt) »alteingesessenen« Dienste wie Leonardo AI existieren gerade mal erst seit einem Jahr) und daher spülen auch täglich neue Anwendungen in meinen Feedreader.

Aber an Charaktere in Ren’Py werden noch ganz andere Anforderungen gestellt, als an Illustrationen in interaktiven Geschichten. Und Scenario hat hier – wenn auch an Unity orientiert – schon ein paar Lösungen vorgestellt, daher steht das Teil zur Zeit bei mir ganz oben auf der Liste.

Auf jeden Fall möchte ich mit diesem letzten Projekt auch testen, wie und ob Twine mit Chapbook als Werkzeug für eine Prototyperstellung für ein Spiel taugt, das als Endprodukt in Ren’Py laufen soll. Vom eingangs erwähnten Dan Cox gibt es einen schönen Beitrag »How can I use Twine with Unity?«, der tief in die inneren Geheimnisse von Twine einführt. Und Dan Cox weiß, worüber er schreibt, immerhin ist er auch der Autor eines Twee-Compilers. Es gibt also noch viel zu spielen, viel zu testen und viel zu entdecken. Still digging!

Eine ganz andere Geschichte ist da noch mein Projekt »Retrogaming und Künstliche Intelligenz« (Nachschlag), das ich ja ursprünglich in Pygame Zero (und später dann erst mit Pythons Turtle und dann in Pygame) realisieren wollte. Das hat mit meiner jüngst frisch erwachten Liebe zu JavaScript/P5.js eine ganz neue Stoßrichtung bekommen. Doch das ist Stoff für einen eigenen Beitrag.

Fußnoten

  1. Wo ein »Volume 1« (bisher 34 Video-Tutorials) ist, gibt es (meistens) auch (mindestens) ein »Volume 2«. Wohl denn: Twine Handbook: Vols 2: SugarCube (bisher 32 Video-Tutorials).↩︎

  2. Eine spielbare Version dieser frühen Fassung habe ich auf Itch.io hochgeladen.↩︎

  3. Auch dieses kurze Proof of Concept hatte ich auf Itch.io eingestellt. Dazu gibt es noch die Version Alice im Reich der Ringe, die ich zwar mit Chapbook als Storyformat realisiert hatte (und die mit »konventionell« erstellt (freien) Bildern illustriert war), aber deren Storyline die Grundlage für die geplante Tutoralreihe bilden soll. Auch von dieser Geschichte gibt es eine Fassung auf Itch.io.↩︎

  4. Und ein paar weitere habe ich auch schon auf Flickr hochgeladen und werde sie in den nächsten Tagen in diesem Blog Kritzelheft vorstellen.↩︎

  5. Auch davon gibt es je einen Prototypen auf Itch.io: Einmal in einer Fassung mit Twine und Chapbook und einmal die Version mit Ren’Py.↩︎