Bibliothek

Aktionen und Methoden

Alles, was der Host tun kann: Raum, Partie, Moderation, Teams und Host.

Alle folgenden Methoden sind Fire-and-forget: Sie senden das Paket an den Server und kehren zurück. Um das Ergebnis zu erfahren, höre auf die passenden Events (siehe Zustand und Events).

Raum

ts
room.setRoomName('Neuer Name');
room.setRoomPassword('neues_passwort');  // '' entfernt das Passwort
room.chat('Hallo!');

Partie

ts
room.startGame();              // siehe "Partien, IS-Blob und Zuschauer" für den Anfangszustand
room.stopGame();               // schickt alle zurück in die Lobby
room.startCountdown(3);        // 3-s-Countdown (Standard: 3)
room.abortCountdown();

room.setMode('b', 'b');        // engine, mode
room.setRounds(5);
room.setMap(lzStringBlob);     // wechselt die Karte des Raums
room.setReady(true);           // markiert den Bot selbst als bereit
room.allReadyReset();          // setzt das "Bereit" aller zurück

Moderation

ts
room.kickPlayer(id);   // wirft raus, ohne zu bannen
room.banPlayer(id);    // permanenter Bann

Teams und Host

ts
// Team: 0 spec · 1 ffa · 2 rot · 3 blau · 4 grün · 5 gelb
room.setTeam(id, 3);            // verschiebt einen ANDEREN Spieler (nur der Host)
room.joinTeam(0);               // verschiebt den Bot SELBST

room.lockTeams();               // sperrt: Spieler wechseln nicht eigenständig das Team
room.unlockTeams();
room.setTeamsEnabled(true);     // schaltet den Team-Modus ein/aus

room.giveHost(id);              // gibt den Host ab
room.setNoHostSwap(true);       // verhindert den automatischen Host-Wechsel

Mehr zur Team-Sperre unter Teams und Sperre.

Anti-AFK

ts
room.enableAntiAfk({ thresholdMs: 12_000 });
room.isAfk(playerId);
room.disableAntiAfk();

Siehe Anti-AFK.

Trennen

ts
room.disconnect();   // idempotent: räumt Timer, interne Listener und Zustand auf

Ratenlimits

Der Server begrenzt, wie oft mehrere Befehle gesendet werden dürfen (Team-Wechsel, Sperre, Moduswechsel, Countdown). Dann erhältst du eine status-message mit einem Code wie rate_limit_tl. Die Bibliothek vermeidet Schübe bereits, wo sie kann (zum Beispiel sendet ein wiederholter Aufruf von lockTeams() das Paket nur einmal), aber wenn du Befehle in einer Schleife abfeuerst, verteile die Aufrufe zeitlich.