// TECH //

Vom Klick zum Live-Match in Sekunden

Was der Browser lädt, wie deine Identität die Iframe-Grenze überquert, und was die Server tun, während du spielst. Die Zahlen zu den Spielen wurden im September 2026 an den Live-Builds gemessen.

Was ein Klick auf Spielen wirklich lädt

Jedes Spiel auf mobx.games hat seine eigene Seite, und auf dieser Seite läuft es auch. Der Artikel, an dem du vorbeiscrollst, das Titelbild und der Spielen-Knopf sind schlichtes HTML, also ist die Seite lesbar und funktioniert, bevor auch nur eine Zeile Spielcode geladen ist. Die Liste der Spiele steckt im Skript der Seite selbst, das richtige Spiel zu finden kostet also keine zusätzliche Anfrage.

Ein Klick auf Spielen macht genau eine Sache: Er setzt anstelle des Titelbilds ein Iframe ein und richtet es auf die eigene Adresse des Spiels, blob.mobx.games, clashofstars.mobx.games oder zonecommand.mobx.games. Alles danach ist das Spiel, das sich selbst lädt. Ein Einladungslink funktioniert genauso: Ein Lobby-Code in der Seitenadresse wird an das Spiel weitergereicht, und das Titelbild wird übersprungen, denn ein Link von einem Freund ist eine Bitte mitzuspielen, nicht zu lesen.

Warum es keinen Installationsschritt gibt

Es wird nichts installiert, weil es nichts zu installieren gibt: Die Spiele sind HTML, JavaScript und ein Canvas, und jedes wird unabhängig von der Seite drumherum auf seinem eigenen Host ausgeliefert. Dein Browser speichert die Dateien wie bei jeder anderen Webseite zwischen, ein zweiter Besuch kommt also größtenteils aus diesem Cache.

Was ein erster Besuch mit leerem Cache kostet, laut der Ressourcen-Zeitmessung des Browsers selbst:

Alle drei Menüs waren an einer Desktop-Verbindung innerhalb einer Sekunde auf dem Bildschirm und klickbar. Ein Handy mit schwachem Empfang braucht länger, und je schwerer die Grafik, desto mehr merkt man das.

Das Spiel läuft in einer Sandbox, unter eigener Adresse

Das Spiel läuft nicht auf mobx.games selbst. Es läuft auf seiner eigenen Subdomain, in einem Iframe mit sandbox="allow-scripts allow-same-origin allow-pointer-lock allow-popups allow-popups-to-escape-sandbox" und allow="autoplay; fullscreen; clipboard-write".

Eine andere Origin bedeutet, dass das Spiel die Seite drumherum nicht lesen kann, weder ihr DOM noch ihren Speicher, und die Seite kann das Spiel genauso wenig lesen. Außerdem bleiben so die Spielstände und der Offline-Cache jedes Spiels von denen aller anderen getrennt. Vollbild und Mauszeiger-Sperre sind bewusst erlaubt, damit der Vollbild-Knopf die echte Browser-Schnittstelle nutzt, wo es eine gibt, und den Bildschirm von Hand übergibt, wo keine existiert, wie im Safari auf dem iPhone. Der Zugriff auf die Zwischenablage ist da, damit der Kopieren-Knopf neben einem Lobby-Code auch im Iframe funktioniert.

Wie das Spiel erfährt, wer du bist, ohne Passwort

In diesem System gibt es keine Passwörter. Sobald zum ersten Mal eine Identität gebraucht wird, legt der Kontodienst ein anonymes Gerätekonto an: ein undurchsichtiges Token und eine Spieler-ID, keine E-Mail. Um es zwischen Handy und Laptop mitzunehmen, gibst du eine E-Mail-Adresse an und bestätigst einen 6-stelligen Code. Das ist die ganze Anmeldung.

Das Token lebt in einem mobx_dt-Cookie mit Geltung für .mobx.games. Dieser führende Punkt ist es, der die geteilte Origin zum Laufen bringt: Ein Spiel auf seiner eigenen Subdomain sitzt unter derselben Domain und sieht das Token bereits. Das Konto, mit dem du dich auf der Seite angemeldet hast, ist also das Konto, mit dem das Spiel spielt.

Änderungen laufen über einen kleinen Nachrichtenkanal über die Iframe-Grenze. Will ein Spiel das Anmeldefenster, bittet es die Seite, es zu öffnen, denn die Anmeldung gehört der Seite. Meldest du dich dort an oder ab, sagt die Seite dem Spiel Bescheid, und das Spiel schlägt seinen Spieler ohne Neuladen erneut nach. Beide Seiten bleiben misstrauisch: Die Seite hört nur auf Nachrichten von mobx.games-Adressen und schickt selbst nur an die genaue Origin des Spiels, das sie eingebunden hat.

Wie du in einem Match mit einem echten Menschen landest

Zwei der drei Spiele teilen sich einen serverseitigen Matchmaker, und der probiert zuerst die langweilige Option: Wartet eine öffentliche Lobby mit einem freien Platz und einem lebendigen Host, wirst du dort bereits als bereit hineingesetzt. Die Wertung wird dabei ignoriert: In einem laufenden Spiel zu landen, schlägt eine faire Paarung, wenn niemand in der Warteschlange steht.

Gibt es keine Lobby zum Beitreten, kommst du in eine Warteschlange, die sich weitet, während du wartest. Der akzeptable Wertungsabstand beginnt bei 150 Punkten und wächst um 100 pro fünf gewartete Sekunden, und die Fenster beider Spieler müssen den Abstand überspannen, bevor sie gepaart werden, sodass ein langer Wartender nie einen unpassenden Neuankömmling vorgesetzt bekommt. Es gibt keine serverseitigen Timer: Dein Client schickt seine Anfrage alle fünf Sekunden neu, und zwei kompatible Suchende werden sofort gepaart. Das Match beginnt 800 Millisekunden später, auf einer Uhr, auf die sich beide Clients einigen.

Blob Volley fährt eine gröbere Version derselben Idee und stuft den Abstand über 200, 500 und 1000 Wertungspunkte bis hin zu jedem, fünf Sekunden pro Stufe.

Matchmaking dauert Sekunden, wenn gerade noch jemand sucht. Wenn nicht, ist es ein Warten, und das repariert keine Technik, weshalb alle drei Spiele auch einen vierstelligen Lobby-Code ausgeben, den du einem Freund schicken kannst.

Was das Match am Laufen hält

Jedes Online-Match läuft über einen WebSocket zu einem regionalen Endpunkt. Clash Of Stars rät die Region aus deiner Zeitzone (Frankfurt, Virginia oder Singapur) und lässt dich das in den Optionen überschreiben. Blob Volley öffnet alle drei und behält den, der zuerst antwortet. Zone Command läuft heute in einer Region, Frankfurt.

Dieser Socket ist ein Relay, und das Relay ist der Boden, nicht die Decke. Jedes Spiel handelt zusätzlich einen direkten WebRTC-Datenkanal aus, ungeordnet und ohne Wiederholungen, weil eine verspätete Eingabe nichts wert ist. Solange beide Routen existieren, gehen Pakete über beide raus, sodass die direkte Route die Latenz nur senken und ein Match nie zu Fall bringen kann. Blob Volley dreht die Reihenfolge um: Es bevorzugt den direkten Kanal und fällt nach 15 Sekunden auf das Relay zurück.

Was über die Leitung geht, ist kein Spielzustand. Alle drei schicken Eingaben und Befehle und berechnen die Folgen lokal, weshalb der Verkehr winzig ist:

Wo die Sekunden wirklich bleiben

Zusammengezählt für einen kalten ersten Besuch an einer Desktop-Verbindung: eine Seite, die lesbar ist, bevor Spielcode ankommt, unter einer Sekunde, bis das leichteste Spiel ein klickbares Menü zeigt, zwei Taps bis zur Schnellsuche, und dann die eine Zutat, die keine Technik liefern kann, ein anderer Mensch.

▶ Zu den Spielen