Dokumentversion: 0.15.0 | Status: unveröffentlichter Recovery-Stand | Verantwortungsbereich: Executive Producer / Technical Writer | Sprint: 7
Ein Echtzeitstrategiespiel in der Tradition von Command & Conquer — Basisbau, Ernte, Armee, Karte kontrollieren. Gebaut mit Unity und C#, offen entwickelt. Arbeitstitel in Umstellung: Hashkrieg.
| Allianz | Legion | ||
|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
Concept-Art, keine Bildschirmfotos aus dem Spiel. Der komplette Satz: Kontaktbogen
Diese Seite ist der Einstieg in Repository, Projektstatus und Dokumentation. Sie unterscheidet bewusst zwischen vorhandenem Prototypcode und bestandenen Gates — und sie sagt offen, welche Entscheidung als Nächstes ansteht.
- AGENTS.md – verbindliche Arbeitsregeln
- CONTRIBUTING.md – Branch-, PR- und Review-Ablauf
- docs/README.md – vollständiger Wiki-Index
- docs/vision/Lore.md – Weltentwurf Hashkrieg
- docs/vision/Konzept_Hashkrieg.md – die Mechanik-Variante, über die entschieden werden muss
- docs/production/MVPRecoveryPlan.md – Gates G0 bis G5
- docs/production/MVPContentManifest.md – exakter MS-1-Inhalt
- docs/production/DecisionLog.md – alle Entscheidungen mit Alternativen
- docs/production/ScopeLedger.md – Register aller Verschiebungen gegenüber dem MS-1-Inhalt
Die Welt ist nicht an einem Krieg zugrunde gegangen, sondern an einer Abrechnung. Als Rechenleistung die einzige Größe wurde, die noch Wert bemaß, verfiel am Tag des Großen Abschlusses jeder Anspruch, der nicht durch nachgewiesene Rechenleistung gedeckt war. Renten, Anleihen, Grundbücher. Nicht gestohlen — nur nicht abgerechnet. Es war eine korrekt ausgeführte Regel, und genau daran zerbricht die Welt bis heute: Es gibt niemanden, den man dafür hängen könnte.
Beide Fraktionen haben denselben Tag erlebt und entgegengesetzte Lehren gezogen:
| Allianz | Legion | |
|---|---|---|
| Lehre | Es war ein Buchhaltungsfehler | Genau so fängt es wieder an |
| Ziel | eine verlässliche Abrechnungsinstanz | die Kette dauerhaft umkämpft halten |
| Baut | für die Ewigkeit: versiegelt, teuer, symmetrisch | für morgen früh: offen, billig, ersetzbar |
| Widerspruch | braucht dafür ein Monopol | braucht dafür den ewigen Krieg |
Frieden ist nicht Unwille, sondern Arithmetik. Einkommen ist Anteil, nicht Ertrag: Wer nicht wächst, schrumpft. Und die 51-Prozent-Mehrheit ist für die Allianz der Sieg und für die Legion das Weltende — beide haben recht.
Der vollständige Weltentwurf inklusive Kampagnen-Anker steht in docs/vision/Lore.md.
Das ist gerade die wichtigste ungeklärte Frage des Projekts, und sie ist bewusst offen: Ändern wir die ökonomische Grundschleife, oder nicht?
Heute (und in jedem RTS seit 1995): Ressourcen fließen nach innen. Harvester fahren raus, sammeln Aetherium, bringen es heim. Die Basis verbraucht.
Die Variante „Hashkrieg": Energie fließt nach außen. Du erzeugst Strom im Zentrum deiner Basis und lieferst ihn per Konvoi an Rechenfarmen an der Peripherie, die Ertrag erwirtschaften. Jedes Watt ist eine Entscheidung — rechnet es, oder schießt es?
Was daran hängt:
| bleibt gleich | ändert sich | |
|---|---|---|
| Sammler-Loop | Ladung, Ladezeit, Docks, verwundbare Konvois | die Richtung kehrt sich um |
| Biome | Karten und Gelände | bekommen eine wirtschaftliche Identität (Kühlung) |
| Wirtschaftsknick | Taktgeber ins Endgame | wird zum angekündigten Halving |
| Superwaffe | teuer, sichtbar, sabotierbar | wird zur 51-Prozent-Attacke |
| Fog of War | gilt für die Karte | gilt nicht für die Konten: jeder sieht die Einnahmen aller |
Die vollständige Analyse mit Mechanik-Mapping, Match-Bogen und drei bewerteten Optionen steht in docs/vision/Konzept_Hashkrieg.md. Kurzfassung der dortigen Empfehlung: MS-1 wie geplant fertigstellen — die Mechanik ist mechanisch fast identisch und validiert sich dabei selbst —, den Hashkrieg-Umbau danach als Prototyp erproben.
Gegenmeinungen sind ausdrücklich erwünscht. Wenn du dazu etwas zu sagen hast: ein Issue aufmachen und in zwei Sätzen begründen, welche Option du für richtig hältst.
Phase: Implementierungs-Recovery · Aktiv: Sprint 7 · G0-A: offen
| Ergebnisstufe | Status |
|---|---|
| Sprint 6 | durch D-055 beendet; Recovery-Rebaseline ersetzt die alte Planung |
| Sprint 7 | läuft: zuerst G0-A Trusted-Gate-Bootstrap, danach G0-B Plattformbasis |
| G0 | offen |
| MS-0 | nicht erreicht |
| MS-1 / MVP | nicht erreicht |
| Alpha | nicht begonnen |
Was seither entstanden ist, ohne dass es einen Gate-Status begründet:
- Graybox-Slice — die Simulation ist erstmals sicht- und bedienbar (siehe §4)
- Fraktionsidentität — Allianz und Legion spielen sich unterschiedlich: Schadensmatrix, Waffenwerte, Siegbedingungen, fraktionsaufgelöste Definitionstabelle und Harvester-Kapazität
- Weltentwurf und Concept-Art — 34 Bilder, ein Bildstandard, eine Lore (§5)
Das Repository enthält einen unvollständig integrierten Prototyp. Dateien, Typen und isolierte Tests sind kein Fertignachweis. Führend sind der Implementierungs-Audit und schema- sowie semantikvalide Gate-Evidence; es werden keine Evidence-Platzhalter erzeugt.
Schema 1.2 prüft aktuell ausschließlich Integrität und autorisiert keinen
Gate-Pass. Jeder Pass-Versuch endet fail-closed mit
E_AUTHORIZATION_BOOTSTRAP. G0-A1 liefert Schema 1.3, Trusted-Checkout-
Topologie und Gate-Runner nur als Integritätsgrundlage. G0-A2 muss danach den
zweiphasigen D-066-Receipt-Vertrag mit getrenntem Subject, Evidence-Carrier
und Trusted Tooling implementieren. Erst ein nachfolgender sauberer
Subject-Commit darf damit G0 nachweisen.
Seit dem Graybox-Slice ist das Spiel zum ersten Mal sicht- und bedienbar. Das ist ein Diagnosestand, kein Fortschritt an einem Gate: Er belegt weder G0 noch MS-0 oder MS-1. Was er zeigt und was nicht, steht weiter unten — bitte vor dem ersten Start lesen.
- Projekt in Unity
6000.5.4f1öffnen (exakter Pin, kein Auto-Upgrade). Assets/_Project/Scenes/Bootstrap.unityöffnen und Play drücken.- Das Match startet von selbst: 128×128-Karte, zwei Slots, du bist Slot 0.
Die Szene ist Maschinenausgabe. Wenn sie beschädigt oder veraltet ist, wird
sie über das Menü Tools/Project Nova/Create Bootstrap Scene neu erzeugt — die
.unity-Datei wird nie von Hand bearbeitet.
Verbindlich ist der Code (RtsDeviceInput); das HUD zeigt dieselbe Legende an.
| Eingabe | Wirkung |
|---|---|
| Linke Maustaste, Klick | Eigene Einheit unter dem Cursor auswählen, sonst Auswahl leeren |
| Linke Maustaste, Ziehen | Box-Auswahl eigener Einheiten |
| Rechte Maustaste | Bewegen zum Zielpunkt |
S |
Stop |
A |
Angriff: Gegner unter dem Cursor wird echtes Angriffsziel, sonst Bewegung dorthin |
H |
Nächstes nicht erschöpftes Aetherium-Feld ernten |
R |
Ladung zur Raffinerie zurückbringen |
B / Shift+B |
Gebäude platzieren: Kraftwerk / Kaserne |
Q / Shift+Q |
Einheit in Auftrag geben: Harvester (HQ) / Infanterie (Kaserne) |
| Pfeiltasten, Bildschirmrand | Kamera schwenken |
| Mausrad | Zoom |
Z / X |
Kamera drehen |
Es gibt keine Pause-Taste, kein Speichern und kein Laden in dieser Bedienschicht.
Beide Player entstehen im Verzeichnis Builds/, das gitignoriert ist. Sie
liegen also nur auf der Maschine, die sie gebaut hat. Neu bauen im Batchmode:
/Applications/Unity/Hub/Editor/6000.5.4f1/Unity.app/Contents/MacOS/Unity \
-quit -batchmode -nographics -projectPath "$PWD" \
-executeMethod Nova.Editor.BuildScript.BuildMacOSArm64 # oder BuildWindows64macOS — Builds/MacOSArm64/ProjectNova.app ist ein unsigniertes, lokales
Artefakt ohne Notarisierung; Gatekeeper blockiert den ersten Start:
xattr -dr com.apple.quarantine "Builds/MacOSArm64/ProjectNova.app"
open "Builds/MacOSArm64/ProjectNova.app"Windows — Builds/Windows64/ProjectNova.exe ist ein unsignierter
Mono-Player, von macOS aus gebaut. SmartScreen warnt beim ersten Start.
Ehrliche Einschränkung: Der Build ist abgeschlossen, wurde aber nie
ausgeführt — der erste Windows-Start ist gleichzeitig der erste echte Test.
Zu sehen und zu prüfen: Lockstep-Kern mit 10 Hz, Befehle ausschließlich durch den versiegelten Command-Pfad; Auswahl, Bewegung, Flow-Field-Pathfinding, Bau, Produktion; Fog of War; Ökonomie-Grundlagen im Debug-HUD; Form kodiert Rolle, Farbe kodiert Spieler.
Ausdrücklich nicht beurteilbar:
- Der Gegner spielt nicht. Slot 1 bekommt eine Startbasis und sonst nichts; es gibt noch keine KI.
- Der Harvester-Kreislauf schließt sich nicht von allein. Manuell (
H, dannR, dann fahren) funktioniert der Zyklus. - Das HUD ist eine Debug-Überlagerung, keine UI. Keine Pause, kein Save/Load, kein Rebinding.
- Look and Feel ist unverifiziert. Ob die Graybox lesbar ist und sich die Steuerung richtig anfühlt, konnte automatisiert niemand prüfen — das ist genau die Frage, die der erste menschliche Durchlauf beantwortet.
Die vollständige Liste der Verschiebungen steht im ScopeLedger, das Sitzungsprotokoll im GrayboxLog.
34 Entwürfe, 17 Rollen je Fraktion, alle im selben Format und derselben Lichtsetzung. Der Leuchtakzent trägt die Fraktionsidentität — Cyan gegen Orange — und entspricht der Teamfarben-Maske im späteren Spielasset.
- Bildstandard – Rahmung, Licht, Palette, Formensprache, Maßstabsanker, Abnahmekriterien
- Ordner und Herkunftsnachweis – Provenienz je Bild inklusive Modell, Prompt und SHA-256
Status: Entwürfe zur Formfindung, keine Produktionsassets. Es existiert kein 3D-Asset im Projekt.
Das Projekt ist offen und wird gerade von sehr wenigen Leuten getragen. Mithilfe ist willkommen — besonders in diesen Bereichen:
| Du kannst… | Dann schau hier |
|---|---|
| mitentscheiden, ob die Wirtschaft umgedreht wird | §2 und Konzept_Hashkrieg.md |
| die Graybox spielen und sagen, wie sie sich anfühlt | §4 — Look and Feel ist bisher von niemandem beurteilt |
| 3D-Assets bauen aus den Concept-Art-Vorlagen | Bildstandard und AssetBudget |
| an der Simulation arbeiten (C#, deterministisch, Unity-frei) | SimulationCore und CodingGuidelines |
| KI schreiben — Slot 1 spielt bisher gar nicht | SkirmishAi_Spec |
| Doku verbessern | DocumentationStandard |
Zwei Dinge, die den Einstieg leichter machen: Der Simulationskern ist
Unity-frei und läuft headless über tools/Nova.SimRunner — man braucht
Unity nur für die Darstellung. Und jede Entscheidung im Projekt steht mit
mindestens drei geprüften Alternativen im
DecisionLog; nichts wird still geändert.
Ablauf steht in CONTRIBUTING.md. Fragen gern als Issue.
D-056 begrenzt MS-1 auf:
- Allianz gegen Legion, Mensch gegen KI;
- Glutrinne, Wüste, S, 128×128, klares Wetter;
- je neun Gebäude- und acht Einheitenrollen;
- vollständiges Aetherium einschließlich endlicher Reserve, Nachwachsen, Ausbreitung, permanenter Überernte und KI-Feldmanagement;
- Pause, Save/Load/Recovery und das definierte Accessibility-Minimum.
Evolvierte, Luft, T3, Zusatzkarten, Multiplayer, Kampagne, Telemetrie, Steam/Cloud und finale Art/Audio sind Post-MVP.
- Engine: Unity
6000.5.4f1, Revisiond550df8bd089 - Rendering: URP
- Sprache: C#
- Simulation: Unity-freier, autoritativer
Nova.Simulation-Kern, Q16.16-Fixed-Point ab G1 - Host: Unity und
Nova.SimRunnerverwenden dieselben Core-/Sim-Quellen
Automatische Editor-Upgrades sind verboten. Eine Re-Evaluierung benötigt nach G5 oder bei einem belegten Engine-Blocker eine neue D-ID.
Project Nova/
├── Assets/ Unity-Projekt und Prototypcode
├── docs/ Living-Documents-Wiki
│ ├── vision/ Weltentwurf, Kernspielgefühl, Zielgruppe
│ ├── gamedesign/ Vollspiel-GDD mit MS-1-Overrides
│ ├── tech/ technische Verträge
│ ├── assets/ Art-Standard und Concept-Art
│ └── production/ Entscheidungen, Gates, Risiken, Planung
├── quality/
│ ├── content/ maschinenlesbares MVP-Manifest
│ ├── scenarios/ kanonische Abnahmeszenarien
│ ├── schemas/ Evidence-Schema; keine Platzhalter-Evidence
│ └── scripts/ Schema-, Semantik- und Integritätsprüfung
├── tools/ unter anderem Nova.SimRunner
├── AGENTS.md
├── CONTRIBUTING.md
└── CHANGELOG.md
main ist PR-only. Arbeit erfolgt auf kurzen
feat/, fix/, docs/, chore/, refactor/ oder codex/-Branches,
gefolgt von Squash-Merge und linearer Historie. Es gibt keinen dauerhaften
Integrationsbranch.
Pflichtchecks sind docs-check und für Quality-Verträge integrity. Dieser
Teil des quality-gate prüft nur Verträge und Negative Controls. Ein
Authorize-Job existiert bis G0-A2 bewusst nicht. Eine Änderung am Trust-Bundle
wird ohne Gate-Fortschritt gemergt und kann sich nicht selbst autorisieren.
© 2026 VibecodingGermany / Dennis Westermann. Alle Rechte vorbehalten.
Es liegt derzeit keine Open-Source-Lizenz vor. Ansehen, Ausprobieren und Mitwirken per Pull Request sind ausdrücklich erwünscht; eine Weiterverbreitung als eigenes Werk ist nicht freigegeben. Wer beitragen möchte, kann das tun — die Lizenzfrage wird vor einer Veröffentlichung geklärt und ist als offener Punkt geführt.
- Die Wirtschaftsfrage aus §2 ist die wichtigste offene Entscheidung.
- Eine formale Lizenz ist noch festzulegen. Sie entscheidet, unter welchen Bedingungen Beiträge Dritter angenommen werden können.
- Der Umbenennungsbeschluss auf Hashkrieg ist im Bestand dieses Repositories noch nicht vollzogen — Repo, Code und Wiki laufen weiter unter Project Nova.
- Q-018 (Preis) und Q-019 (Telemetrie) bleiben offen und blockieren MS-1 nicht.
- G0-A1 ohne Gate-Fortschritt geschützt mergen.
- G0-A2 als separaten zweiphasigen Receipt-Authorizer implementieren und adversarial prüfen.
- Am nachfolgenden sauberen Subject G0-B herstellen und dort mit der vollständigen Receipt-Kette und Umgebungsbindung G0 beweisen.
- G1 einschließlich V1–V5a erst nach bestandenem G0 beginnen.
| Version | Datum | Änderung | Autor |
|---|---|---|---|
| 0.7.1 | 2026-07-24 | Recovery-Baseline nach Implementierungs-Audit | Executive Producer / Lead Technical Director |
| 0.8.0 | 2026-07-24 | Closed-Core MS-1, exakten Engine-Pin, G0-offenen Status und Quality-Verträge D-056–D-061 aufgenommen | Executive Producer / Technical Writer |
| 0.8.1 | 2026-07-24 | Evidence-Semantikvalidator ergänzt und Dokumentstruktur korrigiert | Technical Writer / Lead QA Engineer |
| 0.8.2 | 2026-07-24 | Sprint-6-Endstatus und auf G0 begrenzten Start von Sprint 7 eindeutig formuliert | Executive Producer / Technical Writer |
| 0.9.0 | 2026-07-24 | D-062-Evidence-Kette sowie Victory-, MatchConfig- und Commander-MS-1-Overrides ergänzt | Executive Producer / Technical Writer / Lead QA Engineer |
| 0.10.0 | 2026-07-24 | D-063-Schema 1.2, kanonische Check-Artefakte, Drei-Lauf-Messung und Protected-CI-Trustpfad aufgenommen | Executive Producer / Technical Writer / Lead QA Engineer |
| 0.11.0 | 2026-07-24 | D-064: Schema 1.2 auf Integrität begrenzt, G0-A vor G0-B gestellt und subject-unabhängigen Schema-1.3-Bootstrap verankert | Executive Producer / Technical Writer / Lead QA Engineer |
| 0.12.0 | 2026-07-25 | D-066: G0-A1-Integritätsgrundlage vom zweiphasigen G0-A2-Receipt-Authorizer getrennt und zirkulären Pass-Pfad entfernt | Executive Producer / Technical Writer / Lead QA Engineer |
| 0.13.0 | 2026-07-26 | Abschnitt „Das Spiel ausprobieren" mit Editor-Start, Steuerungslegende, Player-Anleitung und ehrlicher Abgrenzung des Graybox-Stands ergänzt | Technical Writer |
| 0.14.0 | 2026-07-26 | Abschnitt zum neuen Arbeitstitel Hashkrieg ergänzt: Weltentwurf, Concept-Art-Satz und Style-Guide verlinkt | Technical Writer |
| 0.15.0 | 2026-07-26 | Neu gegliedert und bebildert: Hashkrieg-Richtung nach vorn gezogen, die offene Wirtschaftsentscheidung als eigener Abschnitt sichtbar gemacht, Mitmach-Abschnitt mit Einstiegspunkten ergänzt, Projektstatus um Graybox und Fraktionsidentität aktualisiert, Lizenzlage präzisiert | Technical Writer |




