На этой странице
Документация Инструменты

Консоль Farsight

Локальная веб-консоль и единственная точка входа: папка игры, запуск и остановка служб и экземпляров игры, настройка следующего матча, мысли ИИ, ручные приказы, режиссура, история матчей.

Farsight — веб-консоль, работающая на вашем компьютере; она слушает только 127.0.0.1. Это и единственная точка входа во всю систему: запуск матчей, смена ИИ, шлюз, облачка реплик, локальная LLM — всё здесь, искать другие скрипты не нужно.

start.bat                 # проверить развёртывание, затем открыть Farsight http://127.0.0.1:8866
start.bat 5 6             # заодно начать тест на экземплярах 5 и 6 (игра + эталонный мозг)
start.bat restart         # перезапустить только бэкенд Farsight (после изменения серверного кода; игры и службы не затрагиваются)
stop.bat                  # полностью остановить всё

Порт меняется в ports.console файла openwar3.json (по умолчанию 8866).

Центр управления

Главная страница Farsight.

  • Папка игры: найти автоматически или выбрать вручную; проверка версии игры, извлечение данных из вашей игры.
  • Локальные службы: шлюз, облачка реплик, локальная LLM (LM Studio), локальный предпросмотр сайта — на каждой карточке можно запустить, остановить, перезапустить службу и посмотреть логи; кроме того, видно, подключил ли клиент MCP-сервер.
  • Проверка окружения: установлены ли Python, файлы рантайма, игровые данные, данные AMAI и остальные части.
  • «Остановить всё» (в правом верхнем углу): по очереди останавливает экземпляры игры, ИИ, шлюз, облачка, локальную модель, которую использует система, и бэкенд Farsight — то же самое, что двойной щелчок по stop.bat. MCP-сервер принадлежит клиентам вроде Claude и не останавливается; сама программа LM Studio тоже не закрывается.

Страницы

ГруппаСтраницаНазначение
ГлавноеЦентр управленияСм. предыдущий раздел
МатчОбзорСводка по матчу текущего экземпляра
Командование боемВид карты; можно отдавать приказы вручную (ручные команды имеют в таблице захватов наивысший приоритет: 95)
Данные юнитовПриказ, текущая цель, мана, уровень и опыт героя, перезарядка способностей, инвентарь каждого юнита
Решения ИИ / боевые решенияО чём эталонный мозг думает в этот тик, подробности каждого боевого решения
Советник по стратегииСостояние LLM-советника: работает ли сервис модели, подключён ли каждый экземпляр, последний совет и входные данные, которые он видел
Режиссёрский пультАвтооператор камеры, полоски здоровья над юнитами
Облачка репликЗаставить юнитов говорить, разговор с локальной моделью, посиделки крестьян, диалоги в кадре, реакция на события, настройки модели. См. Реплики и локальные модели
Скорость командAPM и пропускная способность команд
События и вводЧто произошло в этом матче: применение способностей, чат и экранные сообщения, нажатия кнопок, горячие клавиши, клики по земле, выделение, уход игроков — с фильтром по категориям; рядом — позиция мыши, элемент под курсором и локальное выделение. См. Интерфейс и ввод
ЗаписиЛоги / история матчейИсточники логов каждого экземпляра; итог, длительность и пиковая численность армии в каждом матче
Заметки о проблемахНажмите в игре Pause/Break, чтобы поставить паузу и отметить момент, а описание добавьте здесь позже
СистемаЭкземпляры и запускЗапуск и остановка экземпляров; для следующего матча — карта (карта для боёв, а можно выбрать и RPG / пользовательскую), расы сторон, сложность и скорость игры; для каждого экземпляра — своя ИИ-схема; «Начать тест» — игра + ИИ в один клик
ИИ-схемыИмпорт, экспорт, копирование, доверие, удаление схем; переключение схемы на экземпляре (даже в идущем матче управление сразу перехватит другой ИИ); результаты каждой схемы. См. ИИ-схемы
Консоль JASSПишете JASS-скрипт и нажимаете «Выполнить»; справа — 1291 функция по категориям, щелчок вставляет функцию в скрипт; переменные сохраняются до конца матча. См. JASS-канал
Подключение и расширенияСостояние шлюза и запуск в один клик; адреса подключения для каждой роли (разработчик / игрок / наблюдатель), команды и конфигурация для подключения MCP; примеры на JS и Python. См. Шлюз и MCP
Данные и дискСколько места на диске занимают записи, история матчей, логи и другие рабочие данные, сколько добавилось за последние сутки и что можно удалить (Farsight сам ничего не удаляет)
НастройкиПапка игры, язык интерфейса, оформление (тёмная / светлая тема, современный стиль / стиль Warcraft) и т. п.
Отзывы и предложенияСтолкнулись с проблемой или есть идея — отправьте её нам прямо отсюда; диагностическая информация прикладывается, только если вы отметите флажок, и перед отправкой её можно просмотреть

Нажмите Ctrl + K, чтобы открыть палитру команд: переход по страницам, смена экземпляра, завершение текущего матча, запуск нового мозга.

Раздел «Что нового» внизу боковой панели показывает, что недавно появилось в Farsight и в платформе. При запуске (и затем каждые 6 часов) Farsight спрашивает War3AI.com, не вышла ли новая версия, и если вышла — сообщает вам. Когда Farsight обновляется, вверху страницы появляется баннер: сохраните то, что вводите, и нажмите «Обновить».

Несколько экземпляров

За запуск нескольких копий отвечает runtime/farm.py (Farsight вызывает его за вас, когда запускает и останавливает экземпляры): оригинальный загрузчик War3.exe копируется под именем War3-<N>.exe (никакие файлы игры не изменяются), у каждого экземпляра свой номер и свой каталог (bin/inst<N>/). После окончания матча следующий запускается автоматически по next_game.json (именно его редактирует страница «Экземпляры и запуск» в консоли).

Ваш бот подключается к нужному экземпляру через --inst N. На странице «Экземпляры и запуск» видно, какие номера заняты, — не берите номер, на котором работает эталонный мозг.

Страница для стрима

http://127.0.0.1:8866/live — страница с прокручивающимся логом, которую удобно добавить в OBS как источник типа «Браузер»: на ней видны решения ИИ и ход боя.

API

Серверная часть консоли — набор локальных REST- и WebSocket-методов (состояние экземпляров, настройки следующего матча, подробности по юнитам, ручные приказы, логи, история матчей, режиссура, ИИ-схемы, вызовы JASS, холст…), а веб-страница — лишь один из клиентов: вызывать их напрямую может программа на любом языке. Список методов приведён в шапке файла console/server/app.py; как работать с группами схем, JASS и холста, описано на страницах ИИ-схемы, JASS-канал и Холст.