Deine neuen Gegner: klüger und lebendiger
Bots haben jetzt Persönlichkeiten – sie handeln, bauen, bieten, nehmen den Führenden ins Visier und reagieren sogar mit Stickern. Jede Partie fühlt sich anders an.

Kurz gesagt
Gegen den Computer zu spielen wirkte früher etwas fad: Die alten Bots würfelten, kauften, worauf sie landeten, und viel mehr passierte nicht. Damit ist Schluss. Deine Gegner haben jetzt echte Persönlichkeiten – und sie spielen tatsächlich auf Sieg.
Jeder Bot wird aus einem Schwierigkeitsgrad (leicht, mittel oder schwer) und einem Charakter gemischt. Vielleicht triffst du auf einen vorsichtigen Banker, der Bargeld hortet, einen waghalsigen Zocker, der den Jackpot liebt, einen Spezialisten, der einer Farbgruppe hinterherjagt, oder einen nachtragenden Rivalen, der sich auf den Führenden einschießt – auf dich.
- Sie schicken dir Handelsangebote – ein überzähliges Grundstück plus Bargeld für das Feld, das sie brauchen – und sie beantworten deine.
- Sie bauen nach Wert und stellen Häuser dorthin, wo sich die Miete am schnellsten auszahlt.
- Sie bieten in Auktionen mit, und ein schwerer Bot zahlt drauf, um ein Set zu vollenden.
- Sie reagieren im Chat mit Stickern, wenn ein Handel schmerzt oder eine große Miete fällig wird.
| Charakter | Spielt wie |
|---|---|
| Monopolist | Hortet eine Farbgruppe und verwehrt dir deine Sets |
| Spezialist | Setzt kompromisslos auf ein oder zwei Gruppen |
| Nachtragend | Macht dem Führenden das Leben schwer |
| Risikofreudig | Bietet hoch und liebt den Jackpot |
| Schildkröte | Baut langsam und hortet Bargeld |
Weil Schwierigkeitsgrade und Charaktere an jedem Tisch neu gemischt werden, laufen keine zwei Partien gleich ab. Das Brett hat jetzt eine Persönlichkeit.
Für technisch Neugierige
Jeder Bot trägt ein optionales Profil – eine Schwierigkeitsstufe gekreuzt mit einem von fünf Archetypen (Monopolist, Spezialist, nachtragend, risikofreudig, Schildkröte), pro Partie automatisch zu neun Spielweisen gemischt. Das Profil ist eine Reihe von 0–1-Reglern, die jede Entscheidung formen: Kaufen, Bauen, Handeln, Bieten in Auktionen und Kaution im Gefängnis.
// packages/game-engine/src/bot/profile.ts
export type Difficulty = 'easy' | 'medium' | 'hard';
export type Archetype =
| 'monopolist' // hoards a colour group, denies opponents' sets
| 'specialist' // commits to one or two groups
| 'vindictive' // piles pressure on the net-worth leader
| 'risktaker' // bids high, plays the Jackpot
| 'turtle'; // builds slowly, hoards cash
export interface BotProfile {
difficulty: Difficulty;
archetype: Archetype;
aggression: number; // 0..1 — buy/bid/build appetite
tradeAppetite: number; // 0..1 — how often it proposes deals
}Das Profil reist auf PlayerState.botProfile mit und wird beim Start in das engine_state der Partie eingebacken – genau wie das Team-Feld –, es gab also keine Datenbank-Migration. Ein leichter Bot ohne Profil ist Byte für Byte der ursprüngliche Gegner, weshalb jeder frühere Test weiterhin besteht.
Ein schwerer Bot zahlt über den Listenpreis, um ein Monopol zu vollenden – gedeckelt, damit Auktionen sich weiterhin auflösen:
// over-list bid, bounded so the auction always terminates
const maxBid = Math.round(listPrice * (1 + 0.4 * profile.aggression));Alles bleibt deterministisch und garantiert endlich: Bot-Handel ist streng eingegrenzt (ein offenes Angebot zur Zeit, gesetzte Häufigkeit, nur Angebote, die ein Empfänger annehmen würde), und der Simulator wurde über 2–6 Spieler hinweg in 400 zufälligen fast-check-Läufen belastet. Engine 282 / Daemon 91 Tests grün.
