雀魂自动化AI SDK 使用教程
项目地址:https://gitcode.com/gh_mirrors/ma/majsoul_wrapper
1. 项目目录结构及介绍
majsoul_wrapper/
├── docs/
│ └── img/
├── proto/
├── .gitignore
├── LICENSE
├── README.md
├── __init__.py
├── __main__.py
├── addons.py
├── liqi.py
├── sdk.py
└── ws_dump.pkl
目录结构说明
- docs/: 存放项目文档和图片资源。
- proto/: 存放雀魂游戏的Protobuf协议文件。
- .gitignore: Git忽略文件配置。
- LICENSE: 项目许可证文件。
- README.md: 项目介绍和使用说明。
- init.py: 模块初始化文件。
- main.py: 项目主入口文件。
- addons.py: 用于mitmproxy的插件文件。
- liqi.py: 用于解析雀魂websocket数据的工具。
- sdk.py: 提供更高层次的抽象,用于实现雀魂AI的回调函数。
- ws_dump.pkl: websocket消息流的样例文件。
2. 项目启动文件介绍
__main__.py
__main__.py
是项目的启动文件,负责初始化和启动mitmproxy进程。通过该文件,可以启动mitmproxy并开始抓取雀魂游戏的websocket数据。
启动命令
python3 -m majsoul_wrapper
sdk.py
sdk.py
提供了更高层次的抽象,用于实现雀魂AI的回调函数。通过该文件,可以解析websocket数据并触发相应的AI动作。
使用示例
python3 sdk.py --dump FILE
python3 sdk.py --load FILE
3. 项目的配置文件介绍
addons.py
addons.py
是mitmproxy的插件文件,用于抓取雀魂游戏的websocket数据。该文件配置了mitmproxy的行为,包括如何处理websocket数据流。
主要功能
- 抓取websocket数据: 通过mitmproxy截获雀魂游戏的websocket数据。
- 缓存数据: 将抓取到的websocket数据缓存到本地文件中。
liqi.py
liqi.py
用于解析雀魂websocket数据的工具。该文件通过反解析liqi proto,将websocket二进制数据解码为Json与Dict可解释对象。
主要功能
- 解析websocket数据: 将websocket二进制数据解析为可读的Json格式。
- 缓存数据: 将解析后的数据缓存到本地文件中。
sdk.py
sdk.py
提供了更高层次的抽象,用于实现雀魂AI的回调函数。该文件定义了一系列回调函数,用于处理不同的游戏事件。
主要功能
- 回调函数: 定义了多个回调函数,用于处理游戏中的不同事件,如出牌、吃碰杠等。
- 数据解析: 解析websocket数据并触发相应的回调函数。
通过以上配置文件和启动文件,可以实现雀魂游戏的自动化AI功能。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考