Doom in der Foto-App eures iPhones spielen: So geht’s – irgendwie
Man nehme acht manuell konfigurierte iOS-Shortcuts, einen separat konfigurierten Laptop und viele Bilder aus einer Webversion von Doom und fertig ist das Spiel in einer eigentlich geschlossenen Apple-Umgebung. Das Rezept wirkt simpel, doch das Projekt kostete sie von der Idee bis zum fertigen Spiel drei Monate und es gab einige Rückschläge.
Angetrieben von der Motivation, Spiele in völlig ungeeigneten Umgebungen des Apple-Universums zu platzieren, experimentieren Ada und Royalty erst einmal damit, über eine URL Bilder herunterzuladen.
Sie wollten dazu einen separaten Webserver mit dem Spiel laufen lassen, der regelmäßig Einzelbilder sendet. Der Clou: iOS-Shortcuts können beliebige URLs aufrufen und Bilder herunterladen.
Diese Bilder sollten ursprünglich als Hintergrund des Sperrbildschirms das Spiel anzeigen. Das klappte nicht, weil die Verarbeitung zu langsam war. Nach diesem Rückschlag kam dann die zündende Idee: warum nicht direkt in der Foto-App? Der Ansatz war so einfach wie genial:
- Der Server liefert ein Bild, das euch angezeigt wird
- Währenddessen wird das nächste Bild heruntergeladen
- Löschen des aktuellen Bildes, damit neues Bild angezeigt wird
Damit wollten sie eine Art Animation erstellen. Hier verfeinerten sie ihre Lösung und haben einen Code geschrieben, der nicht Bilder, sondern GIFs (das sind kurze Bilderstrecken als Mini-Animation) und später mp4-Dateien importiert. So entsteht die Illusion, dass sich der Spieler wirklich bewegt.
Mit AssistiveTouch die Spielfigur steuern
Jetzt mussten sie noch zwei Probleme lösen: Doom zum Laufen bringen und eine Möglichkeit finden, wie sie Doom über die Foto-App steuern. Sie fanden dafür eine Version von Doom, die sich im Browser spielen lässt. Dafür setzten sie einen Laptop als Command-And-Controll-Server auf. Das bedeutet, dass sie Befehle wie „Lauf geradeaus“ an den Laptop schicken. Dieser kontrolliert die Spielfigur und schickt die Bilder zurück in die Foto-App.
Um die Befehle der Spielfigur in Doom überhaupt senden zu können, benutzten sie die Assistive-Touch-Funktion. Die ermöglicht es dem Nutzer, insgesamt acht verschiedene festlegbare Bereiche des Bildschirms mit Funktionen zu belegen. AssistiveTouch ist auch als Gamepad-Steuerung erdacht oder hilft aus Sicht der Barrierefreiheit.
Die zwei Entwickler benutzten das Tool dann auch als Gamepad und belegten die Bereiche zum Beispiel mit links, rechts, vorwärts, zurück, nachladen und schießen – wie auf einer Tastatur oder einem Controller.
So konnten sie der Spielfigur in Doom Anweisungen geben und der Server verarbeitete daraufhin die Befehle und schickte Bilder, die dann wieder als Mini-Animationen in der App landeten. Doom sieht in ihrem Testvideo etwas gewöhnungsbedürftig aus, es scheint aber grundsätzlich spielbar zu sein. Wenn ihr die einzelnen Schritte und ihren Code lesen wollt, gibt es eine detaillierte Anleitung auf ihrer Webseite eieio.games.
In Doom wurde vor einigen Wochen übrigens ein „neuer“ Cheatcode entdeckt, der eigentlich über 27 Jahre alt ist.