Farsight コンソール
ローカルの Web コンソールで、唯一の入口でもあります。ゲームディレクトリの設定、各サービスの起動と停止、ゲームインスタンスの起動と停止、次のゲームの設定、AI の思考の確認、手動命令、ディレクター、対戦記録。
Farsight はあなたのマシン上で動く Web コンソールで、127.0.0.1 でのみ待ち受けます。システム全体の唯一の入口でもあり、試合の開始、AI の切り替え、ゲートウェイ、頭上の吹き出し、ローカル LLM はすべてここから操作できます。別のスクリプトを探す必要はありません。
start.bat # デプロイのチェック後、Farsight http://127.0.0.1:8866 を開く
start.bat 5 6 # あわせて 5 番、6 番インスタンスのテストを開始(ゲーム + リファレンスブレイン)
start.bat restart # Farsight のバックエンドだけを再起動(サーバー側のコードを変更したあとに使用。ゲームと各サービスには影響なし)
stop.bat # すべてを完全に停止
ポートは openwar3.json の ports.console で変更できます(デフォルトは 8866)。
コントロールセンター
Farsight のトップページです。
- ゲームディレクトリ:自動検出するか自分で選びます。ゲームのバージョンを確認し、あなたのゲームからデータを抽出します。
- ローカルサービス:ゲートウェイ、頭上のチャット吹き出し、ローカル LLM(LM Studio)、公式サイトのローカルプレビュー。どのカードでも起動、停止、再起動、ログの確認ができます。さらに、MCP サーバーがクライアントに登録されているかどうかも表示します。
- 環境チェック:Python、ランタイムのファイル、ゲームデータ、AMAI データなど、各部分がインストールできているかどうか。
- すべて停止(右上):ゲームインスタンス、AI、ゲートウェイ、吹き出し、このシステムが使うローカルモデル、Farsight のバックエンドを順にすべて停止します。
stop.batをダブルクリックするのと同じです。MCP サーバーは Claude などのクライアントが管理しているため停止されません。LM Studio のアプリ本体も終了しません。
ページ
| グループ | ページ | 役割 |
|---|---|---|
| ハブ | コントロールセンター | 前の節を参照 |
| 対戦 | 概要 | 現在のインスタンスの対戦状況 |
| 戦場指揮 | マップビュー。手動で命令を出せます(手動命令はクレームテーブルで最も高い優先度:95) | |
| ユニットデータ | 各ユニットのオーダー、タスク目標、マナ、ヒーローのレベルと経験値、スキルのクールダウン、インベントリ | |
| AI の判断 / 戦闘の判断 | リファレンスブレインがこのティックで何を考えているか、各戦闘判断の詳細 | |
| 戦略アドバイザー | LLM アドバイザー の状態:モデルサーバーが起動しているか、各インスタンスが接続されているか、直近の提案とその入力 | |
| ディレクター | 自動カメラワーク、頭上の HP バー | |
| 頭上の吹き出し | ユニットに話させる、ローカルモデルとの会話、農民の井戸端会議、カメラ会話、戦況トリガー、モデル設定。頭上の吹き出し を参照 | |
| 命令速度 | APM とコマンドのスループット | |
| イベントと入力 | このゲームで起きたこと(スキル使用、チャットと画面メッセージ、ボタンのクリック、ホットキー、地面のクリック、選択、プレイヤーの退出)をカテゴリ別に絞り込んで表示。横にはマウス位置、ホバー中の項目、ローカルプレイヤーの選択。UI と入力 を参照 | |
| 記録 | ログ / 対戦記録 | 各インスタンスのログソース。各ゲームの結果、時間、兵力のピーク |
| 問題メモ | ゲーム中に Pause/Break で一時停止して時点を記録し、あとでここに説明を追記 | |
| システム | インスタンスと開始設定 | インスタンスの起動と停止。次のゲームのマップ(対戦マップのほか、RPG / カスタムマップも選べます)、両陣営の種族、難易度、ゲーム速度を設定。インスタンスごとに AI スキームを 1 つ選択。「テスト開始」でゲーム + AI をワンクリックで起動 |
| AI スキーム | スキームのインポート、エクスポート、コピー、信頼、削除。インスタンスのスキーム切り替え(対戦中のゲームもその場で別の AI に引き継げます)、スキームごとの戦績の確認。AI スキーム を参照 | |
| JASS コンソール | JASS スクリプトを書いて実行。右側で 1291 個の関数をカテゴリ別に検索し、クリックでスクリプトに挿入。変数は同じゲームの間ずっと保持されます。JASS チャネル を参照 | |
| 接続と拡張 | ゲートウェイの状態とワンクリック起動。開発 / プレイヤー / 観戦者の各ロール向けに生成した接続 URL、MCP の登録コマンドと設定。JS、Python のサンプル。ゲートウェイ、MCP を参照 | |
| データとディスク | 録画、対戦記録、ログなどの実行データがそれぞれディスクをどれだけ使っているか、直近 1 日でどれだけ増えたか、どれを削除できるか(Farsight は何も自動では削除しません) | |
| 設定 | ゲームディレクトリ、表示言語、外観(ダーク / ライト、モダン / Warcraft 風)など | |
| フィードバックと提案 | 問題や提案をそのまま私たちに送信できます。診断情報はチェックを入れたときだけ添付され、送信前にプレビューできます |
Ctrl + K でコマンドパレットを開きます。ページ移動、インスタンス切り替え、現在のゲームの終了、新しいブレインの起動ができます。
サイドバー下部の「最近の更新」には、Farsight と基盤に最近追加された内容が並びます。Farsight は起動時(その後は 6 時間ごと)に War3AI.com へ新しいバージョンがあるかを問い合わせ、あればお知らせします。Farsight が更新されるとページ上部にバナーが表示されます。入力中の内容を保存してから「再読み込み」をクリックしてください。
マルチインスタンス
runtime/farm.py が複数起動を担当します(Farsight がインスタンスを起動・停止するときに代わりに呼び出します)。オリジナルの War3.exe ランチャーを War3-<N>.exe という名前でコピーし(ゲームファイルは一切変更しません)、インスタンスごとに番号とディレクトリ(bin/inst<N>/)を割り当てます。ゲームが終わると、next_game.json(コンソールの「インスタンスと開始設定」ページで変更しているのがこのファイル)に従って次のゲームを自動で開始します。
Bot は --inst N で指定したインスタンスに接続します。コンソールの「インスタンスと開始設定」ページで使用中の番号を確認し、リファレンスブレインと番号が重ならないようにしてください。
ライブページ
http://127.0.0.1:8866/live は OBS の「ブラウザソース」に入れるのに適したスクロールログのページで、AI の判断と戦況を表示します。
API
コンソールのサーバーは、ローカルの REST + WebSocket API の集まりです(インスタンスの状態、次のゲームの設定、ユニットの詳細、手動命令、ログ、対戦記録、ディレクター、AI スキーム、JASS 呼び出し、キャンバス……)。Web ページはそのクライアントの 1 つにすぎず、どの言語のプログラムからでも直接呼び出せます。API の一覧は console/server/app.py のファイル先頭に書かれています。スキーム、JASS、キャンバスの 3 つの使い方は、それぞれ AI スキーム、JASS チャネル、キャンバス を参照してください。