This commit is contained in:
team3
2026-09-16 15:04:02 +02:00
parent 3be22351a3
commit b9d6b115c0
23 changed files with 795 additions and 425 deletions

View File

@@ -41,7 +41,8 @@ Die Partie läuft nicht beim Host, sondern auf `dice.marha.de`:
* **Wiedereinstieg.** Wer die Verbindung verliert, wird zum Bot. Tritt er mit
demselben Namen und Code wieder bei, bekommt er seinen Platz zurück: der
Server schickt ihm die laufende Aufstellung statt einer Lobby, Zustand und
Würfellage kommen kurz danach nach.
Würfellage kommen kurz danach nach. Das Menü merkt sich den Abbruch und
bietet **Zurück in Raum XY** an - ein Klick, kein Code tippen.
* Der **Host** ist der erste Spieler im Raum. Geht er, rückt der nächste nach.
Nur er stellt die Bots ein und startet.
* Der letzte macht das Licht aus: verlässt der letzte Spieler den Raum, wird er
@@ -162,8 +163,12 @@ Aufgedeckt wird in drei Etappen: Becher hoch, dann zählen, dann das Urteil.
Beim Zählen leuchten die passenden Würfel nacheinander auf. So baut sich die
Spannung auf, statt dass alles auf einmal dasteht.
Nach dem Ende gibt es solo ein **Nochmal** mit denselben Bots. Im Netz führt
der Weg zurück ins Menü.
Nach dem Ende gibt es ein **Nochmal** mit derselben Runde - solo sofort, im
Netz für den Raumbesitzer; der Server setzt den Raum dann für alle neu auf.
Fällt ein Würfel je über die Bande oder durch den Filz, fängt ihn ein
Fangnetz und legt ihn zurück in seine Zone - sonst käme das Würfeln nie zur
Ruhe.
Wer keine Würfel mehr hat, scheidet aus und schaut zu. Der Letzte gewinnt.
@@ -237,7 +242,7 @@ das ist seine Grundwirkung, und Wappen macht daraus nur eine 6.
die Münzen zu seiner Zone.
* Klänge (Würfel, Münze, Becher, Gewinn) werden beim Start berechnet. Es gibt
keine Tondateien, so wie es auch keine Bilddateien gibt.
* Die Regeln stehen im Menü unter **Regeln**.
* Die Regeln stehen im Menü unter **Regeln**, inklusive aller sechs Münzen.
### Bots
@@ -258,12 +263,14 @@ vermutlich haarscharf, rufen sie „Genau".
| `scripts/net.gd` | Autoload: WebSocket-Verbindung, Räume, Lobby, Spielstart |
| `scripts/boosters.gd` | Autoload: Münzkatalog mit Grund- und Wappenwirkung |
| `scripts/game.gd` | Spiellogik (host-autoritativ), RPCs, Zustandsabgleich |
| `scripts/muenzen.gd` | Münzen: ziehen, werfen, Wirkung, Bot-Absicht, Topf |
| `scripts/aufdecken.gd` | Aufdecken in Etappen, Genau, Topfvergabe |
| `scripts/table.gd` | Aufbau der 3D-Szene: Tisch, Würfelzonen, Becher, Kamera |
| `scripts/die.gd` | Physik-Würfel, Ablesen der Augenzahl aus der Ruhelage |
| `scripts/ai.gd` | Bot-Entscheidungen (Binomialabschätzung für Gebot/Anfechtung) |
| `scripts/hud.gd` | Spiel-UI |
| `scripts/klang.gd` | Autoload: berechnete Klänge, keine Dateien |
| `tests/` | Headless-Tests, `make test` - siehe `tests/README.md` |
| `tests/` | Headless-Tests, `make test` (~30 s); `make sim` misst die Bots - siehe `tests/README.md` |
| `scripts/menu.gd` | Startmenü und Lobby |
Die gesamte Spiellogik und die Würfelphysik laufen beim Host. Clients erhalten