Cuando una sala se queda esperando (timeout de frenzy / sin rival), se ofrece jugar contra un bot.
socket.on('play-bot', ...)
const botId = `bot-${roomId}`
room.players.set(botId, createPlayer(botId, 'Bot', '', !playerIsDefender, {}))Comportamiento
- El bot recibe un rol (defensor/atacante) opuesto al jugador, repartido 50/50.
- Elige arma respetando la posesión del bate: si no lo tiene, no puede sacarlo.
const available = bot.hasBat ? WEAPONS : WEAPONS.filter((w) => w !== 'bate')Práctica sin fricción
Modo Práctica (sin secuelas)
Las partidas contra el bot son práctica de verdad: NO cuentan stats (partidas/victorias), NO guardan repetición ni tocan tu ELO. Es el sitio para experimentar con las skins funcionales y las mecánicas sin arriesgar tu ranking.