
Wie Nexus funktioniert
Flache Komplexität
Der klassische Ansatz bei Spielen dreht sich um starre Systeme: Jede Mechanik ist eigener Code, jede Verbindung zwischen Mechaniken noch mehr Code. Selbst Sandboxes bleiben eine Ansammlung einzelner Systeme. Die Vielfalt wächst, aber die Architektur bleibt gleich - und die Entwicklungskomplexität wächst mit.
Nexus funktioniert anders. Die Grundelemente des Spiels sind Atome, aus denen alles andere entsteht. Neue Mechaniken erhöhen die architektonische Komplexität nicht.
Millionen von Elementen, aber die Architektur wird dadurch nicht komplexer. Das System skaliert - für Mechaniken, Regeln und Welten jeder Komplexität.
Semantisches Netz
Nexus speichert Daten als Tripel (Fakten) - einfache Aussagen im Format "Subjekt → Prädikat → Objekt". In einem einzigen Format werden sowohl Fakten über die Welt als auch Mechanikregeln beschrieben:
- Apfel → ist → essbar (Fakt über die Welt)
- Hirsch → ist → Pflanzenfresser (Fakt über die Welt)
- Schlag → verursacht Schaden → 6 (Mechanikregel)
- Gift → ignoriert Rüstung → ja (Regelmodifikation)
- Gras → wächst → bei Feuchtigkeit über einem bestimmten Niveau (Fakt über die Welt)
- Syndikat → kontrolliert → Stadtviertel (Fakt über die Welt)
Daten und Regeln werden im selben Format, im selben Graphen gespeichert. Durch Tripel wird alles beschrieben: Objekte, Eigenschaften, Zustände, Beziehungen, Aktionen, Technologien, Magie. Das ist der zentrale Unterschied zu klassischen Ansätzen, in denen Daten und Logik getrennt leben.
Die Welt basiert auf einer großen Menge an Fakten: Tiere, Technologien, Gegenstände, Gebäude, historische Ereignisse - von allgemeinen Prinzipien bis zu konkreten Details.
Interpreter
Der Interpreter verarbeitet Tripel und leitet Schlussfolgerungen aus Fakten ab:
- Apfel → ist → Frucht
- Mensch → kann essen → Früchte
- Schlussfolgerung: Mensch kann Äpfel essen
Schlussfolgerungen entstehen durch den Abgleich von Fakten. Ketten können lang sein. Hier ein komplexeres Beispiel:
- Goblin → ist → Wesen
- Wesen → hat → Gesundheit
- Schlussfolgerung: Goblin hat Gesundheit
- Schlag → verursacht → Schaden
- Schaden → reduziert → Gesundheit
- Schlussfolgerung: Schlag kann dem Goblin schaden
Gift mit einem Schadensprädikat hinzugefügt - es wirkt automatisch gegen alles, was Gesundheit hat.
Der Interpreter arbeitet mit formalisierten Anfragen, nicht mit natürlicher Sprache.
Wissensgraph
Objekte und Eigenschaften der Welt müssen flexibel beschrieben werden, ohne Hardcoding.
Die Basis bilden Entitäten: Charaktere, Gegenstände, Tiere, Organisationen, Schiffe, Pflanzen. An jede Entität werden Fakten über Prädikate gebunden.
Jedes Prädikat drückt eine Beziehung oder eine Eigenschaft aus:
- "Ist" (Klassifikation: Goblin → Wesen)
- "Hat" (Besitz: Wesen hat Gesundheit)
- "Schaden" (Einwirkung: Schlag verursacht 6)
- "Kosten" (Verbrauch: Schlag kostet 3 Mana)
- "Absorption" (Schutz: Schild blockt 5)
- "Beziehung" (Verbindung: Goblin hasst Menschen)
Schlag hat das Prädikat Schaden = 6. Schild hat das Prädikat Absorption = 5. Die Engine leitet ab: 6 - 5 = 1 geht auf die Gesundheit. Eine Mechanik für jede Schadensquelle und jede Verteidigung - Schwert, Gift, Feuer, Zauber.
Die Eigenschaften bilden ein Netz, in dem jedes Glied ein Fakt ist. Regeln und Interaktionen leben als Daten, nicht fest im Code.
Für die Performance werden Caching, Indizes und adaptive Detailstufen (LOD) eingesetzt.
Regeln als Muster
Daten und Logik allein sind noch kein Spiel. Für Gameplay braucht es eine Regelschicht. In der klassischen Entwicklung sind Regeln Code: Jede Mechanik wird von einem Programmierer geschrieben. In Nexus werden Regeln mit denselben Tripeln beschrieben wie die Daten.
Die Basis bilden universelle Muster, die für alle Genres gelten. Einwirkung: Schwert verursacht Gesundheitsschaden, Rost - Haltbarkeitsschaden, Inflation - Kaufkraftverlust. Verbrauch: Schlag kostet Mana, Gebäude kostet Holz, Reise kostet Treibstoff. Absorption: Schild blockt Schaden, Gegenargument blockt Anklage, Versicherung deckt Verlust.
Der Designer beschreibt was passiert, nicht wie. "Schlag verursacht 6 Schaden" - ein Tripel. Die Engine bestimmt selbst: Schaden geht durch Absorption, der Rest trifft die Gesundheit. Die Formel wird nicht für jede Aktion einzeln geschrieben - sie folgt aus dem Muster.
Muster lassen sich frei kombinieren. Ein Kartenspiel nutzt Einwirkung und Absorption. Eine Strategie nutzt Verbrauch und Akkumulation. Ein RPG kombiniert alles.
Ein neues Spiel - das sind neue Entitäten und neue Kombinationen von Mustern.
Agenten
Eine Entität kann als Agent beschrieben werden - mit eigenem Zustand und eigenen Verhaltensregeln. Das ist eine optionale Eigenschaft. Der Gegner im Kartenspiel wählt selbst seine Aktion. Barbaren in einer Strategie greifen an, wenn die Bedingungen stimmen. Ein Händler im RPG reist zwischen Städten. Ein Agent:
- Nimmt die Welt im Rahmen seines Wissens wahr
- Bewertet verfügbare Aktionen
- Trifft Entscheidungen auf Basis seiner Ziele und der Weltregeln
Ein Agent wird mit denselben Tripeln beschrieben wie alles andere. Schmied kann schmieden (Fakt), braucht Erz (Fakt), Erz ist in der Mine (Fakt). Aus diesen Fakten leitet der Interpreter die Handlung ab: zur Mine gehen, Erz abbauen. Mine ist überflutet - Schmied kann kein Erz abbauen - sucht einen Händler - kauft. Das Verhalten ist aus einer Kette von Fakten entstanden.
Skalierung ohne Logikverlust
In einer tiefen Simulation kann die Welt eine riesige Menge an Prozessen enthalten: von Tierwanderungen und Städtewachstum bis zur Dynamik von Sternsystemen. Alles durchzurechnen ist unmöglich und unnötig - der Spieler nimmt die Welt immer subjektiv und in begrenztem Umfang wahr.
Die Welt ist als Hex-Karte organisiert. Jedes Hex speichert Eigenschaften seines Maßstabs: auf planetarer Ebene - Klima und Ressourcen, auf regionaler - Städte und Straßen. Ein Klick auf ein Hex öffnet die nächste Ebene - darin eine neue Karte mit detaillierteren Eigenschaften. Der Algorithmus ist auf allen Ebenen gleich - vom Sternsystem bis zum einzelnen Gebäude.
Zeit und Raum
Für lange Zeiträume kann das System statistische Modelle statt schrittweiser Berechnung verwenden. Man kann durch die Zeit reisen, ohne jeden Moment zu simulieren. In tausend Jahren kann ein Wald wachsen oder verschwinden, ein Fluss seinen Lauf ändern, eine Siedlung wachsen oder verlassen werden. Tendenzen und Zusammenhänge bleiben erhalten.
Die räumliche Skalierung bestimmt die Ebene der Entitäten und Prozesse. Im großen Maßstab - Klima, Migration, Politik. Im lokalen - einzelne Entitäten und ihre Eigenschaften. Die Logik der Kausalzusammenhänge ist auf allen Ebenen gleich.
Die Abstraktionen fassen Welten jeden Maßstabs: ein Dorf, einen Planeten, eine Galaxie. Details erscheinen, wenn sie relevant werden. Der Rest wird vereinfacht dargestellt, aber die Zusammenhänge bleiben erhalten.
Der Spieler kann sich in den Aufbau der Welt vertiefen und Entitäten über ihre Eigenschaften erkunden - ähnlich wie die Navigation in einem Nachschlagewerk.
Materialisierung der Welt
Die Welt wird erst beim Erkunden aufgebaut. Solange der Spieler einen Ort nicht besucht hat, existiert er nur als Daten und Regeln. Objekte erscheinen im Moment der Interaktion, nicht im Voraus.
Außerhalb des Beobachtungsbereichs bestimmen Wahrscheinlichkeiten die Ereignisse, keine vollständige Simulation. Die Welt wirkt geschlossen, obwohl Details erst auf Anfrage entstehen.
Nach der Interaktion mit einem Ort wird dessen Zustand gespeichert und nicht mehr neu berechnet.
Über lange Zeiträume wirken statistische Tendenzen. Nach tausend Jahren entscheidet das System anhand von Wahrscheinlichkeiten: Welche Arten überleben, wie sich das Klima ändert, wo Siedlungen entstehen.
Netzwerkspiel
Das Netzwerkspiel funktioniert nach demselben Prinzip. Der Server speichert Daten, Regeln und das, was Spieler bereits entdeckt haben.
Befinden sich mehrere Spieler im selben Bereich, sammelt der Server den gemeinsamen Zustand und synchronisiert ihn zwischen ihnen.
Außerhalb des Spielbereichs bleibt die Welt potenziell - Regeln und Tendenzen, ohne Details.
Die grundlegende Netzwerkarchitektur funktioniert bereits: Jeder Spieler erhält eine isolierte Sitzung, der andere per Code beitreten können. Aktionen werden in Echtzeit synchronisiert.
Architektur als Sprache
Daten, Regeln, Interface und Agentenverhalten - ein Format. Entitäten wissen nichts voneinander, Verbindungen entstehen automatisch über gemeinsame Prädikate.
Wie funktioniert das in der Praxis? Wald ist eine Entität mit Fakten: hat Holz, ist Deckung, ist brennbar. Axt hat das Prädikat Fällen. Fällen wirkt auf Holz. Feuer wirkt auf Brennbares. Dürre erhöht die Brennbarkeit. Jeder Fakt - eine Zeile. Der Wald weiß nichts von Äxten, die Axt nichts vom Wald. Die Verbindung entsteht automatisch über gemeinsame Prädikate. Einen Laserschneider mit dem Prädikat Fällen hinzugefügt - er wirkt gegen den Wald. Ein planetares Bombardement mit dem Prädikat Feuer hinzugefügt - der Wald brennt.
Wenn sich eine Spielsituation in Worte fassen lässt - funktioniert sie in Nexus.
