Flusssteuerung

Leider sind unsere Rechner nicht so leistungsfähig, dass sie jede Situation in einem 3D-Spiel exakt durchrechnen können. Die Flusssteuerung soll nun dafür sorgen, dass der Benutzer seinen Rechner bedienen kann und dass er im Idealfall ein nicht ruckelndes Bild sieht.

Dafür muss der Programmierer aber Berechnungen einsparen ohne dass es zu sehr auffällt. Die Flusssteuerung ergreift folgende Maßnahmen:

  • Falls sich z.B. bei Explosionen zu viele Objekte gleichzeitig im Raum bewegen werden einige einfach angehalten und erst später wieder freigegeben.
  • Falls sich zu viele Kugeln aus Kugelgeneratoren gleichzeitig bewegen werden einige einfach vorzeitig gelöscht.
  • Nur bei ausreichender Rechenleistung sieht man 10000 Meter weit und kann sich an voller Auflösung und am Schattenwurf erfreuen. Ansonsten wird die Darstellungsqualität schrittweise verringert so lange bis man nur noch 1000 Meter weit sehen kann, die Auflösung nicht mehr gut ist und es natürlich auch keine Schatten mehr gibt.
  • LOD-Reduktion der Objekte, die weiter weg sind (es werden z.B. bei Wänden keine Würfel mehr dargestellt) sowie Ausblenden von Objekten, die nicht sichtbar sind.

Batchsystem

Der Batch-Betrieb ist die Grundlage für viele Automatikfunktionen, für das Fehlermeldesystem, für das Kopieren, das Speichern und Laden, Szenarios.

Das Batchsystem schreibt alles, was der Bediener baut, so mit, dass man den Bau automatisch wiederholen kann. Auf Grundlage dieses Systems könnte man also z.B. auch eine allgemeine „Zurück“-Funktionalität realisieren. Eine schrittweise „Vor“-Funktionalität mit der Möglichkeit, Schritte zu überspringen, gibt es schon.
Nicht in das Batchsystem eingetragen wird das Auslösen von Events und Keys (wohl aber das Definieren von Events und Keys).

Eventsystem

Das Eventsystem ist die Grundlage für eine Animation im Spiel. Man kann damit ein eventfähiges Objekt mit einem Tastendruck so modifizieren, wie es im Event definiert ist. Eventfähige Objekte sind Lampen, Kugelgeneratoren, Bomben, Signale, Weichen. Keys lösen mehrere Events gleichzeitig aus. Die Zeitsteuerung oder die Ereignissteuerung für die Auslösung von Events fehlt noch.

Fehlermeldesystem

Das Fehlermeldesystem besteht derzeit aus der Möglichkeit, Fehlermeldungen aus dem Spiel abzugeben, sowie aus einer Notseite auf der Homepage, falls das nicht mehr möglich sein sollte. Die Fehlermeldung aus dem Spiel heraus enthält die mitgeschriebene Batchdatei, um die Reproduktion des Fehlers zu vereinfachen, sowie einen Meldetext, den der Melder eingeben muss. Über die mitgeschriebene Batchdatei sind auch die verwendeten Versionen klar.

Versionsverwaltung

Die Versionsverwaltung ist ansatzweise ausprogrammiert. Alle Builds werden bereits automatisch hochgezählt, der Programmierer kann die Maior, Minor und Patch-Version festlegen, und das nicht nur für das Spiel an sich sondern auch für die jeweils erzeugten Batch-Dateien. Dadurch ist die Grundlage für eine eventuell notwendige Kompatibilitätsbehandlung gelegt.