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
    +关注

    关注

    89

    文章

    38085

    浏览量

    296330
  • python
    +关注

    关注

    57

    文章

    4856

    浏览量

    89550

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

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

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    语法纠错和testbench的自动生成

    ,回到写好的Verilog代码,按住ctrl+shift+p,在弹出的搜索框里输入testbench。 点击后会自动将当前模块的testbench生成在终端框内。 当然,本质上该插件还是通过python实现的,因此
    发表于 10-27 07:07

    荣耀全球开发者大会落幕,启明云端基于乐鑫科技ESP32-C3的AI蜡笔小新手办方案成潮焦点

    手办方案惊艳亮相。该方案接入荣耀智慧空间,对接荣耀YOYO模型,成为大会中展示“潮IP+专属AI交互”的标杆案例。深度集成YOYO能力,现场演绎生态共创在大会现场,
    的头像 发表于 10-24 18:06 296次阅读
    <b class='flag-5'>荣耀</b>全球开发者大会落幕,启明云端基于乐鑫科技ESP32-C3的AI蜡笔小新手办方案成潮<b class='flag-5'>玩</b>焦点

    Python 给 Amazon 做“全身 CT”——可量产、可扩展的商品详情爬虫实战

    一、技术选型:为什么选 Python 而不是 Java? 结论: “调研阶段用 Python,上线后如果 QPS 爆表再考虑 Java 重构。” 二、整体架构速览(3 分钟看懂) 三、开发前准备(5
    的头像 发表于 10-21 16:59 383次阅读
    用 <b class='flag-5'>Python</b> 给 Amazon 做“全身 CT”——可量产、可扩展的商品详情爬虫实战

    订单退款自动化接口:高效处理退款流程的技术实现

    高效的订单退款自动化接口,涵盖核心概念、技术实现、代码示例和最佳实践。我们将使用RESTful API作为基础,并以Python示例展示具体实现。 1. 什么是订单退款
    的头像 发表于 10-21 10:41 210次阅读
    订单退款<b class='flag-5'>自动</b>化接口:高效处理退款流程的技术<b class='flag-5'>实现</b>

    商品自动上架/下架接口实现指南

    如何设计并实现一个高效的自动上架/下架接口,涵盖原理、接口设计、代码实现和优化建议。本文假设使用Python和Flask框架作为示例,但原理可应用于其他语言。 1. 需求背景与核心原理
    的头像 发表于 10-11 15:30 279次阅读
    商品<b class='flag-5'>自动</b>上架/下架接口<b class='flag-5'>实现</b>指南

    东莞AI潮签下亿元出海大单,加速国产芯片走向普及

    电子发烧友网综合报道 近日,东莞签下1亿元AI潮玩出口大单,广东威斯潮与日本企业敲定AI潮供货合同,首批产品将嵌入GPT-5本地蒸馏模型,实现下单即定制的个性语音交互。   东莞是全国最大的潮
    的头像 发表于 09-08 07:07 3960次阅读

    termux调试python猜数字游戏

    用termux做一个猜数字游戏 下面是在Termux中创建猜数字游戏的步骤及完整实现方案,结合Python实现(最适配Termux环境): ? 一、环境准备(Termux基础配置) 1.
    发表于 08-29 17:15

    termux如何搭建python游戏

    安装Python及包管理工具 ```bash apt install -y python python-pip# 自动安装Python3
    发表于 08-29 07:06

    Python脚本实现运维工作自动化案例

    还在为重复性运维工作而烦恼?每天被各种告警、监控、部署搞得焦头烂额?作为一名有10年经验的运维老司机,今天分享5个超实用的Python自动化脚本,让你的运维工作效率提升300%!这些都是我在生产环境中实际使用的案例,代码简洁高效,拿来即用!
    的头像 发表于 08-27 14:46 792次阅读

    设备数据的采集可以实现用“不需要点表的网关”吗

    做变压器的工厂,它的设备数据的采集可以实现用“不需要点表的网关”吗
    发表于 05-28 09:59

    荣耀手机正式接入DeepSeek

    荣耀正式宣布接入DeepSeek,并致力于将荣耀手机打造成为DeepSeek的第一手机。对于系统版本为MagicOS8.0及以上的荣耀手机用户,只需将YOYO助理升级到80.0.1.503版本及以上,即可与DeepSeek-R1
    的头像 发表于 02-10 16:33 1479次阅读

    Python绘图Matplotlib快速参考手册

     PYTHON
    发表于 02-07 14:04 0次下载

    用DeepSeek-R1实现自动生成Manim动画

    动画,视觉化呈现抽象的概念与原理。 什么是Manim?  Manim 是一个基于 Python 的动画引擎,专门用于创建高质量的数学相关动画,广泛应用于教育、科普等领域,帮助人们更直观地理解抽象的数学概念和原理。所有 有志于从事技术布道的科技博主或教师,都应该学习并用好Manim ,
    的头像 发表于 02-07 12:31 4638次阅读
    用DeepSeek-R1<b class='flag-5'>实现</b><b class='flag-5'>自动</b>生成Manim动画

    调试ADS1258如何实现用定时器控制精确地时间采样,好像自动扫描方式都是确定的采样频率?

    调试ADs1258遇到几个问题: 1、调试ADS1258如何实现用定时器控制精确地时间采样,好像自动扫描方式都是确定的采样频率? 2、如果想用固定通道采样模式,是单端输入,如何实现通道选择呀?
    发表于 02-05 08:53

    使用Python实现xgboost教程

    使用Python实现XGBoost模型通常涉及以下几个步骤:数据准备、模型训练、模型评估和模型预测。以下是一个详细的教程,指导你如何在Python中使用XGBoost。 1. 安装XGBoost
    的头像 发表于 01-19 11:21 2200次阅读