传说中的用代码打星际 , BWAPI 新手开发入门 !
Google Code 主页 : http://code.google.com/p/bwapi/
BWAI主要由以下三大模块组成.
BWAPI: http://code.google.com/p/bwapi/
BWTA: http://code.google.com/p/bwta/
BWSAL: http://code.google.com/p/bwsal/
简单介绍下三个工程:
BWAPI 是一切的基础
BWTA 是BroodWar地图解析器工程
BWSAL 是BroodWar标准扩展库
downloads:
BWAPI_Beta_2.4.zip
我是用VisualStudio2008编译的,由于官方只提供了release版的lib,所以只能编译release版本.
但只靠在星际里输出log , 刚接触的时候调试代码会很吃力. 不过可以通过在release导出调试信息,
这样我们只要用VC attach星际进程, 就可以像在调试版本中那样设置断点进行测试了,
由于代码优化,有些变量观察不到,行的运行顺序可能也会不同,不过聊胜于无。
[size=-1]步骤如下:
1、在Project Settings里选Settings For为All Configurations。
2、在C/C++标签中,Debug info 选 Program Database。
3、在Link 标签中,Category选 Debug,选中Debug info 复选框和Microsoft format。
PS:1). 在用写AI的过程中, Chaoslauncher 的星际窗口化功能也很实用, 调试起来非常方便.
2). BWSAL功能已经比较强大, 2次开发的最好在这个基础上, 不要重蹈我用BWAPI自己写一套的悲剧
3). BWAI 还支持lua脚本, 不过我还没看相关的代码, 以后再说.
工程编译说明:
1. 解压ZIp压缩包到本地
2. 拷贝整个 Chaoslauncher/ 到你的 Chaos Launcher 安装目录(直接覆盖).
3. 拷贝 Starcraft/ 到你的星际安装目录(直接覆盖).
4. 拷贝 WINDOWS/ 到你的 C:\WINDOWS or C:\WINNT folder (如果你怕污染系统目录, 直接拷贝到星际安装目录也可以).
5. 打开 ExampleAIModule/ExampleAIModule.sln 编译 RELEASE 版本.
To do this (最基本的VisualStudio设置就不翻译了)
5.1. Change the dropdown box in the top center of the window from "Debug" to
"Release".
5.2. Click Build -> Build Solution. The Example AI Module is now compiled
into a dll.
6. 拷贝 ExampleAIModule/Release/ExampleAIModule.dll 到
星际安装目录的 /bwapi-data/AI/ExampleAIModule.dll
7. 启动 Chaoslauncher 勾选 BWAPI Injector选项
8. 启动星际, 单机联网都支持, BWAPI支持部分 UMS 地图
9. 示例代码支持输入 /analyze 来激活地图解析 , 其他还有几个命令行可以看代码.
最后是甩隐飞的录像: