A reinforcement learning framework template for MOBA game AI training
Project description
QMobaAgent (autowzry-agent)
🎮 项目简介
QMobaAgent是一个基于深度强化学习的MOBA游戏AI训练框架,以王者荣耀为示例,支持从视频学习和在线对战。本项目通过兼容层设计实现游戏逻辑与训练框架的解耦,可作为模板用于开发其他游戏的强化学习AI。
📚 文档导航
使用指南
开发指南
- 给开发者的开发指南 - 与AI代码助手协作的完整流程与技巧 ⭐
- 给代码助手的项目指南 - 让AI代码助手快速了解本项目
- 开发历史 - 开发记录和版本历史
📁 项目结构
autowzry-agent/
├── qmoba_agent/ # 主包目录
│ ├── config/ # 配置管理
│ ├── core/ # 核心模块(DQN模型、训练器)
│ ├── environment/ # 环境交互(兼容层、动作空间、游戏状态)
│ ├── data/ # 数据处理(数据管理、训练缓冲)
│ ├── utils/ # 工具函数(图像处理、视频读取)
│ └── autowzry_lite/ # autowzry精简版
├── scripts/ # 执行脚本(收集、标记、训练、对战)
├── config/ # 配置文件(YAML)
├── docs/ # 文档
├── workspace/ # 运行时数据(episodes、checkpoints等)
└── pyproject.toml # 项目配置
✨ 核心特性与架构
本项目支持完整训练流程:数据收集 → 标记 → 训练 → 在线对战。
设计特色
1. 兼容层作为唯一变体
- 🎯 兼容层(
environment/compatibility.py)负责所有游戏/设备相关的特殊逻辑 - 🔧 通用模块(core、data、utils)与具体游戏完全解耦
- 🔄 切换游戏时只需重写兼容层,其他模块保持不变
2. 依赖注入连接模块
- 各模块通过依赖注入方式连接,而非硬编码依赖
- 模块之间通过接口通信,实现松耦合
- 便于测试、扩展和替换
3. 模型接口标准化
- 模型只需满足固定的输入输出接口
- 可以随意替换不同的模型实现
- 本项目提供了一个轻量级DQN实现(支持mini/full/high三种规模)
🙏 致谢
感谢 Claude Code 提供的强大AI编程助手。
感谢 linux.do 论坛各位赛博善人提供的Claude Code公益站。
本项目学习了以下优秀的强化学习王者荣耀项目:
🔗 相关项目
- autowzry - 王者荣耀自动化框架(图像识别和设备控制)
- autowzry_lite - autowzry的精简版本(包含在本项目中)
- airtest_mobileauto - 移动端自动化工具
🤝 贡献
欢迎提交Issue和Pull Request!
📄 许可证
本项目仅供学习研究使用。
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file qmoba_agent-0.1.0-py3-none-any.whl.
File metadata
- Download URL: qmoba_agent-0.1.0-py3-none-any.whl
- Upload date:
- Size: 583.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6ad9de7dd143afa36436e5184ee89080cc51b1b2bb0f287d251ae36355b62500
|
|
| MD5 |
1b71eca7c52e9fdb1153f6adafef6877
|
|
| BLAKE2b-256 |
e80361408ec0b78d587ac05784cb88722c226903c60743a7e0c26db25fe86cb1
|