Brood War API {#BWAPI}
[TOC]
項目信息{#project}
概述{#OverView}
Brood War應用程序編程接口(BWAPI)是一個免費的開源C ++框架,用於與流行的實時策略(RTS)遊戲星際爭霸:Broodwar。使用BWAPI,學生,研究人員和業餘愛好者可以創建玩遊戲的人工智能(AI)代理商。
默認情況下,BWAPI僅顯示遊戲狀態的可見部分。 AI拒絕了回到戰爭霧的單位的信息。這使程序員能夠編寫必須在部分信息條件下計劃和操作的競爭性非作戰的AI。 BWAPI還默認拒絕用戶輸入,確保用戶在AI播放時無法控制遊戲單元。除非由錦標賽模塊執行(AI錦標賽的遊戲裁判),否則可以更改這些默認設置以提高靈活性。比賽開始時將廣告更改默認值。
功能{#apapiality}
- 通過控制各個單位來為星際爭霸:育雛儀編寫競爭性AIS。
- 閱讀遊戲狀態的所有相關方面。
- 分析重播逐框,提取趨勢,建立訂單和共同策略。
- 獲取有關單元類型,升級,技術,武器等的全面信息。
- 在強大的商業RTS環境中研究和研究實時AI算法。
入門{#啟動}
- 在C ++中開發機器人?然後下載最新版本。
- 如果您想在Java開發一個機器人,請遵循本教程。
- 想幫助改善BWAPI嗎?分叉
develop分支。
快速啟動{#快速啟動}
- 安裝
- 安裝Visual Studio 2017
- 安裝星際爭霸:育雛戰爭
- 更新星際爭霸:育雛戰爭至
1.16.1 - 安裝BWAPI
- 編譯
- 在BWAPI安裝目錄中打開
ExampleProjects.sln - 在發行模式下構建extepleaimodule項目
- 複製
ExampleAIModule.dll到Starcraft安裝文件夾中的bwapi-data/AI
- 通過Chaoslauncher運行星際爭霸
- 運行
Chaoslauncher.exe作為管理員- Chaoslauncher在BWAPI的Chaoslauncher目錄中找到
- 檢查BWAPI注射器XXX [釋放]
- 單擊“開始”
- 確保將版本設置為Starcraft 1.16.1,而不是ICCUP 1.16.1
- 與暴雪的AI進行比賽
- 轉到單人- >擴展
- 選擇任何用戶,然後單擊確定
- 單擊“播放自定義” ,選擇一張地圖,然後開始遊戲
- 對著自己進行比賽
- 運行
Chaoslauncher - MultiInstance.exe作為管理員 - 開始
- 轉到多人遊戲- >擴展- >本地PC
- 選擇任何用戶,然後單擊確定
- 單擊創建遊戲,選擇地圖,然後單擊確定
- 開始 - 取消選中bwapi注射器xxx [釋放]讓人類游戲,獨自留下來使AI播放本身
- 轉到多人遊戲- >擴展- >本地PC
- 選擇任何用戶,然後單擊確定
- 加入其他客戶創建的現有遊戲
重要鏈接和聯繫信息{#contact}
- 文檔: http://bwapi.github.io/
- 存儲庫: https://github.com/bwapi/bwapi
- 問題跟踪器: https://github.com/bwapi/bwapi/issues
- 發行: https://github.com/bwapi/bwapi/releases
- sscait Discord: https://discord.gg/dqvhsq9
- IRC頻道: http://webchat.freenode.net/?channels=bwapi
- Facebook: https://www.facebook.com/groups/bwapi/
- 鏈接到比賽,機器人等
競賽{#competition}
各個場所舉辦了遠程競爭性AI競賽,使來自世界各地的開發人員能夠參加。這些場所通常每年舉行,有時會為獲獎者提供獎品。這也是測試機器人功能的好方法。
- AAAI人工智能和互動數字娛樂會議(AIIDE)
- IEEE遊戲會議(COG)
- 學生星際爭霸AI(SSCAI)錦標賽
- BWAPI機器人梯子
問題{#issues}
與BWAPI合作時,您可能會遇到問題。以下是您可能要遵循的一些步驟以解決它們。
- 檢查在
Starcraft/Errors/中找到的日誌文件。 - 在IRC頻道中詢問以前是否有人經歷過您的問題。
- 檢查問題跟踪器,以查看您的問題是否已報告。
- 向問題跟踪器提交問題。一些要考慮提交的信息是
- 日誌文件
- 屏幕截圖
- 版本或修訂號碼
- 作業系統
- 複製問題的步驟
轉到問題跟踪器
法律{#legal}
星際爭霸和星際爭霸:育雛是暴雪娛樂的商標。 BWAPI是違反最終用戶許可協議(EULA)的第三方“黑客”。強烈建議在使用BWAPI之前從暴雪娛樂中購買合法的Starcraft:Broodwar。