Void Bastion – spielbarer Prototyp 0.23
Ein plattformübergreifender 2D-Tower-Defense-Prototyp für Godot 4. Der aktuelle Stand ist für Windows, Android und später iOS ausgelegt.
Enthalten
- drei auswählbare realistische Weltraumkarten im Querformat
- vollständig sichtbare Einsatzkarten ohne Scrollen, Minikarte oder Richtungstasten
- hellere, kontrastreichere Stationskarten und eigens gestaltete modulare Metallfahrbahnen mit realistischen Materialtexturen auf Geraden und Kurven, Führungsschienen, gebürsteten Paneelen, cyanfarbenen Energieleitungen, farbigen Reflexionen, Schraubpunkten, warmen Positionslichtern und dezenten Lichtkegeln
- feste Benutzeroberfläche mit 1600 × 900 Referenzauflösung
- eine exakt eine Rasterzelle (80 Pixel) breite Straße, die direkt aus den Wegdaten gezeichnet wird
- sichtbare Straßenmitte, Gegner-Lauflinie und gesperrte Bauzellen verwenden auf jeder Karte dieselbe Datenquelle und können deshalb nicht mehr gegeneinander verrutschen
- deutlich längere Wendeschleifen auf Bastion Prime und der Helios-Werft, damit mehr Baufläche taktisch relevant wird
- sichtbares 80-Pixel-Bauraster mit automatischem Einrasten der Türme
- jede geeignete Plattformzelle ist bebaubar; ausschließlich Wegzellen, Reaktoren und Bereiche außerhalb der Plattform sind gesperrt
- neu erzeugte, straßenfreie HD-Kartenbasen mit 3344 × 1882 Pixeln und Mipmaps für eine schärfere Windows-Darstellung
- drei Türme: Kinetik, Laser und Rakete
- drei Gegnerklassen mit unterschiedlichen Werten
- 15 automatisch skalierende Missionswellen
- drei wählbare Schwierigkeitsgrade: Leicht entspricht dem bisherigen Balancing, Mittel ist der neue Standard und Schwer erhöht Gegnerhülle, Tempo und Anzahl deutlich
- höhere Schwierigkeitsgrade beginnen mit knapperen Ressourcen und belohnen einen Kartensieg mit mehr Kernkristallen
- freiwilliger Endlosmodus nach Welle 15 mit unbegrenzt weiter skalierenden Gegnern
- das Ende eines Endloslaufs zählt ausdrücklich nicht als gescheiterte Mission
- Kommandoschiff-Boss in jeder fünften Welle
- Platzierung per Maus oder Touch
- dreistufiges interaktives Einstiegstutorial
- Platzierungsvorschau mit gültiger beziehungsweise ungültiger Bauposition
- Turmverbesserungen bis Stufe 3 und Verkauf
- sichtbarer Reichweitenkreis bereits vor der Platzierung
- Turmkarten mit Schaden, Schüssen pro Sekunde, Reichweite sowie Einzel- oder Flächenschaden
- Upgrade-Vorschau mit dem konkreten Zuwachs an Schaden, Feuerrate und Reichweite
- kompaktes Turm-Informationsfenster, damit möglichst wenig von der Karte verdeckt wird
- korrigierte Zielausrichtung des Kinetik-Geschützes
- zusätzliche sinnvolle Bauplätze auf Bastion Prime, insbesondere zwischen den Wegschleifen und auf der linken Plattform
- zusätzliche Bauplätze zwischen den parallelen Fahrbahnen der Helios-Werft
- feste Reaktor-Sperrzonen auf allen Karten; auf Reaktoren und offenen Reaktorkammern wird kein Bauraster angezeigt und es können dort keine Türme platziert werden
- auf eine Rasterzelle verkleinerte Turmdarstellung, damit angrenzende Türme nicht in die Fahrbahn hineinragen
- dauerhaft gespeicherte Kernkristalle als spätere Freischaltwährung
- dauerhaftes lokales Gastprofil mit stabiler Spieler-ID als Grundlage für Apple-, Google- und Windows-Anmeldung
- eigene Profilansicht mit lokalen Missions- und Endlosbestwerten pro Karte
- frei wählbarer Spielername mit identischer Prüfung im Spiel und auf dem Server
- zweistufige Kontolöschung direkt im Pilotenprofil; danach wird ein neues lokales Gastprofil erstellt
- direkter Datenschutz-Link im Pilotenprofil
- wartende, lokal gespeicherte Highscore-Einträge für die spätere sichere Serverübertragung
- eigener Multiplayerbereich mit schneller Spielersuche sowie privaten Koop-Räumen mit sechsstelligen Raumcodes
- gemeinsame Online-Lobby mit Spielernamen, festen Verteidigungsseiten und manuellem Bereit-Status für beide Piloten
- reservierter Spielerplatz und automatische Wiederverbindung bei einem kurzzeitigen Netzverlust; die laufende Partie wartet bis zu 60 Sekunden
- Vorschau einer symmetrisch gespiegelten Zwei-Spieler-Arena mit gemeinsamem Reaktor
- getrennte Ressourcenmodelle für beide Koop-Spieler sowie gemeinsam geteilte Reaktorleben
- sichtbarer und jederzeit abbrechbarer Wartezustand für schnelle und private Online-Partien
- bereits spielbarer lokaler Koop-Modus mit einem KI-Partner auf der gespiegelten Kartenhälfte
- nahezu verdoppelte Koop-Weltbreite: Beide Spieler erhalten eine vollständige Kartenhälfte in ursprünglicher Größe
- Spiegelachse direkt durch den vorhandenen Kartenreaktor, sodass Hintergrundreaktor, gemeinsamer Zielpunkt und Laufwege wieder zusammenpassen
- eigener Ansichtswechsel zwischen der unverkleinerten Spieler- und KI-Kartenhälfte
- zwei gleichwertige Gegnerströme von den äußeren Kartenrändern zum gemeinsamen Reaktor
- die KI baut und verbessert selbstständig Kinetik-, Laser- und Raketentürme ausschließlich auf ihrer Seite
- Abschussbelohnungen und Baukosten werden dem jeweiligen Spieler beziehungsweise KI-Partner getrennt zugerechnet
- farblich getrennte Bauflächen und markierte KI-Türme zur schnellen Zuordnung im Gefecht
- fünf Kernkristalle als Belohnung für jede erfolgreich abgeschlossene Karte
- normale und doppelte Spielgeschwindigkeit
- Pause, Missionssieg, Niederlage und lokaler Wellenrekord
- jederzeit sichtbarer Zurück-Button zum Abbrechen der laufenden Runde und Wechseln ins Kartenmenü
- lokaler Speicherstand für Rekord und Tutorialstatus
- für Mobilgeräte geeigneter Compatibility-Renderer
- vorbereitete AdMob-Anbindung für Android und iOS mit Einwilligungsabfrage
- freiwillige Belohnungswerbung für einmalig 150 Notfallenergie pro Mission
- zurückhaltende Vollbildwerbung frühestens nach drei Missionen und mit 15 Minuten Mindestabstand
- keine Bannerwerbung und keine erzwungene Werbung während einer Angriffswelle
Starten
- Godot 4.x installieren.
- Im Godot-Projektmanager
project.godotaus diesem Ordner importieren. - Das Projekt öffnen und F6 oder F5 drücken.
Die Oberfläche ist für 1600 × 900 entworfen und skaliert automatisch auf andere Querformat-Auflösungen.
Beim ersten Öffnen einer frisch entpackten Kopie kann der Import der drei großen HD-Karten je nach PC ungefähr eine Minute dauern. Danach startet das Projekt normal.
Der Prototyp wurde mit der offiziellen Godot-Version 4.7.2 importiert und im automatisierten Headless-Test ohne Skript- oder Laufzeitfehler gestartet.
Der mitgelieferte Logiktest lässt sich bei Bedarf mit godot --headless --path . --script res://tests/smoke_test.gd erneut ausführen.
Werbung und Datenschutz
Die mobile Werbeanbindung ist technisch vorbereitet, aber absichtlich noch nicht für echte Werbung freigeschaltet:
is_realsteht auffalse; Android und iOS verwenden ausschließlich Googles offizielle Test-App- und Test-Anzeigen-IDs.- Unter Windows bleibt das Werbesystem vollständig deaktiviert.
- Ein Belohnungsvideo erscheint nur nach einem freiwilligen Tipp auf Video: +150 Notfallenergie und höchstens einmal pro Mission.
- Vollbildwerbung kann nur am Ende einer Mission erscheinen, frühestens nach drei Missionen und niemals häufiger als alle 15 Minuten.
- Banner, App-Open-Anzeigen und Rewarded-Interstitials werden nicht verwendet.
- Vor der Initialisierung der Anzeigen wird auf Mobilgeräten Googles Consent-Information aktualisiert. Wenn eine Einwilligung erforderlich ist, wird zuerst das UMP-Formular angezeigt.
- Apples App-Tracking-Transparency-Abfrage ist derzeit deaktiviert. Sie wird erst aktiviert, wenn später tatsächlich Tracking beziehungsweise personalisierte Werbung benötigt und rechtlich geprüft wird.
Für die spätere Veröffentlichung müssen im AdMob-Konto eigene App- und Anzeigen-IDs angelegt, in ads_manager.gd beziehungsweise den beiden Export-Konfigurationsdateien eingetragen und is_real bewusst auf true gesetzt werden. Zusätzlich brauchen wir eine veröffentlichte Datenschutzerklärung, die korrekte Datenschutzdeklaration in App Store Connect und Google Play sowie eine erreichbare app-ads.txt-Datei auf der Entwickler-Webseite. Bis diese Punkte erledigt und echte Geräte getestet sind, dürfen die Test-IDs nicht ersetzt werden.
Verwendet wird Godot AdMob Plugin 7.0 aus godot-sdk-integrations/godot-admob. Die Android- und iOS-Erweiterungen liegen mit im Projekt; ein iOS-Build benötigt später weiterhin macOS, Xcode und ein Apple-Developer-Konto.
Online-Backend
Unter server/nakama liegt der reproduzierbare Docker-Compose-Stack für das selbst gehostete Online-Backend. Er besteht aus Nakama 3.37.0, einer eigenen internen PostgreSQL-16-Datenbank und einem täglichen Backup-Dienst mit 14 Tagen Aufbewahrung.
Der Stack ist auf dem vorgesehenen Unraid-Server eingerichtet. Nakamas Spiel-API läuft auf Port 7350, die Verwaltungskonsole ist ausschließlich an den Loopback-Port 7351 gebunden und PostgreSQL besitzt keinen veröffentlichten Host-Port. Echte Geheimnisse werden nur in der geschützten .env-Datei auf Unraid gespeichert und durch .gitignore ausdrücklich aus dem Quellpaket ausgeschlossen.
Die öffentliche Spiel-API ist unter api.void-bastion.gergames.de erreichbar. DNS, HTTPS/WSS über den vorhandenen Nginx Proxy Manager und die Godot-Nakama-Clientanbindung sind eingerichtet. Website und Spielserver verwenden damit getrennte Adressen.
Steuerung
Online-Stand 0.23: Der offizielle Nakama-Godot-Client, automatische Gastanmeldung, servergeprüfte öffentliche Spielernamen, Kontolöschung im Spiel, 36 autoritative Ranglisten, geprüfte Ergebnisübermittlung, Echtzeit-Sockets, serverautoritativer Zwei-Spieler-Koop, private Räume per Raumcode, eine Bereit-Lobby und Wiederverbindung sind eingebaut. Ranglisten lösen den aktuellen öffentlichen Profilnamen über die unveränderliche Spieler-ID auf. Die öffentliche API ist über
https://api.void-bastion.gergames.demit einem gültigen Let's-Encrypt-Zertifikat freigeschaltet. Details stehen inONLINE_SETUP.md.
Die Schaltfläche Bestenliste im Hauptmenü zeigt die zwölf besten Piloten für die aktuell gewählte Karte und Schwierigkeit. Zwischen Mission und Endlosmodus kann direkt in der Ansicht umgeschaltet werden; der eigene Eintrag wird farblich hervorgehoben.
- Turm unten auswählen und auf eine freie Plattformfläche klicken oder tippen.
- Am PC folgt der Reichweitenkreis vor dem Bau dem Mauszeiger. Auf Mobilgeräten markiert der erste Tipp den Bauplatz samt Reichweite; der zweite Tipp auf dasselbe Feld bestätigt den Bau.
- Nur die markierten Rasterfelder sind bebaubar; Türme rasten automatisch in der Feldmitte ein. Die sichtbare Straße wird exakt auf denselben Rasterzellen und derselben Mittellinie gezeichnet, denen auch die Gegner folgen.
- Die Einsatzkarte wird vor dem Start im Hauptmenü gewählt.
- Im Hauptmenü wird außerdem der Schwierigkeitsgrad gewählt; die eingeblendete Kurzbeschreibung zeigt die wichtigsten Auswirkungen und den Kristallbonus.
- Die komplette Einsatzkarte bleibt auf PC und Mobilgeräten sichtbar; ein Verschieben ist nicht notwendig.
- Einen vorhandenen Turm auswählen, um ihn zu verbessern oder zu verkaufen.
- Das Informationsfeld rechts oben zeigt dabei die aktuellen Werte und den Mehrwert der nächsten Stufe.
Nächste Wellestartet den Angriff.1×beziehungsweise2×ändert die Spielgeschwindigkeit.P, Escape oder die Pause-Schaltfläche pausiert das Spiel.- Nach Welle 15 kann die erfolgreiche Mission beendet oder freiwillig im Endlosmodus fortgesetzt werden.
- Unter Multiplayer → Mit KI-Partner startet die gespiegelte Koop-Arena sofort. Du baust auf der vollständigen linken Karte, die KI auf deren vollständiger Spiegelung; beide Seiten verteidigen denselben Reaktor. Mit KI > und < ICH wird ohne Verkleinerung zwischen beiden Seiten gewechselt.
- Unter Multiplayer → Raum erstellen wird ein privater Koop-Raum angelegt und ein sechsstelliger Code angezeigt. Der Mitspieler wählt Raum beitreten und gibt diesen Code ein.
- In der anschließenden Lobby werden beide Pilotennamen und Verteidigungsseiten angezeigt. Die Partie startet erst, wenn beide Bereit gewählt haben.
Nächste Produktionsschritte
- Balancing sowie Testanzeigen auf echten Android- und iOS-Geräten prüfen
- Soundeffekte, Musik und zusätzliche Trefferanimationen
- Kampagnenfortschritt und zusätzliche Bossvarianten
- Freischaltmenü für neue Türme und Karten mit den bereits gespeicherten Kernkristallen
- Plattformkonten mit einer eigenen plattformübergreifenden Spieler-ID verbinden
- Private Raumcodes und die autoritative Koop-Synchronisierung auf echten Android-, iOS- und Windows-Geräten testen
- Freundesliste und direkte Einladungen ergänzen
- Store-Käufe erst nach stabiler Offline- und Koop-Kernversion
Godot Agent Tools MCP
Das Projekt enthält das MIT-lizenzierte Godot-Addon Agent Tools 0.3.1 unter addons/agent_tools sowie die lokale MCP-Brücke unter tools/godot-agent-tools-mcp.
Der Plugin-Eintrag ist in project.godot aktiviert. Beim geöffneten Godot-Editor lauscht die lokale Brücke ausschließlich auf 127.0.0.1:9920. Codex wurde systemweit mit dem Namen godot-agent-tools auf diese lokale Brücke konfiguriert.
Geprüfter Zustand:
- 70 MCP-Werkzeuge erkannt
res://main.tscnals aktuelle Szene erkannt- Szenenwurzel
VoidBastionvom TypNode2Derkannt - 57 Projektverweise geprüft, keine Probleme gefunden
Nach einem Neustart beziehungsweise einer neuen lokalen Codex-Sitzung stehen die Godot-Werkzeuge automatisch zur Verfügung, solange dieses Projekt im Godot-Editor geöffnet ist.
Grafikherkunft
Die Karten und Sprite-Grafiken im Ordner assets wurden für dieses Projekt mit dem integrierten OpenAI-Bildgenerator erzeugt. Für Version 0.12 wurden die drei Karten als straßenfreie, hochauflösende Stationsdecks neu erzeugt und auf 3344 × 1882 Pixel aufbereitet. Die exakten Rasterstraßen entstehen nun im Spiel aus denselben Wegdaten wie Gegnerlinie und Bausperre. Die final verwendeten Prompts stehen in ART_ASSETS.md.