2026-07-24 13:23:44 +02:00
2026-07-23 15:40:44 +02:00
2026-07-23 09:09:59 +02:00
2026-07-23 09:09:59 +02:00
2026-07-23 09:09:59 +02:00
2026-07-23 15:40:44 +02:00
2026-07-24 13:23:44 +02:00

Audiopoker

Audiopoker ist ein barrierefreies Multiplayer-Pokergame für blinde Spieler, das primär über Audio (TTS & SFX) bedient wird. Das Spiel wird via Webbrowser aufgerufen und auf WebAssembly kompiliert.

Technologie-Stack

  • Engine: Bevy (Rust)
  • Target: WebAssembly (Wasm)
  • Networking: WebSockets für die Synchronisation des Spielzustands.
  • Audio-Output: Web Speech API (via JS-Bindings) für Text-to-Speech, bevy_audio für Soundeffekte.
  • Input: Tastatur-zentrierte Steuerung (Tab/Space/Enter).

Modul-Struktur

  • core::logic: Reine Poker-Logik (Deck, Hand-Evaluation, Betting) ohne grafische Abhängigkeiten.
  • core::network: Netzwerkprotokoll und WebSocket-Handhabung für Multiplayer-Synchronisation.
  • audio::tts: Interface zur Web Speech API für dynamisches Sprechen von Spielereignissen.
  • audio::sfx: Sound-Manager für atmosphärische Effekte (Chips, Karten mischen).
  • ui_minimal: Minimalistische Darstellung, optimiert für Barrierefreiheit und geringen Ressourcenverbrauch.

Installation & Voraussetzungen

Dieses Projekt verwendet Rust und das Bevy Framework. Um das Projekt zu starten, benötigen Sie:

  1. **Rust:**Installieren Sie Rust über rustup.
  2. Bevy Engine: Die Abhängigkeiten werden automatisch via Cargo verwaltet.

Starten des Projekts

cargo run

Funktionsumfang (Roadmap)

Phase 1: Fundament & Core Logic (MVP) - Abgeschlossen

  • Projektstruktur aufsetzen.
  • Poker Engine (Hand-Rankings, Deck-Shuffling/Draw, Betting-Logik).
  • Audio-Grundlagen (audio::tts via Web Speech API).
  • Bevy-App-Grundgerüst mit AudiopokerPlugin.

Phase 2: Networking & Multiplayer - In Planung

  • Server-Architektur für Spielräume und Spielerverwaltung.
  • Netzwerkprotokoll für Aktionen definieren.
  • Multiplayer-Lobby und Tischsuche implementieren.

Phase 3: Audio Experience & UI - In Arbeit

  • TTS-Logik verfeinert (kontextuelle Ansagen).
  • Soundeffekte eingebunden (Event-Ebene).
  • Tastaturzentrierte Steuerung.
  • Mehrspieler-lokal-Testbarkeit verbessern.
  • Neue Hand nach Showdown automatisch starten.

Phase 4: Polishing & Testing - In Planung

  • Barrierefreiheits-Audit (Tastatur-Flow).
  • Latenztests im Multiplayer.
  • WebAssembly Deployment Vorbereitung.
S
Description
No description provided
Readme
137 KiB
Languages
Rust 100%