0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

教你实现用Python自动玩王者荣耀

Linux爱好者 来源:Jack Cui 作者:Jack Cui 2021-11-19 10:49 次阅读

「王者荣耀」想必大家就算没有玩过,也都听过。

腾讯 AI Lab 开发的策略协作型“绝悟”,最强 AI 分分教你做人。

但那个是像 Alpha Go 一样,需要掌握海量数据和机器的团队,才能玩得起的。

今天,就给大家带来一个「平民版」,咱们都能玩的王者荣耀 AI。

视频两倍速播放,只训练了一个「后裔」英雄,如果想用其他英雄,可以自己训练。

今天继续手把手教学,你准备好了吗?

1

实现原理

为了让我们的代码能够控制手机的「王者荣耀」,我们需要实现在电脑上操控手机。

需要用到什么呢?scrcpy 和 minitouch。

scrcpy 可以将安卓手机的画面投屏到电脑桌面显示上并进行操控。

简单地说,就是可以让你在电脑上控制手机!它支持鼠标控制、键盘输入、电脑剪切板复制粘贴、拖放文件传输到手机、以及拖放 APK 文件进行安装。

使用 scrcpy 你无需 ROOT 手机,也不需在手机上安装 APP,只需在系统设置里启用“USB调试”( adb 调试) 即可。

minitouch 提供了一个 socket 接口用在 Android 设备上的多点触摸事件以及手势。也是无需 ROOT 手机。

用 scrcpy 获取游戏画面,获取 scrcpy 的句柄,然后截图,根据图片生成操作指令,然后利用 minitouch 高效的执行这些操作指令。

所以关键在于,如何根据图片生成操作指令。

没错,用 Transformer。

上两天火的 DALL·E 都见到了吧?OpenAI 最新发布的,它可以魔法一般按照自然语言文字描述直接生成对应图片!

比如输入文本:鳄梨形状的扶手椅。

这生产效果真是堪称神奇!自然语言与视觉的壁垒正在被逐渐打通。

反过来,图片生成描述,更简单了,这样的工作几年前就用了。

使用 Transformer,根据游戏图像,生成当前画面的操作描述。

比如前进、攻击、释放技能。

2

算法测试

首先你得有个能跑 Transformer 的显卡,安装需要的第三方库,例如 pyminitouch、pytorch 等。

然后安装 scrcpy,这个安装教程很多,百度一搜一大把,将所有东西放在与下载的代码同级目录下。

85294ae6-43cb-11ec-b939-dac502259ad0.png

下载训练好的模型文件。

还是老规矩,将代码和模型打包了,用回复关键字 “王者” 获取

需要注意的是,不同手机的 minitouch 配置可能有所不同,代码的测试机器分辨率是 1080*2160,这里需要根据自己的情况进行修改。

配置好环境后,就可以运行代码了。

运行文件“启动和结束进程.py”,启动scrcpy。把“训练数据截取_A.py” 中的两项改成你的设备:

8593e1f8-43cb-11ec-b939-dac502259ad0.png

启动王者荣耀进入 5v5 人机对战后,运行 “训练数据截取_A.py” 即可。

赶快自己体验一波吧!训练一个你最爱的英雄!

项目地址:https://github.com/FengQuanLi/ResnetGPT

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • AI
    AI
    +关注

    关注

    87

    文章

    26424

    浏览量

    264031
  • python
    +关注

    关注

    51

    文章

    4674

    浏览量

    83464

原文标题:用 Python 自动玩王者荣耀,简直太秀了!

文章出处:【微信号:LinuxHub,微信公众号:Linux爱好者】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    教你一招,简化仪器Python编程控制!

    许多行业的工程师都使用自动化来扩展其测试仪器的功能,而大多是选择免费的编程语言——Python来完成。作为适用于自动化的主要编程语言,Python具备许多显著优势
    的头像 发表于 03-15 14:31 379次阅读
    <b class='flag-5'>教你</b>一招,简化仪器<b class='flag-5'>Python</b>编程控制!

    通过Python脚本实现WIFI密码的自动猜解

    本文将记录学习下如何通过 Python 脚本实现 WIFI 密码的自动猜解。
    的头像 发表于 01-25 10:46 680次阅读
    通过<b class='flag-5'>Python</b>脚本<b class='flag-5'>实现</b>WIFI密码的<b class='flag-5'>自动</b>猜解

    如何使用Python进行图像识别的自动学习自动训练?

    如何使用Python进行图像识别的自动学习自动训练? 使用Python进行图像识别的自动学习和自动
    的头像 发表于 01-12 16:06 213次阅读

    如何使用Python编写脚本来自动发送邮件

    Python是一种非常流行的编程语言,可以用于多种用途,包括自动化任务。其中一个常见的自动化任务是自动发送邮件。在本文中,我们将介绍如何使用Pyth
    的头像 发表于 12-07 11:36 319次阅读

    python运行一次自动再次运行

    自动化是现代计算机科学和软件开发的一个重要领域。在Python中,有许多方法可以实现自动运行程序的功能。本文将详细介绍如何使用Python
    的头像 发表于 11-23 15:52 506次阅读

    怎么在Python实现截图功能

    利用Python自带的win32api和win32con、win32gui等模块,我们能执行许多windows下的自动化操作。比如两个窗口的自动点击操作,从软件中的窗口复制文本到txt中,甚至是截图
    的头像 发表于 11-03 15:32 503次阅读
    怎么在<b class='flag-5'>Python</b>中<b class='flag-5'>实现</b>截图功能

    Python 模拟键盘鼠标的方式实现自动

    在某些情况下,如果我们需要进行自动化操作的应用没有提供相应的接口,我们无法直接通过Python来调用API实现自动化。这种情况下,Python
    的头像 发表于 11-02 14:48 407次阅读
    <b class='flag-5'>Python</b> 模拟键盘鼠标的方式<b class='flag-5'>实现</b><b class='flag-5'>自动</b>化

    如何在Windows下使用 Supervisor 重新拉起崩溃的Python程序

    我们用Python定时跑一些自动化程序的时候会出现程序崩溃的情况。此时如果你本人不在电脑面前,或者没有留意到程序的崩溃,没有及时重新拉起程序,会造成或大或小的损失。 本文将教你如何在 Windows
    的头像 发表于 10-21 11:23 1147次阅读
    如何在Windows下使用 Supervisor 重新拉起崩溃的<b class='flag-5'>Python</b>程序

    Python实现OpenCV的安装与使用

      本文实例讲述了 Python 实现 OpenCV 的安装与使用。分享给大家供 大家参考,具体如下:  由于下一步要开始研究下深度学习,而深度学习领域很多的算法和应 用都是用 Python
    发表于 07-20 11:46 7次下载

    Facebook群组自动python – 网络自动

    电子发烧友网站提供《Facebook群组自动python – 网络自动化.zip》资料免费下载
    发表于 07-05 14:26 0次下载
    Facebook群组<b class='flag-5'>自动</b>化<b class='flag-5'>python</b> – 网络<b class='flag-5'>自动</b>化

    Python怎么实现自动驾驶

    一、安装环境 gym是用于开发和比较强化学习算法的工具包,在python中 安装gym库和其中子场景都较为简便。 安装gym: pip install gym 安装自动驾驶模块,这里使用Edouard Leurent发布在github上的包highway-en
    发表于 06-07 14:35 0次下载
    <b class='flag-5'>Python</b>怎么<b class='flag-5'>实现</b><b class='flag-5'>自动</b>驾驶

    Python实现自动驾驶

    今天来一个好玩一点的,汽车已经能够自动驾驶了,Python怎么能没有呢?这不,必须安排上。 一、安装环境 gym是用于开发和比较强化学习算法的工具包,在python中安装gym库和其中子场景都较为
    发表于 06-06 10:43 1次下载
    <b class='flag-5'>Python</b><b class='flag-5'>实现</b><b class='flag-5'>自动</b>驾驶

    Python代码实现汽车自动驾驶技术

    在set_mode() 方法中,我们将窗口的大小(以像素为单位)传递为表示该窗口的XY坐标的Python元组。 Python元组是用括号括起来的有效Python数据类型的逗号分隔元素的集合,例如:() 。
    的头像 发表于 05-08 11:27 2785次阅读
    <b class='flag-5'>Python</b>代码<b class='flag-5'>实现</b>汽车<b class='flag-5'>自动</b>驾驶技术

    使用Python实现功能测试自动

    PyTest 是一个测试框架,允许个人使用 Python 编写测试代码,使您能够为数据库、API 和用户界面创建简单且可扩展的测试用例。PyTest 主要用于编写 API 测试。它有助于开发从简
    的头像 发表于 05-04 11:20 596次阅读
    使用<b class='flag-5'>Python</b><b class='flag-5'>实现</b>功能测试<b class='flag-5'>自动</b>化

    网络工程师学Python-开源自动化部署工具Fabric

    Python Fabric是一个基于Python的开源自动化部署工具,可以简化管理远程服务器的过程。
    的头像 发表于 04-28 09:54 495次阅读