Los companeros IA de Warman son bots que pelean junto a los jugadores. Necesitan navegar salas, combatir enemigos, usar portales y seguir al jugador, todo dentro de una simulacion lockstep donde cada accion debe ser determinista. El cerebro que los controla es una maquina de estados controlada por WarScript, el lenguaje de scripting integrado.

Follow owner nearby Approach pathfind to enemy Attack 8-tick burst Reposition kite to new spot enemy in range burst done repeat owner enters portal → follow through
Maquina de estados del companero IA: seguir, pelear, kitear, repetir

Todo el Movimiento Pasa por A*

Cada companero obtiene una instancia de AICompanionBrain. El cerebro ejecuta un script WarScript que se llama una vez por tick de simulacion con una funcion on_tick(delta_time). El script emite comandos de alto nivel como "seguir al propietario", "atacar al enemigo mas cercano" o "usar un portal".

Portales

El sistema de portales fue la parte mas dificil de acertar. Cuando el script del jugador le dice al bot que explore (use un nuevo portal), el cerebro busca en la sala interactivos IBotApproachable, portales que exponen una posicion de acercamiento caminable dentro de su zona de activacion.

El bot mantiene una memoria de portales visitados. Cuando usa "usar nuevo portal", filtra los ya visitados y elige el no visitado mas cercano. Si todos los portales han sido visitados, elige uno aleatorio como valvula de escape (pero nunca el portal de llegada, para evitar volver inmediatamente). El portal de llegada (por el que el bot entro al llegar a la sala) se rastrea por separado y siempre se excluye del primer pase.