DOVION.io

Hinter den Kulissen: ein Spieleserver ganz OHNE Abhängigkeiten

· 3 Min. Lesezeit · von der Dovion-Crew

Wenn du schon mal einen Zeh in die Webentwicklung gesteckt hast, kennst du den Witz: Der `node_modules`-Ordner eines modernen Projekts wiegt schwerer als ein Foto der Galaxie. Hunderte externe Bibliotheken übereinandergestapelt, von denen niemand wirklich weiß, was sie alle tun. Bei der Entwicklung unseres Spiels in Node.js sind wir den umgekehrten Weg gegangen, und das ist einer unserer Entwickler-Stolzmomente: Der Dovion-Server läuft ohne JEDE externe Abhängigkeit. Null. Nicht eine einzige Drittanbieter-Bibliothek beim Start.

Was heißt das konkret?

Wenn ein Studio einen Online-Spieleserver aufsetzt, ist der Reflex, fertige Bausteine zusammenzustecken: eine Bibliothek für WebSockets (die Echtzeitverbindung zwischen deinem Browser und dem Server), eine andere zum Ausliefern von Dateien, eine für dies, eine für das. Am Anfang geht das schnell.

Wir haben alles selbst geschrieben. Einschließlich des einschüchterndsten Teils: den WebSocket-Server selbst, also das Protokoll, das in Echtzeit die Positionen der Schiffe, Schüsse und Events zwischen Server und jedem Spieler überträgt. Das ist genau die Art von Komponente, die 99 % der Projekte importieren, ohne sich Fragen zu stellen. Wir wollten sie bis zur letzten Zeile verstehen.

Warum tut man sich das an?

Es ist nicht (nur) Masochismus. Diese Entscheidung hat sehr konkrete Vorteile:

Der Plan B für gesperrte Netzwerke

Ein konkretes Beispiel, was diese Kontrolle ermöglicht: Manche Netzwerke — Schulen, Unternehmen — blockieren WebSocket-Verbindungen. Bei den meisten Spielen führt das zu einem Verbindungsbildschirm, der sich im Leeren dreht. Da wir unseren gesamten Netzwerk-Stack selbst kontrollieren, konnten wir einen HTTP/SSE-Ersatztransport bauen: Wenn WebSocket blockiert ist, wechselt das Spiel automatisch auf diese alternative Route, und du spielst trotzdem. Diese Art von Sicherheitsnetz ist viel schwerer einzubauen, wenn die Netzwerkschicht eine importierte Blackbox ist.

Die Nachteile (denn die gibt es)

Seien wir ehrlich, diese Philosophie hat einen Preis: Zeit. Selbst zu schreiben, was andere in einer Zeile importieren, bedeutet Wochen zusätzliche Arbeit, technische Spezifikationen zu lesen, verzwickte Fälle zu handhaben. Das ist ein Luxus für ein kleines, leidenschaftliches Projekt; ein Team mit kommerziellen Deadlines könnte sich das wahrscheinlich nicht leisten. Wir behaupten nicht, dass das DIE richtige Methode für alle ist — es ist unsere, und sie passt zu unserer Größenordnung.

Diese Selbstgemacht-Philosophie geht übrigens über den Server hinaus: Auch die Spielwelt selbst wird vom Code gezeichnet, ohne Bilddateien, wie wir in den Kulissen des Ghibli-Renderings erklären. Das Gesamtergebnis: ein leichtes Spiel, das schnell lädt und selbst auf bescheidener Hardware läuft — der Beweis dafür in Dovion auf schwacher Hardware.

All diese unsichtbare Arbeit hat nur ein Ziel: dass DU klickst und es einfach funktioniert. Überzeug dich selbst: Dovion kostenlos spielen.

Bereit zum Auslaufen? Dovion ist kostenlos spielbar, ohne Download, am PC und auf dem Handy.

⚓ Dovion spielen