开源
s2client-api:构建脚本机器人的跨平台C++库
来源:元经纪     阅读:330
网站管理员
发布于 2023-01-28 07:51
查看主页

概述

Google 的 DeepMind 和暴雪娱乐公司正在合作一个项目,使星际争霸2视频游戏成为人工智能研究平台成为可能。这是一个用于构建脚本机器人的跨平台 C++ 库。

星际争霸 II API 提供对游戏内状态观察和单位控制的访问。该 API 是通过 websocket 连接围绕 protobuf 定义的协议的包装器。

虽然可以直接写入协议,但此库提供了 C++ 和基于类的抽象。您可以在下面看到一个简单的示例。

[hidecontent type="logged" desc="隐藏内容:登录后可查看"]

#include <sc2api/sc2_api.h>

#include <iostream>
using namespace sc2;

class Bot : public Agent {
public:
    virtual void OnGameStart() final {
        std::cout << "Hello, World!" << std::endl;
    }

    virtual void OnStep() final {
        std::cout << Observation()->GetGameLoop() << std::endl;
    }
};

int main(int argc, char* argv[]) {
    Coordinator coordinator;
    coordinator.LoadSettings(argc, argv);

    Bot bot;
    coordinator.SetParticipants({
        CreateParticipant(Race::Terran, &bot),
        CreateComputer(Race::Zerg)
    });

    coordinator.LaunchStarcraft();
    coordinator.StartGame(sc2::kMapBelShirVestigeLE);

    while (coordinator.Update()) {
    }

    return 0;
}

您可以在 docs/tutorial1.md 中找到有关此代码功能的详细教程。

文档

您可以在我们的github 页面网站上的文档中找到 API 。文档是使用Doxygen从代码自动生成的

自己编辑和生成文档。

  1. 下载并安装doxygen
  2. fork 存储库并在本地克隆它
  3. 检查主分支'git checkout origin/master -b my-documentation-update
  4. 更改代码文档或文档/文件
  5. 从项目的根目录运行:doxygen Doxyfile
  6. 通过在浏览器中打开 docs/html/index.html 查看文档更改
  7. 将您的更改推送到您的叉子并向我们发送拉取请求

建筑

该库使用CMake生成项目文件。它在 Windows 上使用Visual Studio构建,在其他平台上使用 Makefiles 构建。它依赖于以下贡献包。

  1. 灵猫
  2. 协议缓冲区
  3. (可选)SDL
  4. ipv6-解析

按照docs/building.md中的子模块和构建说明进行操作。

编码标准

编码标准

除了我们使用四个空格制表符而不是两个空格制表符外,我们尽最大努力遵守 Google C++ 风格指南。

额外下载

地图和回放

该存储库仅附带一些用于测试的地图。

可以在此处找到其他地图和重播。

预编译库

如果您使用的是 Visual Studio 2017 并且只需要预编译的库文件,您可以下载以下包:

预编译库

其他

可以在此处找到其他社区构建的 AI 库。

如果您是编程新手,CommandCenter框架可能是一个很好的起点。

[/hidecontent]

 
[/rihide]
免责声明:本文为用户发表,不代表网站立场,仅供参考,不构成引导等用途。 开源
元宇宙场景下大学生中华民族共同体意识的铸牢机制与路径
不断推动数据“增值变现”
解析便携式显微镜如何成为科学实验室的新宠
雷厂长进厂!雷军晒车间席地而坐照片:提醒早点出门免得堵车
执行力文化不可或缺

首页

分类

定制方案

消息

我的