常見問題
這是外掛嗎?支援哪些版本?AI 能看到什麼、能做什麼?不會寫程式能用嗎?……
這是外掛嗎?
不是。它是給 AI 研究與娛樂使用的開發介面,只用於你自己合法擁有的用戶端,在本機、區域網路或自建遊戲中和電腦或其他 AI 對戰。它不得用於 Battle.net 或任何有反作弊機制的伺服器,也不提供任何針對真人對局的功能。詳見使用邊界。
支援哪些遊戲版本?
目前只支援**《魔獸爭霸 III》1.27**(寒冰霸權)。1.24 ~ 1.28 是同一套引擎結構,多版本相容(依版本選擇符號表、以特徵碼備援、啟動時自我檢查並產出能力清單)列在路線圖的 P4 階段。1.29 之後的版本及重製版是另一套引擎,需要另外適配,目前不做承諾。
會修改我的遊戲檔案嗎?
不會。執行環境是在遊戲執行時注入,不修改磁碟上的 Game.dll 或任何遊戲檔案。多開時只是把原版的 War3.exe 啟動殼原封不動地複製並改名。遊戲資料(單位表等)是從你自己的遊戲中擷取,不隨程式碼散布。
AI 能看到什麼?
基本上就是一位職業選手想知道的一切,每 50 ms 更新一次:
- 所有玩家的黃金、木材、人口;所有單位的位置、血量魔力、目前指令、正在攻擊誰、等級經驗;
- 英雄和單位的技能等級與剩餘冷卻、身上的 buff、物品欄;
- 每座建築正在訓練/研究/建造/升級什麼、進度多少、有沒有因為人口而卡住;
- 地上的物品、樹木、地圖的可通行/可建造網格、出生點、遊戲內時間(晝夜);
- 事件流:單位出現與死亡、每一下傷害(誰打的、攻擊類型、護甲減免前的傷害)、擊殺、生產完成、英雄升級……
- 還能直接詢問引擎:某件事現在能不能做、為什麼不能;某項科技幾級;某一點看不看得見;金礦還剩多少;電腦對手打算帶兵攻打哪裡。
在此之上,SDK 還幫你算好了戰鬥屬性(克制、護甲、攻防升級)、「擊殺它要幾秒」以及地面尋路。所有 API 請見 API 目錄。
AI 能做什麼?
玩家能做的操作基本上都有:移動、攻擊移動、攻擊指定目標、停止、原地待命、巡邏、攻擊地面、採集、修理、建造(可自動找位置)、訓練/研究/升級、取消、學技能、施法(對單位/對地點/無目標)、集結點、復活英雄、撿起/使用/丟棄/給予/販賣物品、購買物品、戰鬥號召(Call to Arms);Shift 排程、依路徑點行軍、一個工人連續建造多座;還有遊戲速度、暫停、頭頂氣泡。每條命令都有回執。
除了玩家的操作,還能在遊戲畫面上畫出自己的面板和標註(畫板),以及在單人局裡呼叫地圖作者能用的 1291 個 JASS 函式(JASS 通道)。
能用在 RPG/自訂地圖裡嗎?
可以。選一張 RPG 地圖、為實例選擇「玩伴範例」方案,開局後你自己玩,身邊就會跟著一個會助戰、幫你補血、陪你說話的 AI 夥伴,請見 RPG 玩伴。g.map_data 能讀出地圖自訂單位的名稱;JASS 通道能建立單位、設定盟友、彈出面板……怎麼玩由你決定。改動世界的操作只在單人局可用(多人局會不同步),畫板在多人局裡也安全。
不會寫程式能用嗎?
可以。依照快速開始裝好環境,再看用 LLM 寫一個 Bot:你用白話描述打法,LLM 負責寫程式碼;執行起來有問題,就把錯誤訊息或你在遊戲裡看到的現象告訴它,讓它修改。
只能用 Python 嗎?
SDK 是 Python。執行環境和外部程式之間只有一份共用記憶體協定(W3P),任何能讀寫 Windows 共用記憶體的語言都能接入。更省事的是 閘道(WebSocket / JSON):JS、C#、Go、Rust、瀏覽器頁面、另一台電腦上的程式都能呼叫同樣的 API;LLM Agent 可以直接掛上 MCP。
用哪個 LLM 最好?
能寫程式碼的主流模型都可以。關鍵不在模型,而在於給它正確的材料(手冊 + api.json + 一個範例),並要求它只使用 API 目錄裡存在的方法。局內即時決策(參謀、配音)對延遲很敏感,本機 MoE 模型表現很好,請見 LLM 當參謀和頭頂氣泡與本機模型。
會拖慢遊戲嗎?
世界狀態每次擷取在遊戲執行緒上的中位數為 0.5 ~ 0.9 ms(100 ~ 120 個單位),每 50 ms 一次。命令在遊戲執行緒上每條只要幾微秒,每次清空有 4 ms 的時間預算,做不完的留到下一次,不會拖住遊戲。所有對遊戲的呼叫都有例外保護,Bot 當掉只會讓那一方停下,不會連帶讓遊戲當掉。
能同時開多個遊戲嗎?
可以。runtime/farm.py 負責多實例編排,每個實例一個編號;在遠見指揮台中啟動或停止。你的 Bot 用 --inst N 連線到指定實例。
能讓兩個 AI 對戰嗎?
在同一局裡開兩條 player 通道(--player 0/--player 1)就是 AI 對 AI。本機模式下的公平性靠約定;有裁判、視野過濾、歸屬校驗的正式對戰在對戰平台(P6 階段)。
支援 Mac/Linux 嗎?
目前只支援 Windows 10/11。
採用什麼授權條款?
授權條款會隨正式版一起公布。第三方元件保留各自的授權(例如 MinHook 為 BSD-2);AMAI 採自訂授權,其衍生資料不隨專案散布,安裝時從 AMAI 的公開儲存庫拉取並產生。
遇到問題去哪裡回報?
正式版發布後會開放問題回報管道。回報時請附上實例編號、python -m openwar3 status 的輸出和重現步驟。先看看偵錯與效能能不能解決。