10 KiB
Traumwandler
Ein 3D-Spiel in Godot 4.7 (GDScript). Alle Objekte bestehen aus Godot-Primitiven (Box, Zylinder, Kugel, Kapsel) — kein externes Asset.
Du bist ein Wesen aus der Traumwelt. Menschen tragen Träume mit sich herum, die sie allein nicht bewegt bekommen. Du wirst zu ihnen geschickt.
Starten
godot --path .
Steuerung: WASD bewegen · Maus umsehen · E interagieren · F folgen · R notieren · J Journal · 1/2/3 Tempo · Esc Maus freigeben.
Der Tagesablauf steht im HUD: 24 Felder, eines je Stunde, die laufende hervorgehoben. Grau heißt unbekannt, gelb „hier stimmt etwas nicht, aber du hast es noch nicht benannt", rot ein benannter Blocker, grün ein gebautes System. Darunter steht, was gerade läuft. In der Traumwelt springt Leertaste; auf der Erde steigt sie und Umschalt lässt sinken.
Spielschleife
Journal (Taste J, in beiden Welten dabei)
Das Journal führt Buch — es lehrt und vergibt nichts.
- Techniken — was du gelernt hast, mit Stufe und Erfahrung. Besser werden sie nur draußen.
- Missionen — die Menschen, für die du dich entschieden hast, jeweils mit ihrem Tagesablauf: der Tag von 0 bis 23 Uhr, in Abschnitte geteilt. Es gibt keine Wochentage; jeder Tag ist derselbe. Zu Beginn steht in jedem Abschnitt nur ein Strich — der Tag ist leer, bis du dabei warst.
Diagnose und Systeme — der Kern des Spiels
Ein Traum scheitert an Ursachen: kein Anfang, keine Zeit, keine Kraft, kein Halt, kein Grund. Jeder Mensch hat zwei bis drei davon, nie alle. Die stehen nirgends — du findest sie nur, indem du dabeistehst.
Dabeisein füllt den Abschnitt im Ablauf: du siehst, dass sie um zehn aufräumt. Ob das ihren Traum aufhält, entscheidest du — mit R. Bis dahin steht dort ein Fragezeichen.
Sichtbar wird eine Ursache an den Tätigkeiten, die sie hervorbringt. Wer nie in Gang kommt, räumt auf statt anzufangen, recherchiert oder schreibt Später-Listen. Wer keine Kraft hat, schaut abends eine Serie und bleibt danach wach. Jede dieser Tätigkeiten hat einen Auslöser und eine Belohnung.
Gegen eine erkannte Ursache baust du ein System in den Tag:
Einführen Ein System, das fehlt — in einen freien Slot.
Ändern Eine Tätigkeit, die schadet — mit gleicher Belohnung ersetzt.
Liefert die Ersatzhandlung dieselbe Belohnung, hält sie besser. Das ist Duhiggs goldene Regel: Auslöser und Belohnung bleiben, nur die Handlung dazwischen wird getauscht. Manche Techniken ersetzen nichts, sie nehmen dem Verhalten den Auslöser.
Der Fortschritt ist keine Kette von Einzeltreffern, sondern ein Tempo:
Tempo je Tag = Grundrate × Faktor je Ursache
nichts gelöst 4 % je Tag → der Traum steht praktisch still
eine gelöst 18 % je Tag → er kommt voran
alle gelöst 61 % je Tag → in gut zwei Tagen erfüllt
Ungelöste Ursachen bremsen multiplikativ. Zwei Bremsen sind viel schlimmer als eine — deshalb lohnt es, alle zu finden.
So laufen die zwei Schleifen:
Techniken lernen → Systeme bauen → Traum läuft schneller
Träume erfüllen → Dorf wächst → neue Wege entdecken
Ein erfüllter Traum bringt ein Wesen mit seinem Haus ins Dorf, und in diesem Haus wird ein neuer Weg gelehrt. Zu Beginn kennt das Dorf nur einen.
Nach jedem Einsatz braucht eine Technik 30 Sekunden Ruhe. Ein Einbau gelingt nicht immer — Übung entscheidet.
Traumwelt — eine schwebende Insel mit einem Dorf, das wächst
- Fest sind nur drei Dinge: der Hörsaal der Wege, der Dorfplatz und das Tor zur Erde. Alles andere entsteht beim Wachsen.
- Die Insel beginnt kahl. Ein Gebäude, kein Bewohner, ein einziger gelehrter Weg — und den bringt dein Wesen schon mit. Am Brett hängt also vom ersten Moment an eine Mission.
- Jeder erfüllte Traum bringt einen Bewohner mit seinem Haus. In jedem Haus wird ein Weg gelehrt, den es vorher nirgends gab.
- Das Haus setzt sich nicht auf einen Ring, sondern sucht sich seinen Platz: gewertet werden Nachbarschaft, Nähe zu einem Weg, Nähe zum Dorfplatz und wie leer die Himmelsrichtung noch ist. Der beste von 64 Probepunkten gewinnt.
- Der Weg dorthin dockt an der nächsten Stelle des bestehenden Netzes an — nicht an der Dorfmitte. Kreuzt die Gerade ein Haus, sucht ein Raster einen Weg darum herum. Liegt ein Knoten nah, ist aber im Netz weit weg, kommt eine Abkürzung dazu. Daraus entstehen Gabeln, Schleifen und krumme Gassen.
- Die Insel dehnt sich mit, Bäume füllen nach Poisson-Regel die freie Fläche. Vorbild: Emilien et al., Procedural Generation of Villages (2012).
- Schwarzes Brett am Dorfplatz — hier hängen die Menschen aus, die nicht weiterkommen. Ausgehängt wird nur, wem du mit dem, was du kannst, auch helfen kannst: mindestens eine gelernte Technik muss ihr Thema treffen und in ihrem Tag einen Moment dafür finden. Die anderen bleiben verdeckt, bis du den passenden Weg gelernt hast.
Tempo — 1, 2, 3
Drei Stufen wie in Die Sims. Die Stufe ist nicht der Faktor:
Stufe 1 1× ein Tag in 6:00 Minuten
Stufe 2 3× ein Tag in 2:00 Minuten
Stufe 3 7× ein Tag in 0:51 Minuten
Über der Nacht des Menschen, dem du gerade hilfst, springt das Spiel von allein auf Stufe 3 und fällt beim Aufwachen auf deine zurück — Schlafende erreicht ohnehin keine Technik. Beschleunigt wird die ganze Simulation samt Cooldown und Abwehr. Am Ausgang ändert sich dadurch nichts, nur an der Wartezeit.
Erde — ein Stadtbezirk nach japanischem Vorbild
- Arterien in einem groben, leicht versetzten Raster spannen Blöcke auf. Am Blockrand stehen die Häuser direkt an der Straße, ohne Vorgarten. Ins Blockinnere führt eine schmale Sackgasse — roji —, an der die hinteren Parzellen hängen. Der mittlere Block bleibt Park.
- Hier wächst nichts. Alle 16 Menschen sind von Anfang an da und leben ihren Tag: schlafen, arbeiten, grübeln, essen, spazieren. Wer wo wohnt, arbeitet in der Nähe; das Café liegt in der Mitte.
- Du bist ein unsichtbarer Geist, schwebst und gehst durch Wände.
- F hängt dich an einen Menschen: du treibst hinter ihm her, durch Türen und über den ganzen Tag, ohne ihm nachlaufen zu müssen. F noch einmal — oder ein Schritt mit WASD — lässt ihn wieder los.
- R notieren. Was den Traum aufhält, steht nirgends geschrieben. Du siehst nur, was der Mensch tut, und musst selbst entscheiden: läuft hier etwas schief? Triffst du den Moment, steht die Ursache im Journal und der Slot wird bebaubar. Greifst du daneben, schaust du sechs Sekunden umsonst hin. Zusehen allein deckt nichts auf — das Bemerken ist der Zug.
- Nah herangehen, E drücken, Technik wählen. Das Panel nennt für jede Technik nur, ob Thema und Moment passen — keine Zahl.
- Die Säule im Park bringt dich zurück in die Traumwelt.
Erfolgschance
5 % + 9 % je Fertigkeitsstufe
+ 20 % wenn die Technik das Thema des Menschen trifft
+ 35 % wenn der Moment passt (z. B. Box-Atmung, während jemand angespannt ist)
− 30 % wenn der Mensch gerade abblockt
begrenzt auf 5 … 95 %
Schlafende sind nicht erreichbar. Erfolg bringt Fortschritt und 2 EP, ein Fehlversuch 1 EP, −14 % Fortschritt und 18 Sekunden Abwehr. Jeder Einsatz sperrt die Technik für 30 Sekunden. Dieselbe Technik wirkt bei Wiederholung schwächer — es lohnt sich, mehrere zu lernen. 100 % erfüllen den Traum.
Eine Technik wird nur besser, indem du sie anwendest. Der Lehrort gibt sie dir, mehr nicht: kein Üben, kein Trainieren, keine Währung, die man dagegen eintauschen könnte. Wer eine Technik auf Stufe 5 will, muss sie draußen bei Menschen einsetzen — auch Fehlversuche zählen.
Aufbau
project.godot Projekt, Autoload `Game`
scenes/main.tscn Einstieg
scripts/game.gd Zustand, Diagnose, Systeme, Tempo, Uhr (Autoload)
scripts/technique_db.gd die zwölf Techniken mit ihren Hinweisen
scripts/human_db.gd Bezirk: Arterien, Blöcke, roji, Parzellen, Menschen
scripts/dream_db.gd Traumdorf: wachsende Häuser, Wege, Bewohner, Lehrorte
scripts/netz.gd Wegenetz: Knoten, Kanten, Andocken, kürzester Weg
scripts/orte.gd Orte, Türen, Wege, Tätigkeiten (beide Welten)
scripts/bewohner.gd Bewohner mit Tagesablauf und Slots
scripts/main.gd Weltenwechsel, Fokus, Interaktion
scripts/player.gd Läufer in der Traumwelt, Geist auf der Erde
scripts/dream_world.gd Insel mit Dorf
scripts/earth_world.gd Stadt mit Tag-Nacht-Wechsel
scripts/ursachen.gd Ursachen, blockierende Tätigkeiten, Belohnungen
scripts/ui.gd HUD, Journal, Tagesablauf, Hörsaal, Brett, Panels
scripts/prims.gd Bausteine aus Primitiven
Prüfen
godot --headless --path . tests/verify.tscn # Prüfungen der Spiellogik
godot --path . tests/shots.tscn # 28 Screenshots nach user://shots/
verify fährt das echte Spiel: leeres Traumdorf, einziehende Wesen mit ihren
Tagesabläufen, gewachsenes Dorf und erzeugter Bezirk,
Häuser betreten, Journal in beiden Welten, im Hörsaal lernen,
Verbessern allein durchs Anwenden, Mission am Schwarzen Brett annehmen,
Ursachen aufdecken, Systeme bauen, Tempo messen, zur Erde reisen,
Tagesabläufe über einen ganzen Tag, Wirkung der Technikwahl, Cooldown,
verdeckte Erfolgschance, keine Passungshinweise,
Tempo und Nachtsprung,
nur lösbare Aushänge, Mission abschließen,
Insel wachsen lassen, Tastensteuerung. Beendet sich mit Code 1, wenn etwas
fehlt.
Mehrere Prüfungen messen statt zu behaupten. Über 24 Ausbaustufen darf sich kein erzeugtes Gebäude mit einem anderen berühren und keines über den Inselrand ragen; jeder Weg eines Bewohners muss in sein Zeitfenster passen — auch in einem Dorf mit 24 Häusern und einer Stadt mit 27 Menschen. Und der erste Traum muss mit dem einen Startweg allein zu schaffen sein: über fünf Zufallsläufe vier bis acht Tage, ohne dass der Spieler eingreift. Ohne das hinge Loop 2 fest, denn ohne ersten Traum gibt es keine zweite Technik.