雀魂自动化AI SDK使用教程

雀魂自动化AI SDK使用教程

majsoul_wrapper 自动化雀魂AI的SDK,实时解析雀魂对局信息,并模拟鼠标动作出牌 majsoul_wrapper 项目地址: https://gitcode.com/gh_mirrors/ma/majsoul_wrapper

1. 项目介绍

majsoul_wrapper 是一个用于自动化雀魂(Mahjong Soul)游戏的SDK。该项目通过WebSocket抓包技术实时解析雀魂对局信息,并模拟鼠标动作进行出牌操作。majsoul_wrapper 提供了一个完整的输入输出接口,供第三方AI调用,以实现自动化在《雀魂》中打麻将。

主要功能

  • 实时解析对局信息:通过WebSocket抓包技术,实时获取对局中的各种信息。
  • 模拟鼠标动作:通过图像识别技术,模拟鼠标操作进行出牌、立直等动作。
  • SDK接口:提供了一系列回调函数,方便开发者实现自己的AI逻辑。

2. 项目快速启动

2.1 环境准备

首先,确保你已经安装了Python 3.x,并安装以下依赖库:

pip install mitmproxy selenium protobuf pyautogui opencv-python

2.2 下载项目

使用Git克隆项目到本地:

git clone https://github.com/747929791/majsoul_wrapper.git
cd majsoul_wrapper

2.3 启动mitmproxy

在项目目录中,启动mitmproxy控制台进程:

mitmdump -s addons.py

2.4 启动Chrome浏览器

确保你已经安装了Chrome浏览器,并配置了ChromeDriver。启动Chrome浏览器并绑定到mitmproxy的代理服务器端口:

python3 -m majsoul_wrapper

2.5 运行示例AI

项目提供了一个示例AI,你可以直接运行它来观察自动化打麻将的效果:

python3 MajsoulAI.py

3. 应用案例和最佳实践

3.1 自定义AI逻辑

你可以通过继承MajsoulHandler类,并重载其中的回调函数来实现自己的AI逻辑。例如,你可以重载actionDiscardTile函数来自定义出牌策略。

from majsoul_wrapper import MajsoulHandler

class MyAI(MajsoulHandler):
    def actionDiscardTile(self, tile):
        # 自定义出牌逻辑
        print(f"AI 出牌: {tile}")
        super().actionDiscardTile(tile)

3.2 图像识别与动作模拟

项目使用了pyautoguiOpenCV进行图像识别和鼠标动作模拟。你可以通过调用GUIInterface中的函数来执行各种操作,如立直、和牌等。

from majsoul_wrapper import GUIInterface

gui = GUIInterface()
gui.calibrateMenu()  # 校准界面位置
gui.actionBeginGame()  # 开始一场段位场匹配

4. 典型生态项目

4.1 雀魂AI比赛

majsoul_wrapper 可以用于组织雀魂AI比赛,参赛者可以通过实现自己的AI逻辑来参与比赛,并通过SDK提供的接口进行对局。

4.2 麻将研究

该项目还可以用于麻将研究,通过实时解析对局数据,研究人员可以分析不同策略的效果,优化AI的出牌逻辑。

4.3 自动化测试

在开发过程中,majsoul_wrapper 可以用于自动化测试,通过模拟用户操作,测试游戏的各种功能和逻辑。


通过以上步骤,你可以快速上手并使用 majsoul_wrapper 实现自动化雀魂游戏。希望这个教程对你有所帮助!

majsoul_wrapper 自动化雀魂AI的SDK,实时解析雀魂对局信息,并模拟鼠标动作出牌 majsoul_wrapper 项目地址: https://gitcode.com/gh_mirrors/ma/majsoul_wrapper

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

叶妃习

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值