Browserquest: Mozilla startet Browser-MMOG in HTML5
Zusammen mit den französischen Webentwicklern von Little Workshop hat Mozilla mit Browserquest ein Browser-MMOG entwickelt, das komplett mit HTML5, CSS und Javascript realisiert wurde. Tausende Spieler können gleichzeitig auf unterschiedlichen Geräten spielen.
Ein Tribut an klassische Videospiele und eine Demonstration dessen, was mit HTML5 heute möglich ist, soll Browserquest sein. Spieler steuern einen jungen Krieger, der in einer Welt voller Schätze dem Ruf des Abenteuers folgt. Nur eine Prinzessin, die es zu retten gilt, fehlt in dem Spiel.
Der eigentliche Star in dem Spiel ist die Technik, denn das 2D-Spiel ist komplett mit modernen Webstandards umgesetzt und kann von tausenden Spielern verteilt über mehrere Instanzen gleichzeitig gespielt werden. Ein Klick auf die Zahl der Spieler in der aktuellen Instanz zeigt, wie viele Spieler insgesamt online sind. Bei unseren Versuchen waren rund 75 Spieler in einer Instanz aktiv, mehr als 1.600 insgesamt. Spieler können sich gegenseitig beobachten und miteinander chatten, sich aber nicht bekriegen.
Zur Kommunikation mit dem Server nutzt Browserquest Websockets. Diese ermöglichen eine bidirektionale Kommunikation, so dass die Bewegungen mehrerer Spieler in einem Browserfenster verfolgt werden können. Beim Start des Spiels wird eine Websocket-Verbindung zu einem von mehreren Servern geöffnet, die hinter einem Load-Balancer stehen. Auf jedem Server werden mehrere Instanzen des Spiels gehostet. Die Server sind für die Synchronisation aller Spieler aller Instanzen verantwortlich.
Dabei kommt auf Server und Client in kleinem Umfang der gleiche Javascript-Code zum Einsatz, denn die Server laufen mit Node.js.
Auf Client-Seite wird HTML5 Canvas mit einer Tile-basierten Grafik-Engine verwendet, um die 2D-Welt zu zeichnen. Bei der Initialisierung der großen Karte kommen Web Worker zum Einsatz, so dass das Homepage-UI nicht ausgebremst wird. Die Entwicklung des eigenen Charakters wird immer wieder automatisch mittels Localstorage direkt im Browser gespeichert. Eine Registrierung oder Anmeldung ist so nicht notwendig, allerdings ist es auch nicht möglich, einen Spielstand auf einen anderen Rechner zu übertragen.
CSS3 Media Queries sorgen dafür, dass sich das Spiel der jeweiligen Displaygröße anpassen kann, denn Browserquest funktioniert nicht nur in den Desktopbrowsern Firefox, Chrome und Safari, sondern auch auf mobilen Geräten wie iPhone und iPad sowie Android-Smartphones und -Tablets mit Firefox. Das HTML5 Audio wird genutzt, um Kampfgeräusche auszugeben.
Browserquest lief bei uns flüssig und ließ sich auch auf iPad und iPhone gut steuern. Wer mitspielen will, geht auf browserquest.mozilla.org.
Der Quelltext von Client und Server für Browserquest ist Open Source und steht auf Github zur Verfügung.
es geht immer noch nich :-(
Das Labyrinth in der Höhle? -> Einfach immer links abbiegen.
afaik ist Canvas ein Bestandteil der HTML5 Spezifikation und daher ist die Erwähnung...
Ich kenne diese Emulatoren schon seit 10 Jahren. :) Und die sind so geil geworden...