Skip to content
HOAI-droidPublic

About

Arena-Chaos mit Waffen-Fusion – 1–4 Spieler, für Browser, PC, Mac, Linux, Android, iOS und Xbox

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

Deutsch · English

OVERBOOM – das Große Kawumm, die Inselbarone und dein Held auf einer schwebenden Insel

Arena-Chaos mit Waffen-Fusion – allein oder mit bis zu vier Leuten.

Jetzt im Browser spielen Apps herunterladen

Sterne auf GitHub Neueste Version

Gefällt dir OVERBOOM? Gib dem Projekt oben rechts einen ⭐ – so finden es mehr Leute, und es motiviert enorm!


OVERBOOM ist ein actiongeladenes Arena-Roguelite in knalliger 3D-Voxel-Pixel-Optik. Du läufst über schwebende Inseln, deine Waffen feuern von selbst, und nach jeder Welle rüstest du im Shop auf. Aus zwei oder drei Waffen schmiedest du am Fusions-Amboss neue: Geschoss, Antrieb und Ladung lassen sich frei kombinieren – über 16.000 Möglichkeiten, von der Gackernden Blitzrakete bis zum Rollenden Kükenbumerang. Gegner sind grimmig, aber knuffig, Explosionen lösen Kettenreaktionen aus, und wenn die Overkill-Leiste voll ist, heißt es: OVERBOOM!

  • 🏝️ 7 schwebende Inseln, Inselbosse, 4 Baroninnen, 3 Barone – und am Ende das Große Kawumm
  • 🔨 Waffen-Fusion mit über 16.000 Kombinationen und 40 geheimen Rezepten
  • 💥 Kettenexplosionen aus glühenden Voxeln, fein aufgelöste Figuren
  • 👥 Koop für 1–4 Spieler, jeder am eigenen Gerät
  • 📱 Läuft im Browser, auf PC, Mac, Linux, Android, iPhone und Xbox
  • 🎮 Touch, Tastatur und Controller · 🌍 Deutsch, English, Español, Français

OVERBOOM im Hochformat

Downloads

Aktuelle Version: 0.14.0

Sofort im Browser spielen: https://hoai-droid.github.io/overBOOM/ – am Handy über Teilen → Zum Home-Bildschirm (iPhone) bzw. App installieren (Android) wie eine App im Vollbild, solo auch offline.

Oder als App – immer die neueste Version, einfach anklicken:

Plattform Download Hinweis
Windows Installer (.exe) · MSI Unsigniert: bei der SmartScreen-Warnung „Weitere Informationen“ → „Trotzdem ausführen“
Mac App (.dmg) Apple Silicon und Intel. Startet nicht? Siehe Mac: App öffnen
Linux AppImage · .deb · .rpm AppImage: ausführbar machen und starten
Steam Deck AppImage Siehe Steam Deck
Android App (.apk) Am Handy öffnen und „Installation aus unbekannten Quellen“ erlauben
iOS App (.ipa, unsigniert) Muss mit eigenem Apple-Konto signiert werden (z. B. Xcode, AltStore, Sideloadly)
Xbox Series X|S Paket (.zip) Nur im Developer Mode – Anleitung: docs/xbox.md
Browser Spiel als eine HTML-Datei Herunterladen und im Browser öffnen, läuft offline

Alle Versionen und Änderungen: Releases

Mac: App öffnen

Die App ist nicht von Apple signiert. Meldet macOS „kann nicht geöffnet werden“ oder „ist beschädigt“:

  1. App in den Ordner Programme ziehen und einmal starten.
  2. Systemeinstellungen → Datenschutz & Sicherheit öffnen, ganz nach unten scrollen und bei OVERBOOM auf „Dennoch öffnen“ klicken.
  3. Hilft das nicht, im Terminal einmal eingeben: xattr -cr /Applications/OVERBOOM.app

Steam Deck

  1. In den Desktop-Modus wechseln (Steam-Taste → Ein/Aus → Zum Desktop wechseln).
  2. Die Steam-Deck-Datei herunterladen.
  3. Rechtsklick auf die Datei → Eigenschaften → Berechtigungen → „Ist ausführbar“ anhaken.
  4. Steam öffnen → Spiele → Ein Nicht-Steam-Spiel zu meiner Bibliothek hinzufügen → Datei auswählen.
  5. Zurück in den Spielmodus: OVERBOOM steht in der Bibliothek und läuft mit dem Controller.

Spielstand mitnehmen

In den Einstellungen unter Spielstand speicherst du alles (Profil und die drei Speicherplätze) als Datei, z. B. 261021-2341.boom, und lädst sie auf einem anderen Gerät wieder. Im Album (Erfolge) gibt es denselben Stand auch als Code zum Kopieren.

Rechtliches: Datenschutz · Lizenz – alle Rechte vorbehalten · Drittanbieter-Software

Die Downloads werden kostenlos und ohne Gewähr bereitgestellt. Solo werden keine Daten übertragen; für Koop gehen IP-Adresse und Spielername an Verbindungsserver und Mitspieler (Details im Datenschutzhinweis).

Was dich erwartet

  • Eine Reise über 7 Inseln der Welt Krawummia – jede mit eigener Gegner-Fraktion, Bodengefahr, Inselboss und einer Inselbaronin bzw. einem Inselbaron. Solo 15 Wellen pro Insel, im Koop 8. Solo gibt es drei Speicherplätze, 3 Versuche pro Welle und danach einen Neustart der Insel mit der Ausrüstung, mit der du sie betreten hast. Ganz am Ende: das Große Kawumm in drei Phasen.
  • Jede Arena ist anders: Säulen, Kisten, Lava, Gift und Eis werden für jeden Run neu verteilt.
  • 13 Helden mit eigener Startwaffe und Macke, über Erfolge freischaltbar.
  • 60 Waffen, Stufen I–V, Sterne, Evolutionen und 12 Mods – plus Waffen-Fusion (rund 16.000 Kombinationen) und 40 geheime Rezepte. Ab Insel 3 gibt es fertige Fusionswaffen im Shop.
  • 159 Items und Ausrüstung mit 8 Plätzen und 4 Sets.
  • 9 Elemente mit Synergien und 15 Elementar-Reaktionen (Dampfexplosion, Schockfrost, Plasmabrand …).
  • Koop für 1–4 Spieler, jeder am eigenen Gerät: Raum erstellen, Code oder QR-Code teilen, losspielen. Gefallene Mitspieler werden wiederbelebt.
  • Sammelkartenalbum mit 292 Karten, Glanzkarten und Erfolgen – jede Karte auch als Bild speicherbar.
  • Gefahrenstufen 0–10 für alle, denen es zu leicht wird.
  • Musik, die mitspielt: bewusst schlicht, wird live erzeugt, wählbar als Rock, Pop, Retro (8/16 Bit) oder Chiptune, und passt sich dem Kampfgeschehen an.
  • Vier Sprachen: Englisch, Deutsch, Spanisch, Französisch – Abfrage beim ersten Start, umstellbar in den Einstellungen.
  • Grafik von „Niedrig“ bis „Max“ (doppelte Auflösung); ab „Ultra“ fein aufgelöste Figuren. Einstellungen für Barrierefreiheit (Wackeln, Lichtblitze, Farbenblind-Modus).

Steuerung

Tastatur Controller Touch
Laufen WASD / Pfeile linker Stick linker Daumen
Dash Leertaste / Shift A / RB Dash-Knopf
OVERBOOM E / Q Y / X OVERBOOM-Knopf
Pause Esc / P Menü-Taste (☰) ❚❚

Gezielt und geschossen wird automatisch. Menüs gehen komplett mit Maus, Touch, Tastatur oder Controller.

Für Entwickler

Monorepo mit TypeScript, Three.js und Vite. Die Simulation (packages/core) ist deterministisch und läuft auch in Node; Rendering, UI, Netz (Host-autoritativer Koop über WebRTC), Audio und Plattform-Zugriffe sind eigene Pakete. Details: CLAUDE.md, Spezifikation: docs/OVERBOOM_Prompt.md, Waffen: docs/Waffenkatalog.md.

Browser-Version: Jeder Push auf main veröffentlicht den Web-Build auf GitHub Pages (pages.yml).

Releases: Jeder Push auf main baut per GitHub Actions (release.yml) alle Apps und legt sie als Release v<Version aus package.json> mit festen Dateinamen ab – die Download-Links oben zeigen immer auf den neuesten Stand. Für eine neue Version die Versionsnummer in package.json erhöhen.

Befehle

npm install
npm run dev            # Entwicklungsserver (auch im WLAN erreichbar → Handy testen)
npm test               # Simulations-, Netz- und Audio-Tests (Node 22+)
npm run balance        # Balancing-Bot spielt komplette Runs
npm run typecheck
npm run build:web      # statischer Build in dist/
npm run build:single   # alles in einer HTML-Datei
npm run dev:desktop    # Desktop-App (Tauri) im Entwicklungsmodus
npm run build:desktop  # Desktop-App bauen
npm run build:mobile   # Web-Build + Capacitor-Sync (dann npm run android / npm run ios)
npm run build:xbox     # Web-Build in die Xbox-App kopieren

URL-Parameter: ?res=360 (Auflösung), ?seed=42 (Arena), ?shadows=0 (Schatten aus), ?shake=0 (Screen-Shake aus, 0–2), ?zahlen=0 (Schadenszahlen aus), ?raum=CODE (Koop-Raum beitreten), ?netz=lokal (Koop zwischen Browser-Tabs statt WebRTC). Debug: ?wave=10 (Startwelle, 10 = Boss), ?god=1 (unverwundbar), ?gems=500 (Startkristalle), ?waffen=huehnerkanone,huehnerkanone,huehnerkanone (Startwaffen, überspringt die Wahl), ?held=pyromane&insel=lavakessel (Schnellstart), ?galerie=1 (alle Gegner zum Anschauen), ?beute=6 (Ausrüstung in den Beutel), ?alles=1 (alle Karten, Inseln und Gefahrenstufen freischalten), ?test=1 (Zustand für automatische Browser-Tests lesbar).

Bekannte Probleme

  • Koop läuft im selben WLAN und übers Internet (getestet, lief sehr gut). Ohne TURN-Relay klappt Koop nicht in jedem Netz.
  • Keine Host-Migration: Verlässt der Host das Spiel, endet es für alle (mit Hinweis).
  • Ein Host-Tab im Hintergrund läuft über den Worker-Takt weiter, Browser können ihn aber nach einer Weile drosseln. Am besten bleibt der Host im Vordergrund.
  • Snapshots haben noch keine Delta-Kompression; bei sehr vielen Geschossen werden sie größer (gemessen ~1,5 KB, im Extremfall bis ~20 KB).
  • Balancing mit dem Bot justiert (8 Reisen: Tode verteilt über alle Inseln, starke Builds erreichen das Finale). Der Bot nutzt weder Mods, Evolutionen noch den OVERBOOM-Modus; ein guter Spieler ist stärker. Koop- und Gefahren-Werte (KOOP, data/src/danger.ts) sind Schätzungen.
  • Inselbosse wiederholen sich auf der Reise (4 Bossmodelle für 7 Inseln); jede Insel hat aber eine eigene Baronin bzw. einen eigenen Baron.
  • Fusions-Vorschau am Trainings-Dummy (10 s testen) fehlt noch; Fusionen aus Fusionen sind bewusst nicht möglich.
  • Apps sind unsigniert (Windows SmartScreen, Mac Gatekeeper, iOS muss selbst signiert werden).

Nächster Schritt

Feedback von echten Geräten; später Phase 10 (Signaturen und Store-Einträge).

Getestet auf echten Geräten: Android-Handys, iPhone (Simulator), Xbox Series X|S, PC/Mac im Browser; Koop zwischen Geräten im selben WLAN und übers Internet.

Versionsgeschichte

Version 0.14.0 – klüger statt mehr

  • Fusion: Gleicher Name = gleiche Waffe. Werte, Name und Modell hängen nur von den drei Bauteilen ab (fz:geschoss+antrieb+ladung, alte IDs werden umgerechnet), dadurch lassen sich Fusionen nachbauen und zusammenführen. Waffenkarten zeigen, in welchen Grundwaffen jedes Bauteil steckt; der Amboss meldet „zusammenführbar mit Platz X“.
  • Fusionswaffen im Shop ab Insel 3, zum 5- bis 8-fachen Preis, oft passend zu einer eigenen Fusion (SHOP.fusion*), keine geheimen Rezepte.
  • Weniger, aber härtere Gegner: höchstens 60 gleichzeitig (vorher 140); ab Welle 7 sinkt die Anzahl (WELLEN.masse), Leben und Kristalle steigen im gleichen Maß, Schaden etwas; mehr Elite-Gegner. Der Balancing-Bot kommt etwa gleich weit.
  • Flow-Field (core/src/flow.ts): Gegner laufen um Säulen und Mauern herum zum nächsten Spieler. Neue Taktiken: Grummelbolde schneiden den Weg ab, Schleimis lauern in Deckung und stürmen los, Fernkämpfer suchen freie Schusslinie.
  • Seltenheit nach Insel: Inseln 1–2 nur die ersten zwei Klassen, 3–4 bis zur dritten, ab Insel 5 alles (seltenheitsDeckel).
  • Wiederversuche und Speicherplätze: 3 Versuche pro Welle, danach beginnt die Insel von vorne; drei Speicherplätze mit dem Stand am Inselbeginn; Spielstand als .boom-Datei oder Code (core/src/speicherdatei.ts, Prüfsumme).
  • Steam-Deck-Download, Mac-Anleitung, Koop übers Internet getestet.

Version 0.13.1 – ruhiger und flüssiger

  • Wackeln dosiert: Stärke hängt von der Explosionsgröße ab, Gewöhnung bei vielen Explosionen hintereinander (unruhe in renderer.ts), Stöße addieren sich kaum noch.
  • Hit-Stop nur bei großen Momenten (Kette ab 3, Riesen-Explosion, Treffer am Helden mit 0,6 s Pause, Tod, Nuke, Bossphase). Vorher bremste fast jede Explosion das Spiel um ca. 14 % und ließ es ruckeln.
  • Regler 0–200 % für Wackeln, Lichtblitze und Partikel; 100 % = halbe Stärke von früher. Alte gespeicherte Werte werden umgerechnet (skala in den Einstellungen).
  • Greedy-Meshing (greedy in buildVoxels) für feine Modelle und einfarbige Kleinteile, ohne Helligkeitsrauschen; Schatten der feinen Gegner kommen von den kleinen Modellen (unsichtbar auf Ebene 1). Bei 140 Gegnern auf „Ultra“ ca. 0,5 statt 1,9 Mio. Dreiecke pro Bild.

Version 0.13.0 – feiner und lauter

  • Feine Modelle für alle Helden, Gegner und Bosse (render/src/hd/, halbe Voxelgröße). Sie werden ab Grafikstufe „Ultra“ verwendet (renderer.setDetail(), Vergleich mit ?modelle=klein|fein). „Automatisch“ startet auf PC/Xbox mit „Ultra“.
  • Voxel-Explosionen (render/src/voxelExplosion.ts): glühender Ball mit Hitze-Farbverlauf, zerfällt von außen nach innen, Glutstücke, Brocken und Rauch. Drei Größen aus dem Wirkungsradius; Ketten und viele gleichzeitige Explosionen werden kleiner bzw. sparsamer, mit Obergrenze an Voxeln.
  • Fülllicht aus Kamerarichtung, Held-Silhouette hinter Mauern per Stencil.
  • Weltkarte nennt den Baron bzw. die Baronin statt einer Wellennummer.

Version 0.12.1 – Controller-Fokus

  • Menüs zeigen die Auswahl mit Controller/Pfeiltasten jetzt immer deutlich (eigene Markierung .ob-fokus statt :focus – in der Xbox-Hülle griff :focus nicht, weil die WebView keinen Fensterfokus hatte). Die Xbox-Hülle holt den Fokus bei Aktivierung zurück.

Version 0.12.0 – die große Reise

  • Inselreise: Ein Run führt von der Startinsel bis Bummburg (REISE in balance.ts, World.reise/reisePos). Solo 15 Wellen pro Insel (Inselboss in Welle 10, Baron/Baronin in 15), Koop 8 (5/8). Danach das Finale gegen Das Große Kawumm (3 Phasen, die Arena zerbricht zu Lava).
  • 7 Inselbarone und -baroninnen mit neuen Angriffen: Kugelspiralen, Fächer, Kreuzfeuer, Sprung mit Druckwelle, Minen und angekündigte Bodenflächen (Explosion, Lava, Gift, Blitz, Eis).
  • Fortsetzen (solo): Spielstand nach jeder Welle (core/src/spielstand.ts, gespeichert als 'lauf').
  • Zufallsarenen: createArena baut jede Arena aus dem Seed im Stil der Insel, mit Erreichbarkeitsprüfung.
  • Schwieriger ab Welle 7: mehr Fernkämpfer und Stürmer, Elite-Gegner mit Kugelring, gepanzerte Gegner ab Welle 12 (halber Explosionsschaden), Bosse mit mitwachsendem Leben. Gegnerkurven ab Welle 15 nach Messung der Spielerstärke über die Reise.
  • Explosionen: Radius wächst nur noch begrenzt (höchstens ×2,2), der Rest wird zu Überdruck-Schaden; am Rand weniger Schaden.
  • Beute: Legendäres seltener, weniger Bonus pro Welle, Elite-Gegner lassen seltener etwas fallen.
  • Oberfläche: feste Kartengrößen, Waffenrahmen in Gruppenfarbe mit Stufen-Plakette, Kartenalbum als Shop-Reiter, unterer Bereich passend zum Reiter, „Überspringen“ im Level-Up, Insel und Inselwelle im HUD.
  • Koop beitreten: Fehler im Codefeld werden direkt angezeigt; eingefügte Einladungslinks funktionieren.
  • Xbox: WebView2-SDK wird mitgeliefert; Fehler werden angezeigt statt abzustürzen.

Version 0.11.0 – vier Sprachen

  • Mehrsprachigkeit (Englisch, Deutsch, Spanisch, Französisch):
    • Deutsch ist die Ausgangssprache und zugleich der Schlüssel (t('Solo spielen'), Platzhalter {n}).
    • Spieldaten übersetzt lokalisiereDaten() beim Start; die Logik arbeitet nur mit IDs.
    • Fusionsnamen bekommen je Sprache eine eigene Grammatik (Wortstellung, Geschlecht).
    • Texte, die vom Host kommen (z. B. Ablehnungsgründe), reisen als deutscher Schlüssel und werden beim Empfänger übersetzt.
  • Werkzeug: npm run i18n katalog | pruefen | bauen. Der Sprachtest in npm test prüft Vollständigkeit, Platzhalter und alle 16.720 Fusionsnamen je Sprache.
  • Sprachwahl: beim ersten Start mit Vorschlag nach Systemsprache; Wechsel in den Einstellungen lädt die App neu.

Version 0.10.1 – Koop repariert

  • Koop-Synchronisierung: Trystero liefert Binärdaten als Uint8Array-Ausschnitt; der Snapshot-Decoder erwartete einen ArrayBuffer und brach ab. Reader nimmt jetzt beides, der Test-Transport bildet das Trystero-Verhalten nach. Snapshots bleiben unter 16 KB (SNAPSHOT_MAX, gestufte Kürzung unwichtiger Teile).
  • „Beenden“ / „Raum verlassen“ in Shop, Level-Up und Pause (mit Rückfrage).
  • Kristalle: Tempo begrenzt und im Spielfeld gehalten (Test).
  • Klippen am Rand stechen nicht mehr durch den Boden (kein Flackern).
  • Balancing-Mittelweg: frühe Wellen wie 0.9, späte etwas milder als 0.10.0, Waffen-Grundschaden wieder 100 %.

Version 0.10.0 – Musik, schärfere Grafik und mehr Herausforderung

  • Prozedurale Musik (packages/audio):
    • komponist.ts erzeugt endlose Musik aus Bausteinen (Abschnitte, Akkordfolgen, Grooves, Riffs, Motive) mit drei Intensitätsstufen.
    • band.ts spielt sie mit WebAudio-Instrumenten (verzerrte Gitarre, Synth, Pulswellen, Rauschen) – ohne eine einzige Audiodatei (~25 KB Code).
    • Stile: Rock, Pop, Retro, Chiptune oder aus.
    • Die Intensität folgt Gegnerzahl, Explosionen und OVERBOOM-Modus; bei großen Explosionen duckt sich die Musik kurz.
  • Grafik: neue Stufen „Ultra“ (405 px) und „Max“ (540 px kurze Seite). „Automatisch“ steigt bei flüssigen 60 fps bis „Ultra“.
  • Balancing:
    • Ab Welle 9 steigen Gegnerleben und -schaden stärker, ab Welle 11 kommen mehr Gegner, mehr Elite-Gegner.
    • Waffen −5 %, flachere Stufen, Lebensraub max. 3/s.
    • Der Balancing-Bot (npm run balance) misst jetzt das tiefste Leben ab Welle 11: vorher immer über 75 %, jetzt typischerweise um 50 %, und rund 30 % der starken Runs scheitern zwischen Welle 12 und 19.
  • Explosionsgrafik 20 % kleiner (Wirkung unverändert).
  • Datenschutz & Lizenzen im Spiel (Einstellungen) und einmaliger Hinweis vor dem ersten Koop-Raum.

Phase 9 – Apps für alle Plattformen (v0.9.0)

Alle Apps bauen sich per GitHub Actions. Jeder Stand auf main landet automatisch als Release mit festen Dateinamen (siehe Downloads oben); Zwischenstände der Entwicklungszweige liegen als Artefakt am jeweiligen Lauf.

Plattform Technik Workflow Ergebnis
Windows Tauri 2 (apps/desktop) desktop.yml Installer .exe (NSIS) + .msi
Mac Tauri 2 desktop.yml Universal-.dmg (Apple Silicon + Intel), ad-hoc signiert
Linux Tauri 2 desktop.yml .AppImage, .deb, .rpm
Android Capacitor 8 (apps/mobile) mobile.yml Debug-.apk zum direkten Installieren, .aab für Google Play
iOS Capacitor 8 mobile.yml Simulator-App + unsignierte .ipa (signieren mit eigenem Apple-Konto)
Xbox Series X|S UWP + WebView2 (apps/xbox) xbox.yml .msix + Dependencies + Testzertifikat (Dev Mode) – Anleitung: docs/xbox.md
  • Plattform-Schicht (packages/platform): createPlatform() wählt Xbox → Capacitor → Tauri → Web. Speichern, Vibration, Teilen und Bild-Export laufen je Plattform nativ (Tauri: Downloads\OVERBOOM, Handy: Teilen-Menü, Xbox: Bilder\OVERBOOM).
  • Handy: nur Querformat, echtes Vollbild, Bildschirm bleibt an, Pixel-Bombe als Icon und Splash. Schrift liegt lokal (offline).
  • Xbox: komplette Menüsteuerung per Controller (Steuerkreuz/Stick + A/B, sichtbarer Fokus, Regler mit ◀ ▶, Textfelder mit A), Controller-Symbole statt Tastatur-Hinweisen, B = Zurück, Beenden im Titelmenü, TV-sichere Ränder, Qualität konservativ, Speicher-Wächter. Im Browser testbar mit ?plattform=xbox.
  • Signieren: Android-Release über Umgebungsvariablen/Secrets OVERBOOM_KEYSTORE(_B64), OVERBOOM_KEYSTORE_PASS, OVERBOOM_KEY_ALIAS, OVERBOOM_KEY_PASS (Keystore nie einchecken). Windows/Mac sind unsigniert (SmartScreen: „Weitere Informationen" → „Trotzdem ausführen"; Mac: Rechtsklick → Öffnen).
  • Befehle: npm run dev:desktop, npm run build:desktop, npm run build:mobile (Web-Build + cap sync), npm run android / npm run ios (öffnet Android Studio/Xcode), npm run build:xbox (Web-Build → apps/xbox/OverboomXbox/Web).
  • Werbegrafik (Hochformat 1080×1920): docs/werbung/.

Phase 7 + 8 – Koop & Feinschliff (v0.8.0)

Koop (1–4 Spieler, jeder am eigenen Gerät)

  • Titelbildschirm: Solo spielen, Raum erstellen oder mit Code beitreten. Einladungslink ?raum=CODE tritt direkt bei.
  • Lobby mit 6-stelligem Raumcode, QR-Code, „Link teilen", Spielerliste mit Verbindungsart (direkt / über Relay) und Ping, Heldenwahl für jeden, Insel und Gefahrenstufe vom Host. Start, sobald alle bereit sind.
  • Host-autoritativ: Das Gerät des Hosts simuliert für alle mit 30 Hz (auch kurz im Hintergrund über einen Worker-Takt). Clients schicken nur Eingaben und Shop-Befehle.
  • Netzcode (packages/net): binäre, quantisierte Snapshots (~1,5 KB, 15 Hz) mit den Ereignissen dazwischen – Effekte entstehen bei jedem lokal. Inventar/Shop als JSON nur bei Änderung. Eigene Figur wird vorhergesagt und abgeglichen, alles andere 100 ms verzögert interpoliert.
  • Koop-Regeln: gemeinsame Welle, eigener Shop (weiter, wenn alle bereit sind), Gegnerleben/-anzahl/Boss skalieren mit Spielerzahl, Niederschlagen + Revive-Ring (2,5 s danebenstehen), am Wellenende stehen alle wieder auf.
  • Namensschilder, Pfeile zu Mitspielern außerhalb des Bildes, leichter Koop-Kamerazoom, Wiederverbinden innerhalb von 30 s, sauberer Abbruch mit Hinweis.
  • Transport: WebRTC über Trystero (Signaling über Nostr), STUN eingebaut, TURN konfigurierbar (siehe unten). Zum Testen ohne Netz: ?netz=lokal (Koop zwischen Browser-Tabs).

Feinschliff und Meta-Progression

  • Audio (packages/audio): 45 prozedurale Soundeffekte (eigener Retro-Klanggenerator, keine Dateien) – jede Waffe klingt nach Geschoss/Gruppe (Gacker, Kazoo, Raketen, Blitze …), Ketten-Explosionen steigen in der Tonhöhe, Kristalle spielen eine Tonleiter; 4 Chiptune-Loops (Menü, Kampf, Boss, Shop); Stereo nach Position.
  • Overkill-Leiste & OVERBOOM-Modus: füllt sich durch Kills und Ketten; auslösen (E/Q, Gamepad Y, Touch-Knopf) → 5 s doppelte Feuerrate, jeder Treffer explodiert, Bildschirm färbt sich.
  • Gefahrenstufen 0–10 mit aufsteigenden Modifikatoren (bis „OVERBOOM": alle Gegner explodieren beim Tod). Ein Sieg schaltet die nächste Stufe frei.
  • 9 Helden werden über Erfolge freigeschaltet; 20 Erfolge insgesamt.
  • Einstellungen: Lautstärken, Qualität (automatisch nach Bildrate oder fest), Bildschirm-Wackeln, Lichtblitze, Partikeldichte, Schadenszahlen, Vibration, Farbenblind-Modus (gemusterte Gefahrenzonen) – gespeichert.
  • PWA: installierbar (Manifest, Icons), Service Worker → solo offline spielbar. Spielstand in IndexedDB (alter Stand wird übernommen) plus Export-Code.
  • Debug-Menü: F1 oder 5-Finger-Tipp (Kristalle, Welle überspringen, Gott-Modus, Waffen/Gegner spawnen).
  • UI-Animationen (Panels ploppen schräg herein, Knöpfe federn; „reduzierte Bewegung" wird respektiert), Tipps und Sprüche.

Koop über das Internet: TURN einrichten

Direkte Verbindungen klappen in vielen WLANs. In Mobilfunk- oder Firmennetzen braucht es einen TURN-Relay. Beim Build als Umgebungsvariablen setzen (z. B. Cloudflare Realtime TURN oder eigener coturn):

VITE_TURN_URLS="turn:turn.example.com:3478,turns:turn.example.com:5349" VITE_TURN_USER="name" VITE_TURN_PASS="geheim" npm run build:web

Phase 6 – Welt & Karten (v0.6.0)

  • Weltkarte Krawummia: schwebende Voxel-Inseln über einem Wolkenmeer, jede mit eigener Deko (Scheune, Tesla-Türme, Fabrik, Riesenpilze, Vulkan, Eiskristalle, Bummburg). Ablauf: Held wählen → Insel auf der Karte wählen → los.
  • Insel-Freischaltung: Am Anfang ist nur Gackerfeld offen. Wer den Insel-Boss (Welle 10) besiegt, befreit die Insel (Flagge) und schaltet die nächste frei; ein Sieg auf Welle 20 erobert sie (Krone).
  • Kartenalbum (Set „Das Große Kawumm", 292 Karten): alle Helden, Waffen, 40 Rezepte, Gegner, Bosse und Items. Jede Karte mit Name, Element-Symbolen, Hauptwert (Wucht/HP/Preis), live gerendertem und drehendem Voxel-Artwork, Typzeile, Fähigkeiten, Flavor-Text mit Zitat, Seltenheit und Kartennummer.
  • Freischalten nur durchs Spielen: Waffe benutzt, Held gespielt, Item gekauft, 50 Gegner besiegt, Boss besiegt, Rezept entdeckt. Gesperrte Karten zeigen eine Silhouette und wie man sie bekommt.
  • Glanzkarten mit holografischem Schimmer (folgt dem Zeiger): z. B. Waffe auf 5 Sterne, Sieg mit dem Helden, 500 Gegner einer Art – und über 18 Erfolge.
  • Karten als Bild speichern bzw. am Handy teilen (PNG mit Rahmen).
  • Rezeptbuch im Album: 40 geheime Rezepte (30 neu), unentdeckte mit Hinweis. Neue Rezept-Wirkungen: Mini-Bumm, Feuerspur, Frostnova, Goldregen, Donnerschlag.
  • Lore (data/lore.ts): Weltgeschichte, Ankunfts- und Befreiungstexte je Insel, Boss-Auftritte, Wellen- und Todessprüche, Karten-Zitate.
  • Spielstand: Profil wird auf dem Gerät gespeichert; Export/Import als Code (Album → Erfolge). Meldungen für neue Karten, Glanzkarten, Erfolge und Inseln.

Phase 5 – Content-Ausbau (v0.5.0)

  • 13 Helden mit Startwaffe, Werten und Macke (z. B. Pyromane bekommt nur Explosiv/Feuer, Glückspilz startet mit Zufallswaffe, Oma Kawumm verteilt Heil-Kekse, Turmbauer darf 2 Türme). Start: Held wählen → Insel wählen.
  • 7 Inseln mit eigener Gegner-Fraktion, Farbpalette, Bodengefahr (Eis rutscht, Gift, Tesla-Platten, Lava, brennendes Heu …) und Boss auf Welle 10; Welle 20 immer Baron von Bumm.
  • 16 Gegnertypen + 4 Bosse mit neuen Verhalten: Sprinter, Heiler, Schildträger, Minenleger, Spurleger, Beschwörer, Rutscher, Splitter (Schleimi teilt sich). Bosse König Gockel, Megatoaster, Morchella mit wechselnden Angriffsmustern.
  • Synergien: 9 Elemente, Boni ab 2/4/6 Waffen gleichen Elements (Feuerpfützen, Mini-Nuke, Gewitter, Giftwolken, Drohnen, Küken, Eierregen …). Anzeige im Shop und als Chips im HUD.
  • 15 Elementar-Reaktionen (Dampfexplosion, Schockfrost, Plasmabrand, Sumpf, Strudel …), wenn zwei Elemente denselben Gegner treffen.
  • Sterne & Evolutionen: Waffen sammeln Kills (★1–5, je Stern mehr Schaden/Feuerrate); mit 5 Sternen Evolution A „Mehr" (Salven) oder B „Größer" (2,4× Schaden), mit eigenen Namen (Schwarmraketen/Atomrakete, Doppelpistolen/Handkanone …).
  • 12 Waffen-Mods (Doppelschuss, Querschläger, Zielsuch-Chip, Clusterbombe, Kettenblitz, Gravitations-Kern …), im Shop kaufbar, Einbau ab Stufe II (II: 1 Slot … V: 4).
  • 159 Items (vorher 24), viele mit Vor- und Nachteil.
  • Ausrüstung: 8 Plätze (Helm, Rüstung, Stiefel, Handschuhe, Amulett, 2 Ringe, Rucksack), Seltenheit I–IV mit zufälligen Zusatzwerten, 4 Sets (Grummel-Garnitur, Barons Gala-Garderobe, Funkenkluft, Omas Strickset) mit Boni ab 2 Teilen bzw. komplett. Quellen: Elite-Gegner (30 %), Bosse (immer, oft Set-Teile), Shop. Shop-Tab „Ausrüstung": anlegen, ablegen, verschrotten.
  • Tests: alle Reaktionen, Synergie-Stufen, Helden, Inseln, Bosse, Sterne, Evolution, Mods, Ausrüstung und Sets.

Phase 4 – Waffen-Fusion

  • Fusions-Amboss im Shop (Tab „⚒ Amboss"): 2–3 Waffen aus verschiedenen Gruppen wählen, dann festlegen, welche Waffe Geschoss, Antrieb und Ladung liefert (jede mindestens eins). Live-Vorschau mit Name, Werten, Elementen und Instabilität; Schmiedelohn steigt mit der Welle.
  • Systemisch: Jede der ~16.700 Kombinationen funktioniert. Dafür simuliert der Kern jetzt alle 19 Antriebe (u. a. Kreisel, Querschläger, Bumerang, Spirale, Strahl, Kegel, Himmelsregen, Hüpfen, Minen, Türme, Schwarm-Begleiter, Rollen, Teleport, Rundumschlag) und alle 22 Ladungen (u. a. Küken-Begleiter, Verhühnerung, Lavapfützen, Nässe leitet Blitze doppelt weit, Säure, Magnet, Schwerkraft-Sog, Konfetti-Verwirrung, Einfrieren nach 3 Frost-Treffern). Dadurch sind auch alle 60 Waffen im Shop.
  • Werte: Feuerrate und Reichweite vom Antriebs-Spender, Schaden so, dass der DPS dem Mittel der Zutaten entspricht – plus Bonus je nach Instabilität (0–100 %: je verschiedener die Gruppen, desto instabiler und stärker). Bei Krit kann eine instabile Waffe einen Bonus-„Kawumm!" auslösen (nie schädlich für dich).
  • Namensgenerator (Adjektiv vom Geschoss + Element der Ladung + Nomen vom Antrieb, Endung nach Genus): „Gackernde Blitzrakete", „Rollender Kükenbumerang" …
  • Zusammengesteckte Voxel-Modelle: Körper vom Antriebs-Spender, Aufsatz = Geschoss, Leuchtkern in Ladungsfarbe, Funken je nach Instabilität.
  • 10 geheime Rezepte mit eigenem Namen, Effekt und Modell, z. B. 3× Hühnerkanone = HUHNAGEDDON (Riesenhuhn, Eier-Bombenregen), Kawummageddon (Cluster-Explosionen), Donnertoaster, Schwarzes Buffet (Sog + Implosion), Omas Geheimrezept (heilende Kekse), Quietschendes Inferno, Frostfeuerwerk, Kettensägen-Karussell, Bienenkönigin (Giftwolken), Gackerndes Chaos (Verhühnerungs-Strahl). Beim ersten Entdecken: Fanfare + „Rezept entdeckt!".
  • Rezeptbuch im Amboss: entdeckte Rezepte mit Zutaten, unentdeckte als „???" mit Hinweis (auf dem Gerät gespeichert).
  • Fusionen lassen sich wie normale Waffen mergen, verkaufen und aufwerten.
  • Tests: alle 418 Antrieb×Ladung-Kombinationen, 300 Zufallsfusionen, alle 60 Waffen und alle 10 Rezepte kämpfen ohne Fehler und machen Schaden.

Phase 3 – Shop & Progression

  • Run-Ablauf: Startwaffe wählen (Pistole, Raketenwerfer, Tesla-Stab, Schrotflinte) → 20 Wellen → Sieg (optional Endlos weiter) oder Niederlage. Nach jeder Welle: Level-Up-Wahl, dann Shop.
  • Level-Up: Kristalle sind Währung und XP (Bedarf (Level+3)²). Pro Level 1 aus 4 Verbesserungen in 4 Seltenheiten; 14 Werte (Schaden, Feuerrate, Krit, Reichweite, Rüstung, Ausweichen, Regeneration, Lebensraub, Tempo, Glück, Ernte, Explosionsradius, Sammelradius, Max-Leben).
  • Shop: 4 Angebote (Waffen + 24 Items mit Vor- und Nachteilen), Neu würfeln (Preis steigt), Sperren, Verkaufen, Merge (2 gleiche Waffen gleicher Stufe → nächste Stufe I–V, auch automatisch beim Kauf ohne freien Platz), bis zu 6 Waffen, Werte-Übersicht. 22 Waffen kaufbar – alle, deren Antrieb schon simuliert wird.
  • Neue Ladungen: Durchschlag (Plasma), Frost/Kleister (verlangsamt), Brand/Gift (Schaden über Zeit), Splitter, Schwerkraft/Magnet (zieht zusammen), Schall/Ranken/Konfetti (betäubt, mit Sternchen), Glück (doppelte Kristalle), Lebensraub. Neuer Antrieb: Bogenwurf.
  • Boss Baron von Bumm auf Welle 10 und 20: Bomben-Salven mit roten Einschlag-Markierungen, ab 50 % Leben Phase 2 (größere Salven, ruft Bomben-Kröten). Boss-Wellen enden mit seinem Tod, Boss-Leiste im HUD.
  • Elite-Gegner ab Welle 5: größer, mit Krone, 5× Leben, 6× Kristalle.
  • Run-Ende mit Statistik: Welle, Level, Besiegt, Gesamtschaden, größte Kette, Kristalle, MVP-Waffe. Pause-Menü (Esc/P/Start, automatisch im Hintergrund).
  • Menüs komplett mit Touch, Maus, Tastatur (Pfeile + Enter, Esc) und Gamepad (Steuerkreuz + A/B).
  • Alles läuft über Befehle (world.command(...)) – vorbereitet für Host-autoritativen Koop. Shop hat einen eigenen Zufallsgenerator.
  • Balancing-Bot: npm run balance spielt komplette Runs und gibt Welle/Level/Ketten aus.

Phase 2 – Kampf-Kern

  • 3 Waffen mit Auto-Aim (systemisch aus Antrieb + Ladung), Grummelbold, Bomben-Kröte, Toastomat, Wellen mit Spawn-Warnung, Kristalle, Ketten-Explosionen, Fässer, Hit-Stop, Screen-Shake, Schadenszahlen. Instancing, Pools, Spatial Hash.
  • Phase 1: Monorepo, deterministische 30-Hz-Simulation, Low-Res-Voxel-Rendering, isometrische Kamera, Touch/Tastatur/Gamepad.

About

Arena-Chaos mit Waffen-Fusion – 1–4 Spieler, für Browser, PC, Mac, Linux, Android, iOS und Xbox

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages