En esta página
Docs Herramientas

Consola Farsight

Consola web local y también el único punto de entrada: configura el directorio del juego, arranca y detén los servicios y las instancias del juego, configura la siguiente partida, mira qué piensa la IA, da órdenes a mano, dirección de cámara, historial de partidas.

Farsight es la consola web que se ejecuta en tu equipo y solo escucha en 127.0.0.1. También es el único punto de entrada de todo el sistema: iniciar partidas, cambiar de IA, la pasarela, las burbujas de diálogo y el LLM local se manejan desde aquí, sin tener que buscar otros scripts.

start.bat                 # comprueba el despliegue y abre Farsight en http://127.0.0.1:8866
start.bat 5 6             # además inicia la prueba en las instancias 5 y 6 (juego + cerebro de referencia)
start.bat restart         # solo reinicia el backend de Farsight (tras cambiar el código del servidor; el juego y los servicios no se ven afectados)
stop.bat                  # lo detiene todo por completo

El puerto se cambia en ports.console de openwar3.json (8866 por defecto).

Centro de control

La página de inicio de Farsight.

  • Directorio del juego: búscalo automáticamente o elígelo tú; comprueba la versión del juego y extrae los datos de tu propio juego.
  • Servicios locales: pasarela, burbujas de diálogo, LLM local (LM Studio) y vista previa del sitio web; cada tarjeta permite iniciar, detener, reiniciar y ver el log. Además muestra si algún cliente ha conectado el servidor MCP.
  • Comprobación del entorno: si está instalada cada pieza: Python, archivos del runtime, datos del juego, datos de AMAI, etc.
  • Detener todo (arriba a la derecha): detiene por orden las instancias del juego, la IA, la pasarela, las burbujas, el modelo local que usa este sistema y el backend de Farsight; equivale a hacer doble clic en stop.bat. El servidor MCP lo gestionan clientes como Claude, así que no se detiene; tampoco se cierra el propio programa LM Studio.

Páginas

GrupoPáginaQué hace
PrincipalCentro de controlVer la sección anterior
PartidaResumenVisión general de la partida en la instancia actual
Mando en el campoVista del mapa; puedes dar órdenes a mano (las órdenes manuales tienen la prioridad más alta en la tabla de reclamación: 95)
Datos de unidadesOrden, objetivo de la tarea, maná, nivel y experiencia de héroe, enfriamientos de habilidades e inventario de cada unidad
Decisiones de IA / de combateQué piensa el cerebro de referencia en este tick y el detalle de cada decisión de combate
Asesor de estrategiaEstado del LLM como asesor: si el servicio del modelo está activo, si cada instancia está conectada, el último consejo y la entrada que vio
DirecciónCámara automática, barras de vida sobre las unidades
Burbujas de diálogoHacer hablar a las unidades, conversar con el modelo local, tertulia de campesinos, diálogos de cámara, reacciones a la partida, ajustes del modelo. Ver Burbujas y modelos locales
Velocidad de órdenesAPM y caudal de comandos
Eventos y entradaQué ha pasado en la partida: habilidades lanzadas, chat y mensajes en pantalla, clics en botones, atajos, clics en el suelo, selección, jugadores que se van; con filtro por categoría. Al lado, la posición del ratón, el elemento bajo el cursor y la selección local. Ver Interfaz y entrada
RegistrosLogs / historialFuentes de log de cada instancia; resultado, duración y pico de tropas de cada partida
Notas de problemasPulsa Pause/Break en el juego para pausarlo y anotar el momento; luego añade aquí la descripción
SistemaInstancias y partidaArranca y detén instancias; configura el mapa de la siguiente partida (mapas de combate, y también mapas RPG / personalizados), las razas de ambos bandos, la dificultad y la velocidad; elige un esquema de IA para cada instancia; “Iniciar prueba” lanza juego + IA con un clic
Esquemas de IAImporta, exporta, copia, marca como de confianza y borra esquemas, cambia el esquema de una instancia (incluso en la partida en curso: la nueva IA toma el relevo al instante) y consulta los resultados de cada esquema. Ver Esquemas de IA
Consola JASSEscribe un script JASS y pulsa Ejecutar; a la derecha, consulta las 1291 funciones por categoría y haz clic en una para insertarla en el script; las variables se conservan durante toda la partida. Ver Canal JASS
Conexión y extensiónEstado de la pasarela y arranque con un clic; direcciones de conexión generadas por rol (desarrollo / jugador / espectador), comandos y configuración para conectar el MCP; ejemplos en JS y Python. Ver Pasarela y MCP
Datos y discoCuánto disco ocupa cada tipo de dato de ejecución (grabaciones, historial de partidas, logs, etc.), cuánto se ha añadido en el último día y qué se puede borrar (Farsight nunca borra nada automáticamente)
AjustesDirectorio del juego, idioma de la interfaz, apariencia (oscuro / claro, moderno / estilo Warcraft), etc.
Comentarios y sugerenciasSi encuentras un problema o tienes una sugerencia, envíanoslo directamente; la información de diagnóstico solo se adjunta si marcas la casilla, y puedes previsualizarla antes de enviarla

Pulsa Ctrl + K para abrir la paleta de comandos: cambiar de página, cambiar de instancia, terminar la partida actual, lanzar un cerebro nuevo.

En la parte inferior de la barra lateral, “Novedades” muestra lo último que se ha añadido a Farsight y a la plataforma. Al arrancar (y después cada 6 horas), Farsight pregunta a War3AI.com si hay una versión nueva y, si la hay, te avisa. Cuando Farsight se actualiza, aparece un aviso en la parte superior de la página: guarda lo que estés escribiendo y pulsa “Recargar”.

Multiinstancia

runtime/farm.py se encarga de abrir varias (Farsight lo llama por ti al arrancar y detener instancias): copia el lanzador original War3.exe y lo renombra a War3-<N>.exe (sin modificar ningún archivo del juego); cada instancia tiene un número y un directorio (bin/inst<N>/). Al terminar una partida, la siguiente arranca sola según next_game.json (es lo que editas en la página “Instancias y partida” de la consola).

Tu Bot se conecta a una instancia concreta con --inst N. En la página “Instancias y partida” de la consola ves qué números están en uso; no choques con el cerebro de referencia.

Página para directos

http://127.0.0.1:8866/live es una página de log con desplazamiento, pensada para usarla como “fuente de navegador” en OBS; muestra las decisiones de la IA y el estado de la partida.

API

El servidor de la consola es un conjunto de API REST + WebSocket locales (estado de las instancias, configuración de la siguiente partida, detalle de unidades, órdenes manuales, logs, historial de partidas, dirección de cámara, esquemas de IA, llamadas JASS, lienzo…); la web es solo uno de sus clientes y cualquier programa, en cualquier lenguaje, puede llamarlas directamente. La lista de endpoints está en la cabecera de console/server/app.py; el uso de los grupos de esquemas, JASS y lienzo se explica en Esquemas de IA, Canal JASS y Lienzo, respectivamente.