Doom: Zum 25. Geburtstag reanimiert Grafana das legendäre Computerspiel
Kann Grafana Doom? Drei Entwickler des Labs stellten sich beim Hackathon im März der Challenge und liefern zum Jubiläum der N64-Ausgabe ihre Version "Doomfana".
- Silke Hahn
Grafana Labs ist bekannt für sein Visualisierungs- und Monitoring-Tool, nicht für experimentelles Gaming. Drei Entwickler des Teams haben sich allerdings im März bei einem internen Hackathon einer Herausforderung spielerischer Art gestellt: Als bekennende Doom-Fans probierten Domas Lapinskas, Bogdan Matei und Kostas Pelelis, ob sie das legendäre Spiel auf Grafana zum Laufen bringen. Zwei Möglichkeiten standen den drei Softwareingenieuren und Cloudentwicklern offen: Doom entweder serverseitig zu betreiben und die Daten durch WebSockets zu schicken oder Doom WASM, um das Spiel im Browser laufen zu lassen.
Doomfana im Browser spielen
Spoiler: Sie haben es geschafft, und das Ergebnis des Experiments kann sich sehen lassen. Gamer können wahlweise in voller oder in reduzierter Auflösung im Browser Doomfana spielen, wie die Firma ihre Version scherzhaft nennt und wie auch Vorschaubilder zeigen.
Technische Umsetzung mit WebAssembly
Die erste Option hätte vor allem Code in der Programmiersprache C benötigt, um die Frames zu den WebSocket-Clients zu transportieren. Über das mit Grafana kompatible Prometheus wäre ein HTTP-Export-Tool in C nötig, um die Spielstände zu übermitteln – was den Entwicklern zu heikel war. Sie schlugen lieber die WebAssembly-Route ein, für die sie Doom mit Emscripten in Wasm kompilierten und über WebGL alles in ein Canvas-Element "malten". Den Output hielten sie Pixel für Pixel fest und stellten diese als Metriken dar. Abschließend ergänzten sie einen Hook, der eine JavaScript-Funktion aufruft, die die Daten empfängt und erneut als Metriken ausgibt.
Wer sich genauer für die technische Umsetzung von Doomfana interessiert, kann die Details im lesenswerten Blogeintrag der drei Grafana-Entwickler nachschlagen. Darin ist eine Live-Demo des Spiels eingebettet und man erfährt, mit welchen Hackathon-Waffen die drei Software- und Cloud-Ingenieure Matei, Pelelis und Lapinskas der Monsteraufgabe zu Leibe rückten: mit C-hainsaw, WebRockets (WebSockets, die Feuerwerk produzieren) und einer BSG 9000 alias Big Streaming Gun ("one shot those monsters metrics").
Kurz nach der Veröffentlichung des Blogbeitrags hat Grafana Labs den Code für das mit Wasm gerenderte Doom auf GitHub veröffentlicht und den Blogeintrag zur Entwicklung des Spiels erweitert. Die Leserschaft erfährt darin nun unter anderem zusätzliche Details über die eingesetzten Zeitreihen und das Streamen der Daten als visualisierte Punkte.
Retrospektive: Masters of Doom
25 Jahre sind vergangen seit dem Release von Doom 64 am 31. März 1997. Damals hatten die Entwickler die Doom-Engine für Nintendo 64 angepasst und eine Sequenz von Doom-Spielen geschrieben, deren Handlung nach Doom II ansetzt. Herausgeber war damals Midway Games (die auch hinter den PSX Doom Games stehen) in Zusammenarbeit mit id Software, dem Unternehmen der "Masters of Doom" John Romero und John Carmack. Die beiden Spieleentwickler prägten eine Generation von Gamern mit leistungsfähigen Spiele-Engines und revolutionärer 3D-Grafik, die die Möglichkeiten der Hardware ausreizten und erweiterten. Das erste Release der Doom-Serie erschien am 10. Dezember 1993, damals als Shareware. Von diesem Datum ausgehend feiert die Doom-Reihe nächstes Jahr bereits ihren 30. Geburtstag.
Neben Doom setzten Romeros und Carmacks Spiele Quake, Wolfenstein 3D und Commander Keen in den 1990er Jahren neue Maßstäbe in der Computerspielgrafik und können bis zum heutigen Tag auf eine eingeschworene Fangemeinde zählen, nicht nur als Retrogame. Doom 64 erlebte am 20. März 2020 eine digitale Auferstehung als Re-Release für Nintendo Switch, Play Station 4, Xbox One und Windows. Dazu passt die düstere Handlung, die den Plot von Doom und Doom II aufgreift: Die Mutter aller Dämonen (Mother Demon) hat überlebt und bringt die verwesenden Kreaturen zurück, die die Spieler schon getötet hatten. Der Doom Marine hat es in der Hand, die Legionen dieser Untoten erneut aufzuhalten.
Lesen Sie auch
D-D-D-DOOM angespielt: Ab durch die Hölle
Pioniere der Pop-Kultur und Computerspielgeschichte
Doom-Kennern der ersten Generation, Fans von Retrospielen und allen Aufgeschlossenen sei zum Geburtstag des Games noch ein Buchtipp ans Herz gelegt: Der Journalist David Kushner hat 2003 "Masters of Doom" geschrieben, eine Biografie der beiden id-Software-Johns und akribisch recherchierte Geschichte der Computerspielentwicklung in einem. Das Buch beruht auf mehrjährigen Recherchen und zahlreichen Einzelgesprächen mit allen, die in den 1990er bis frühen 2000er Jahren die US-amerikanische Computerwelt und Computerspielentwicklung geprägt haben.
Der Plot ist eine mitreißende Geschichte von Freundschaft, Verrat, Kunst und Kommerz und geht den Wurzeln der wilden Kreativität zweier Gaming-Pioniere auf den Grund, die zeitweise Kultstatus erlangten und dem Gaming einen neuen Platz in der Gesellschaft eroberten. Neben dem wirtschaftlichen Erfolg ihres Spieleimperiums transformierten sie damals die Pop-Kultur, mit Echos bis heute. Wer John Romero persönlich begegnen mag, hat Mitte Juni bei einem Entwicklerkongress in Berlin eine Chance darauf. Happy Doom-Day!
[Update-Hinweis vom 2. April 2022] GitHub-Link zum Doomfana-Code und Link zu DoomWiki mit Informationen zu den offiziellen Doom-Versionen ergänzt. Interview mit John Carmack verlinkt. Die Grafana-Entwickler haben ihrem Blogeintrag nachträglich technische Details hinzugefügt.
Siehe auch:
- Ego-Shooter damals und heute bei heise Download
(sih)