# Explosion der Spiele – DESIGN (kanonische Wahrheit) > **Single source of truth.** Alle Implementierung, Quests, Kampf und UI folgen diesem Dokument. > Mündliches Diktat (User) + technische Entscheidungen. Bei Konflikt gewinnt dieses File > (nicht Chat-Zusammenfassungen, nicht alte Scaffold-Kommentare). **Repo:** https://forgejo.fsociety00.cc/copilot/Explosion_der_Spiele **Engine:** Godot 4.3+ GDScript, PC **Grafik:** 3D-Welt, Charaktere meist **Mario-Baum-Billboards** (+ GLB-Props). Referenzgröße **Spieler 1,74 m** (`SpriteFit.WORLD_PLAYER_HEIGHT`); Häuser/Tiere/Props realistisch relativ dazu. --- ## 1. Title Screen - Ganz verpixelt: **Mario + Sonic** sichtbar (verpixelt), **Burger-Regen** (verpixelt). Art: User-Fotos / echte Sprites — bis dahin Platzhalter. - Links unten: verstörter Mensch + Sprechblase: *„Oh mein Gott, es wird so verrückt. Hongkong ist ein weiser Mann.“* - Titel: **Explosion der Spiele** Untertitel: **Pay2Win (um reiche Leute anzulocken, hihihihi)** - **Extrem laute** gesungene Musik; der **Sänger** singt: *„Hey, das hier ist so eine laute Musik extra. Damit du direkt auf Starten drückst…“* — **nicht** als UI-Text auf dem Titel. Lautstärke **nicht** runterdrehbar. - Layout sonst so lassen, bis Grafik-Pack kommt. - **Burger-Cham** alle **2 Minuten** solange man auf dem Title ist: Bild (70-jähriger Mann beißt in Burger) + *„Burger! Beste Qualität von der Explosion der Spiele.“* - **First-Run Sprachwahl** DE / EN / BY (auch später in Optionen umstellbar): - BY → Stimme/Rülps + *„Schulz“* - EN → *„I drink my garden in the cinema“* - DE → *„Am deutschen Wesen soll die Welt genesen.“* - Optionsmenü: Sprache, SFX; Musik-Slider gesperrt laut. ## 1b. Charakterwahl (nur Optik) > **supersedes** frühere Idee „Mischung aus ganz vielen Spielecharakteren als Spieler“. Stattdessen **eine von vier** festen Figuren wählen. **Nur Look / Idle-Animation** — Stats, Kampf, Quests identisch. Auswahl nach Sprachwahl / vor oder mit Start (UI TBD). Speichern in Save. | ID | Name | Look | Idle / Gag | |----|------|------|------------| | `flintenbuerger` | **Flintenbürser** | Mensch, Bauer: Stroh im Mund, Kappe, Lederzeug | Klatscht dauernd mit der Hand gegen den eigenen Fuß (bayerisch; Referenz-Video vom User folgt) | | `stroh_dilos` | **Stroh-Dilos / Kanodilos** | Sehr muskulös | **Augenschappe** (Augenklappe) — Pflicht-Detail | | `gorilla_zunge` | **Gorilla mit der Zunge** | Gorilla | Zunge hängt **immer** raus | | `npc` | **NPC** | Ganz normaler Mensch | Absichtlich langweilig / „nur NPC“ | Billboards: `player_flintenbuerger.png`, `player_stroh_dilos.png`, `player_gorilla_zunge.png`, `player_npc.png` (Platzhalter später). Idle-Frames/Animation für Flintenbürser-Klatscher wenn Art da ist. ## 2. Intro - Tisch + Konsole. - Sprecher sanft/episch: *„Du sitzt an deinem Tisch und spielst dein Lieblingsspiel…“* - Konsole explodiert. - Sprecher: *„Du musst es schaffen. Du musst es schaffen – sonst kommt der Hongkong.“* ## 3. Village / Hauptwelt (Animal-Crossing-Dorf + Wiese) - **Eine contiguous Hauptwelt** (`scenes/village.tscn`, `current_scene_id = "village"`): Dorf und Wiese liegen **nebeneinander**, getrennt durch einen **Zaun mit Tor**. - Verpixelt, kaputt; **random 3D-Häuser** aus `assets/3DModelle/houses/*/` (jedes Laden neu gemischt; **nicht** `massour/`). - **Masseur-Haus** = Deko `houses/massour/massourhaus.glb`; **Masseur-Kuh** davor (`animals/cow/cow.glb`) — [E] Massage/Secret-Milch **im Dorf** (keine Extra-Szene). - **Random-Tiere** aus `animals/*/` außer **`cow/`**. - Tisch/Knopf: `props/table/table.glb`, `props/button/Button.glb` — Knopf klein/unauffällig, [E] → **Reif-Kampf vor Ort** (kein `goto_scene("shoe_boss")`). - **Zaun + Tor** Richtung Wiese: solange Reif lebt → Tor **zu** (Kollision). Sieg über Reif → Tor **öffnet** (Animation, Kollision aus) → Spieler **läuft** zur Wiese. - Legacy-IDs `shoe_boss` / `meadow` / `massage_studio` redirecten auf `village`. - Weiter-Haus im Dorf: [E] → Catscene **erst nach** Schlangen-Massage (sonst Hinweis Knopf/Tor/Wiese). ## 4. Shoe Boss – Schuhmacher Reif (lokal in der Hauptwelt) - Kampf startet **im Dorf** am Tisch (gleiche Szene), keine Teleport-Arena. - Normaler Mensch, Stock, Schuh am Schnürsenkel. - Schreit/ruft: *„Wenn du noch nicht reif bist, muss ich dir einen Schuh schenken!“* - **Kampf-KI:** verfolgt Spieler, Nahkampf, **wirft Schuhe** (Projectile, ausweichen / zerschlagen möglich). - Tod durch Schuh → `death_shoe`: *„Da hat dir wohl wer 'nen Schuh geschenkt.“* - Sieg → **Tonne Tiramisu**; Essen → **10 Minuten zu fett** + Shorts-Stimulation; Flag `reif_defeated` + **Tor zur Wiese öffnet**. ## 5. Meadow (Wiese) — Zone neben dem Dorf - Teil derselben Hauptwelt (östlich hinter dem Zaun), **kein** Scene-Wechsel und **kein** Exit-Teleport zurück. - Großteils gemäht; an einer Stelle nicht: **Eisbär** wird von **Schlangenmähdrescher** gewürgt. - Rettung: Schlangen ins **Inventar** → **zu Fuß zurück** zur Masseur-Kuh im Dorf → Schlange schläft ein. - Schlange jammert (*verspannt / tut weh*); Dorfbewohner erinnern an Massage. - Belohnung: Eisbär reißt sich einen **Zahn** aus → Inventar. Zahn = Glitzos schneller tot. - Lore: Hongkong (später Glitschkönig) verwandelte den Rasenmäher in Schlangen. - Tod durch Mäher: `death_mower`. ### Glitzos (nur auf der Wiese-Zone) - Verglitschte Pixelwesen; spawnen wiederholt aus dem Boden. - **4 Treffer** tot; **4 Treffer am Spieler** = Tod. - Nach **3 Treffern** am Spieler: verglitscht / langsam. - Mit **Eisbärzahn**: Spieler braucht nur **2 Stiche**. - **KI:** jagen den Spieler (nicht nur stehen). - Außerhalb der **Meadow-AABB/Zone** (nicht ganze Szene): können nicht bleiben → **Pixel-Sprühnebel** und weg. - Todestext: Quadrat-Emoji `⬜` (`death_glitzo`). ## 6. Masseur-Kuh (im Dorf) - Masseur = **Kuh** vor dem Masseur-Haus — 3D `animals/cow/cow.glb` (nicht im Random-Tier-Pool). - Keine separate Studio-Szene; Wiese und Dorf sind **dieselbe Map** — zurücklaufen genügt. - Option A: Schlange jetzt massieren → Quest. - **Secret:** erst viel trinken lassen → betrunken → melk sich selbst → **Milch**. Milch trinken = Skip zum **Endboss**. ## 7. Catscene (Katzin / Catscene-Wortwitz) - Sprecher: Dorf verlassen, Open World wäre zu viel Arbeit → **keine Open World**. Traurig? Egal. - **Skip versuchen** → Strafe: *„…überspringen, spinnst du?“* + **voller Reset** von vorne (Intro). ## 8. Farm Path (enger Weg, Anti-Open-World) - Gerade, eng; Weggabelung mit Pfeil nach **links** (Hof). - **Rechts:** dunkelgrauer Magier zieht zurück / wirft nach links. - Sofort links → Bauer: brav, gleich gekommen. - Erst rechts → Bauer holt Magier; Dialog *fast schwarzer / dunkelgrauer Magier* → Magier wütend → **Planet weg** → Spawn im **Weltall/Mond**. ## 9. Farm (Bauernhof) - Bauer spricht **immer Bayerisch** (unabhängig von Spielsprache). - Quests: (1) Schweine füttern (2) Kühe melken (3) Hühner sneaken ins Inventar. - **Urhahn:** mächtig, pickt tot; **10 s Schock** vorm Respawn; Spieler kann sich kaum wehren. - Hühner → **Lava-Chicken-Farm**. - Belohnung/Paywall-Satire: *1,99* / **Dresslerpunkte** im Shop (1 Punkt ≈ 1€ Mock). - Weiter spielen? „Zahl…“ → **Spaß, du darfst weiter** (Pay2Win nur um Reiche anzulocken). - **Schein der Uralten:** essen = Tod/Ausstieg (*zu verrückt*). ## 10. Dressler-Boss (nach Hof / Paywall) - Riesenapfel auf Feld; Augen öffnen: *„Dresslauf die Eins!“* - Mähdrescher von der Seite → **hineinspringen, Fahrer rauswerfen**, Apfel dreschen. - Drop: **zertresselter Apfel** – Aufschrift *ESSEN NICHT, außer du willst durchspielen* → Essen = Teleport Endboss. - Boss kommentiert unkreativen Weg. ## 11. Moon - Käseverkäufer stellen Tische → **Käsekatapulte** (verschimmelt) → Mund treffen = Tod. - **Käse erstechen** (nicht Verkäufer) → sterben vor Trauer. - **Mondschwert** im Stein → Käseverkäufer/Minis one-hit (viele). - Mondforscher: Sonnenbrille für Dresslerpunkt → **Spaß, gratis**. - **Fake Bowser** hält Huhn gefangen (Hochzeit mit Hof-Huhn → **Hochzeitsei**). - Kampf: rollt zur Kugel; **3 Hämmer** raten; falscher Hammer = frisst dich; richtige Kugeln einschlagen = Sieg. - Hochzeitsei werfen = **Whiff** (Fortnite-artig) → Flug zum Endboss. ## 12. Final Boss – Glitschkönig (ex „Hongkong“) - Epische Musik (TBD). - Vor Kampf: alle Charaktere: Hongkong war **Prank** → echt **Glitschkönig**; Belohnung **Banane** (heilen) + **Wartchen** (Kampfitem). - Riesiger Pixelhaufen; spawnt **Quirxels** (fliegende Vierecke, die schießen). - Schlagen → teilt sich wie Minecraft-Schleim; letzter Rest **flieht**; zerschlagen → fliegt weg: *„Ich werde wiederkommen!“* - Eisbär (ein Zahn weniger): Welt gerettet, aber wütend wegen Zahnarztkosten → **schlechtes Gewissen**. ## 13. End (Dorf) - Wieder AC-Dorf; Haus bauen möglich. - Dorfbewohner wütend (Zahnarzt) → **kein Happy End**. - Extra-Quest **Zahnionär**: Zahnarzt überfallen, Zähne klauen (Währung = Zähne) → Haus-Stuff kaufen. ## 14. Death Screen - Schwarz, wechselt jede Sekunde bunt (blinkt). - Alle **10 s** riesiger Totenkopf. - Todesursachen-Texte (Mäher, Schuh, Glitzo-⬜, Käse, Bowser, Schein, …). - Button **Wiederbeleben**; **Nein** = trotzdem revive; **Ja** = Spiel beenden → Title (Satire). ## 15. Pay-to-Win / Shop - Dresslerpunkt = Mock-Euro; Shop in Optionen. - Paywall-Texte immer mit Satire-Auflösung „Spaß, du darfst weiter“. ## 16. Kampf-System (technisch) - Spieler: Third-Person, Kamera-relativ, Angriff Nahkampf. - Gegner: **Chase + Melee-AI** (`HittableEntity` / AI-Exports), außer passive Props. - Waffen-Mods: Zahn (2 dmg), Mondschwert (one-hit Käse-Welt), Wartchen (stärker vs Final). - Status: Fett, Glitch-Slow, Urhahn-Schock. - Art-Skalierung: **`SpriteFit`** + **`data/model_scales.json`** (Editor: `scenes/dev/scale_lab.tscn`). ## 17. Szenen-Flow (Default) Title → Intro → **Village-Hauptwelt** (Dorf ↔ Reif lokal ↔ Tor ↔ Wiese zu Fuß ↔ Kuh) → Catscene → Farm Path → Farm **oder** Moon → Dressler → Moon → Final → End (+ Death jederzeit). *Kein* Scene-Teleport mehr für Village ↔ Shoe ↔ Meadow; Catscene und spätere Level bleiben eigene Szenen. --- *Zuletzt diktiert/aktualisiert: 2026-09-15 (contiguous overworld). Implementierung muss diese Spec nachziehen; Lücken = Bugs, nicht Feature.*