星际争霸2机器学习API安装
DeepMind星际争霸2API原网站: https://deepmind.com/blog/announcements/deepmind-and-blizzard-open-starcraft-ii-ai-research-environment
暴雪星际争霸2API github库: https://github.com/Blizzard/s2client-proto
视频资料: https://www.youtube.com/watch?v=v3LJ6VvpfgI
1.准备工作:
下载星际争霸2客户端,以及python-sc2的第三方github库文件.
跟随python-sc2的安装指南进行安装(使用pip安装最为简单),
(py-sc2是deepmind制作的API但是由于其相对复杂,所以使用python-sc2进行初学入门)
在s2client-proto库中下载天梯比赛的地图,全部下载.
在游戏安装目录下新建Maps文件夹,将下载的zip文件进行解压(直接解压到当前文件夹)
压缩文件密码在s2client-proto库的README文件中, 由于输入该密码意味着你同意相关协议, 所以请亲自阅读该README文件
验证客户端以及库文件安装成功:
使用官方提供的测试代码:
https://burnysc2.github.io/python-sc2/docs/text_files/introduction.html#installation
1 import sc2
2 from sc2.bot_ai import BotAI
3 from sc2.player import Bot, Computer
4
5 class MyBot(BotAI):
6 async def on_step(self, iteration: int):
7 print(f"This is my bot in iteration {iteration}!")
8
9 sc2.run_game(
10 sc2.maps.get("AcropolisLE"),
11 [Bot(sc2.Race.Zerg, MyBot()), Computer(sc2.Race.Zerg, sc2.Difficulty.Hard)],
12 realtime=False,
13 )
如果提示找不到sc2文件夹则编辑**\Python\Python37\Lib\site-packages\sc2\paths.py中该段代码:(该文件存在于python安装路径中)
BASEDIR = {
"Windows": "*************************",
...}
如果提示找不到Maps文件夹,则 在游戏安装目录下新建Maps文件夹,将下载的zip文件进行解压(直接解压到当前文件夹)
正常情况下星际争霸2会弹出一个窗口并以高刷新率进行一场游戏
如果提示使用gdb格式读取错误则需要将对应的代码行更改为encoding = "utf-8"
2.视频讲解:
import sc2 from sc2 import run_game, maps, Race, Difficulty from sc2.player import Bot, Computer #Bot是你自己写的算法的接口, Computer是游戏自带AI class SentdeBot(sc2.BotAI): #sc2.BotAI用于近似模拟人为操作,BotAI源文件在库文件的安装目录下bot_ai.py内
#提供部分部分简单操作的技术支持
async def on_step(self, iteration):
TUTO2:
学习该系列并没有什么基础知识条件,只是碰到自己不明白的就去查询