Biblioteca

Acciones y métodos

Todo lo que puede hacer el host: sala, partida, moderación, equipos y host.

Todos los métodos siguientes son fire-and-forget: envían el paquete al servidor y regresan. Para conocer el resultado, escucha los eventos correspondientes (consulta Estado y eventos).

Sala

ts
room.setRoomName('Nuevo Nombre');
room.setRoomPassword('nueva_contraseña');  // '' quita la contraseña
room.chat('¡Hola!');

Partida

ts
room.startGame();              // consulta "Partidas, IS blob y espectadores" para el estado inicial
room.stopGame();               // devuelve a todos al lobby
room.startCountdown(3);        // cuenta atrás de 3 s (por defecto: 3)
room.abortCountdown();

room.setMode('b', 'b');        // engine, mode
room.setRounds(5);
room.setMap(lzStringBlob);     // cambia el mapa de la sala
room.setReady(true);           // marca al propio bot como listo
room.allReadyReset();          // reinicia el "listo" de todos

Moderación

ts
room.kickPlayer(id);   // expulsa sin banear
room.banPlayer(id);    // baneo permanente

Equipos y host

ts
// equipo: 0 spec · 1 ffa · 2 rojo · 3 azul · 4 verde · 5 amarillo
room.setTeam(id, 3);            // mueve a OTRO jugador (solo el host)
room.joinTeam(0);               // mueve al PROPIO bot

room.lockTeams();               // bloquea: los jugadores no cambian de equipo por su cuenta
room.unlockTeams();
room.setTeamsEnabled(true);     // activa/desactiva el modo de equipos

room.giveHost(id);              // cede el host
room.setNoHostSwap(true);       // impide el cambio automático de host

Más sobre el bloqueo de equipos en Equipos y bloqueo.

Anti-AFK

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

Consulta Anti-AFK.

Desconectar

ts
room.disconnect();   // idempotente: limpia timers, listeners internos y estado

Límites de tasa

El servidor limita la frecuencia de varios comandos (cambios de equipo, bloqueo, cambios de modo, cuenta atrás). Cuando ocurre, recibes un status-message con un código como rate_limit_tl. La biblioteca ya evita ráfagas cuando puede (por ejemplo, llamar a lockTeams() repetidamente envía el paquete una sola vez), pero si lanzas comandos en un bucle, espacia las llamadas.