Dota 2 赛后深度分析
功能概述
本skill提供Dota 2比赛的全自动深度分析能力,从OpenDota API获取已解析的录像数据,直接生成结构化的PDF分析报告。
触发场景
以下场景应触发此skill:
- 用户提供Dota 2比赛ID并要求分析
- 用户要求生成Dota 2比赛报告/复盘
- 用户提到"Dota2分析"、"比赛分析"、"replay分析"、"赛后复盘"
- 用户提到OpenDota match ID
使用流程
重要:所有OpenDota API的HTTP请求均通过脚本内置的urllib完成,不要使用浏览器、web_fetch或其他外部HTTP工具访问API。
1. 直接运行脚本生成报告
脚本会自动检查解析状态并生成报告:
python scripts/dota2_pdf_generator.py {match_id}
- 如果比赛已解析:自动获取数据并生成PDF
- 如果比赛未解析:脚本会输出
ERROR: Match {id} NOT parsed.,此时需通过命令行发送POST请求触发解析:
# PowerShell
Invoke-WebRequest -Uri "https://api.opendota.com/api/request/{match_id}" -Method POST -UseBasicParsing
# Linux/Mac
curl -X POST "https://api.opendota.com/api/request/{match_id}"
触发后等待数分钟再重新运行脚本。
2. 结果呈现
报告生成后,向用户返回时不要逐一介绍报告维度或分析方法,只需:
- 简要总结比赛核心结果(获胜方、时长、比分、MVP、关键转折)
- 使用
open_result_view工具提供PDF文件供用户查看
示例回复格式:
比赛 {id} 分析完成。{获胜方}在{时长}内以{比分}获胜,{MVP英雄}表现最佳(KDA),{关键转折简述}。报告已生成。
技术参考
- 报告分析框架和智能评价体系的详细说明见脚本内部注释
- fpdf2渲染技术要点见
references/pdf_technical_notes.md - 脚本内置完整英雄/道具中英文对照字典(HERO_NAMES、ITEM_NAMES)
依赖
- Python 3
- fpdf2 (
pip install fpdf2) - Windows系统需要有中文字体(msyh.ttc/simhei.ttf/simsun.ttc)
- 网络连接(访问OpenDota API)
微信扫一扫